Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Access Austrian laws, court decisions & legal documents via the RIS API.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"ris": {
"command": "npx",
"args": [
"-y",
"ris-mcp-ts"
]
}
}
}ターミナルでこれを実行します
claude mcp add ris -- npx -y ris-mcp-tsプロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"ris": {
"command": "npx",
"args": [
"-y",
"ris-mcp-ts"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"ris": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"ris-mcp-ts"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月6日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント Honeyfield-Org で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(1.9.0)がレジストリに届いたのは一昨日です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, FOGA node
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
A Finch OG Agent cell as an MCP server: read the world, dry-run and take ERC-8414 tenders by policy.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
An MCP (Model Context Protocol) server that gives AI assistants access to Austria's official legal database — the Rechtsinformationssystem (RIS).
Ask your AI assistant about Austrian law, and it will search and retrieve legal documents directly from the official government API. No API key required.
Once connected, you can ask your AI assistant things like:
"What does Austrian law say about tenancy rights?"
"Find Constitutional Court decisions on freedom of expression."
"Show me §1295 of the ABGB (Austrian Civil Code)."
"What laws about climate protection were published in 2024?"
"Look up the building code for the province of Salzburg."
"Get the full text of document NOR40052761."
The server translates these natural language requests into structured API calls against the RIS Open Government Data API.
Run directly without installation:
pnpm dlx ris-mcp-ts
Or install globally:
pnpm add -g ris-mcp-ts
Add to your Claude Desktop config (Settings > Developer > Edit Config):
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json{
"mcpServers": { "ris": { "command": "npx", "args": ["-y", "ris-mcp-ts"] } } }
Note: The "Add custom connector" UI in Claude Desktop only supports remote MCP servers (HTTP/SSE). Local stdio servers like this one must be configured via the JSON file.
Tip: You can also use
pnpm dlxinstead ofnpxin all configuration examples if you prefer pnpm.
Add to your project or user settings:
claude mcp add ris -- npx -y ris-mcp-ts
Add to .vscode/mcp.json in your project:
{
"servers": { "ris": { "type": "stdio", "command": "npx", "args": ["-y", "ris-mcp-ts"] } } }
Add to .cursor/mcp.json in your project (or ~/.cursor/mcp.json for global access):
{
"mcpServers": { "ris": { "command": "npx", "args": ["-y", "ris-mcp-ts"] } } }
Add to your Windsurf MCP config at ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": { "ris": { "command": "npx", "args": ["-y", "ris-mcp-ts"] } } }
Any MCP-compatible client can connect via stdio transport:
npx -y ris-mcp-ts
| Tool | Description |
|---|---|
ris_bundesrecht | Search federal laws (ABGB, StGB, UGB, etc.) |
ris_landesrecht | Search state/provincial laws (all 9 provinces) |
ris_judikatur | Search court decisions (16 court types) |
ris_bundesgesetzblatt | Search Federal Law Gazettes (BGBl I/II/III) |
ris_landesgesetzblatt | Search State Law Gazettes (LGBl) |
ris_regierungsvorlagen | Search government bills |
ris_dokument | Retrieve full document text by ID or URL |
ris_dokument_abschnitt | Return one section of an open document by character offset (feeds the document viewer widget) |
ris_bezirke | Search district authority announcements |
ris_gemeinden | Search municipal law and regulations |
ris_sonstige | Search miscellaneous collections (8 sub-apps) |
ris_history | Track document change history (36 app types) |
ris_verordnungen | Search state ordinance gazettes |
One widget, all eleven search tools. There is a single interactive result list, and every search tool renders into it: federal law, state law, case law, the federal and state law gazettes, government bills, district authority announcements, municipal law, the miscellaneous collections, change history and the ordinance gazettes. The screenshots below are the same widget in two different hosts, not two different features.
`ris_dokument` opens a reader instead. A single document can run to a quarter of a million characters, far past what one answer may carry, so the viewer loads it section by section as you scroll, offers an outline to jump by where the document has one, and links back into RIS. The full text still reaches the chat either way — the widget is never the only copy.
Hosts that support the MCP Apps extension render the hits as an interactive list — page through results without retyping the search, open a document in the browser, or request its full text with one click. The widget follows the host's light or dark theme; the shots below show both.
In Claude In ChatGPT
The expanded detail view, light theme — metadata, the three actions, and pagination
RIS is a German-language database, so these work best in German. Each of these lands on a different tool:
"Zeig mir das Verbrauchergewährleistungsgesetz" —
ris_bundesrecht
"Finde aktuelle OGH-Rechtsprechung zu Verjährung" —
ris_judikatur
"Was steht im Tiroler Landesrecht zum Naturschutz?" —
ris_landesrecht
"Zeig mir BGBl. I Nr. 175/2021" —
ris_bundesgesetzblatt
In a host without MCP Apps support the same prompts return the full text answer instead — see the table below.
| Host | What you get |
|---|---|
| claude.ai | Result list (pagination, document links) + document viewer (outline navigation, lazy loading) |
| ChatGPT | Result list (pagination) + document viewer (outline navigation, lazy loading) |
| Claude Code, and any client without MCP Apps support | The regular text results, unchanged |
The chat answer is always complete. The widgets are an addition to it, never a replacement — a host that does not render them loses nothing.
ris_bundesrecht — Federal Laws
Search Austrian federal laws such as ABGB, StGB, UGB, and more.
Inputs:
| Parameter | Type | Description |
|---|---|---|
suchworte | string | Full-text search (e.g., "Mietrecht", "Schadenersatz") |
titel | string | Search in law titles (e.g., "ABGB", "Strafgesetzbuch") |
paragraph | string | Section number (e.g., "1295" for §1295, "7" for Art 7) |
abschnitt_typ | string | Type of section paragraph refers to: "Paragraph" (default), "Artikel" (article-based laws like B-VG), "Anlage" (annex) |
applikation | string | "BrKons" (consolidated, default), "Begut" (drafts), "BgblAuth" (gazette), "Erv" (English translations) |
fassung_vom | string | Date for historical version (YYYY-MM-DD) |
seite | number | Page number (default: 1) |
limit | number | Results per page: 10, 20, 50, 100 (default: 20). Prefer 20; a page over the structured-payload budget is delivered at the next smaller size (see Result size) |
response_format | string | "markdown" (default) or "json" |
All parameters are optional. At least one search parameter (suchworte, titel, or paragraph) should be provided.
Note:
applikation="Erv"(English translations) uses a different parameter vocabulary internally (SearchTerms/Title) and does not supportparagraph/abschnitt_typorfassung_vom.
ris_landesrecht — State/Provincial Laws
Search state laws of the nine Austrian provinces.
Inputs:
| Parameter | Type | Description |
|---|---|---|
suchworte | string | Full-text search |
titel | string | Search in law titles |
bundesland | string | Province: Wien, Niederoesterreich, Oberoesterreich, Salzburg, Tirol, Vorarlberg, Kaernten, Steiermark, Burgenland |
paragraph | string | Section number (e.g., "1" for §1, "7" for Art 7) |
abschnitt_typ | string | Type of section paragraph refers to: "Paragraph" (default), "Artikel", "Anlage" |
fassung_vom | string | Date for historical version (YYYY-MM-DD) |
gesetzesnummer | string | Exact law number (Gesetzesnummer) of a specific state law |
applikation | string | "LrKons" (consolidated, default) |
seite | number | Page number |
limit | number | Results per page: 10, 20, 50, 100 (default: 20). Prefer 20; a page over the structured-payload budget is delivered at the next smaller size (see Result size) |
response_format | string | "markdown" or "json" |
ris_judikatur — Court Decisions
Search court decisions from Austrian courts.
Inputs:
| Parameter | Type | Description |
|---|---|---|
suchworte | string | Full-text search in decisions |
gerichtsbarkeit | string | Court system / data collection to search — the RIS "Applikation" (see below; default "Justiz") |
dokumenttyp | string | "rechtssatz" (headnotes only), "entscheidungstext" (full texts only), or "beide" (both, default) |
gericht | string | Actual court within the jurisdiction (e.g., "OGH", "OLG Wien"); applies to gerichtsbarkeit="Justiz" |
rechtsgebiet | string | Broad legal area: "Zivilrecht" or "Strafrecht" (Justiz) |
fachgebiet | string | OGH subject area (e.g., "Arbeitsrecht"); Justiz, needs dokumenttyp "entscheidungstext"/"beide" |
| entscheidungsart | string | Decision type (
冒頭だけを表示しています。続きはリポジトリで読めます