MCP Server for the Austrian Legal Information System (RIS) - Access Austrian federal laws, state laws, court decisions and more
- ✓Open-source license (MIT)
- ✓Actively maintained (<30d)
- ✓Clear description
- ✓Topics declared
- ✓Documented (README)
claude mcp add ris-mcp-ts -- npx -y ris-mcp-ts{
"mcpServers": {
"ris-mcp-ts": {
"command": "npx",
"args": ["-y", "ris-mcp-ts"]
}
}
}Resumen de MCP Servers
# RIS MCP Server
[](https://github.com/Honeyfield-Org/ris-mcp-ts/actions/workflows/ci.yml)
[](https://www.npmjs.com/package/ris-mcp-ts)
[](LICENSE)
[](https://nodejs.org/)
[](https://modelcontextprotocol.io/)
[](https://registry.modelcontextprotocol.io)
An [MCP (Model Context Protocol)](https://modelcontextprotocol.io/) 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.
## What You Can Do
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](https://data.bka.gv.at/ris/api/v2.6/).
## Features
- **13 specialized tools** covering all major RIS collections
- **Federal law** (ABGB, StGB, UGB, ...) and **state law** for all 9 provinces
- **Court decisions** from 16 court types (Supreme Court, Constitutional Court, Administrative Court, ...)
- **Law gazettes** — Federal (BGBl) and state (LGBl)
- **Government bills**, ministerial decrees, cabinet protocols
- **Full document retrieval** with smart prefix-based routing
- **Change history tracking** across 36 application types
- **Interactive result list** (MCP Apps) in hosts that support it — with a full text answer everywhere else
- **Markdown and JSON** output formats
- **Free and open** — uses Austria's Open Government Data API, no API key needed
## Quick Start
Run directly without installation:
```bash
pnpm dlx ris-mcp-ts
```
Or install globally:
```bash
pnpm add -g ris-mcp-ts
```
## Configuration
### Claude Desktop
Add to your Claude Desktop config (Settings > Developer > Edit Config):
- **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
- **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`
```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 dlx` instead of `npx` in all configuration examples if you prefer pnpm.
### Claude Code
Add to your project or user settings:
```bash
claude mcp add ris -- npx -y ris-mcp-ts
```
### VS Code (GitHub Copilot)
Add to `.vscode/mcp.json` in your project:
```json
{
"servers": {
"ris": {
"type": "stdio",
"command": "npx",
"args": ["-y", "ris-mcp-ts"]
}
}
}
```
### Cursor
Add to `.cursor/mcp.json` in your project (or `~/.cursor/mcp.json` for global access):
```json
{
"mcpServers": {
"ris": {
"command": "npx",
"args": ["-y", "ris-mcp-ts"]
}
}
}
```
### Windsurf
Add to your Windsurf MCP config at `~/.codeium/windsurf/mcp_config.json`:
```json
{
"mcpServers": {
"ris": {
"command": "npx",
"args": ["-y", "ris-mcp-ts"]
}
}
}
```
### Other MCP Clients
Any MCP-compatible client can connect via stdio transport:
```bash
npx -y ris-mcp-ts
# or: pnpm dlx ris-mcp-ts
```
## Available Tools
| 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 |
## Interactive Result List
**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.
<table>
<tr>
<td width="50%"><img src="https://raw.githubusercontent.com/Honeyfield-Org/ris-mcp-ts/main/docs/assets/widget-in-claude.png" alt="The RIS widget running inside Claude: a connector row reading 'ris-mcp / ris_bundesrecht', below it the result list for 'Verbrauchergewährleistungsgesetz' with 40 hits and its first sections, each tagged 'Bundesrecht'." width="100%"></td>
<td width="50%"><img src="https://raw.githubusercontent.com/Honeyfield-Org/ris-mcp-ts/main/docs/assets/widget-in-chatgpt.png" alt="The same RIS widget running inside ChatGPT: the result list for 'Verbrauchergewährleistungsgesetz' with 40 hits and its first sections, above ChatGPT's own composer with the placeholder 'ChatGPT fragen'." width="100%"></td>
</tr>
<tr>
<td align="center"><em>In Claude</em></td>
<td align="center"><em>In ChatGPT</em></td>
</tr>
</table>
<p align="center">
<img src="https://raw.githubusercontent.com/Honeyfield-Org/ris-mcp-ts/main/docs/assets/readme-judikatur-light.png" alt="Case law search for 'Verjährung' in the light theme: 7,466 hits, with court, decision date and case number on the expanded result, the actions 'Im RIS öffnen', 'PDF' and 'Volltext in den Chat', and pagination controls at the bottom." width="820">
<br>
<em>The expanded detail view, light theme — metadata, the three actions, and pagination</em>
</p>
### Example Prompts
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.
## Tool Reference
<details>
<summary><strong>ris_bundesrecht</strong> — Federal Laws</summary>
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](#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 support `paragraph`/`abschnitt_typ` or `fassung_vom`.
</details>
<details>
<summary><strong>ris_landesrecht</strong> — State/PLo que la gente pregunta sobre ris-mcp-ts
¿Qué es Honeyfield-Org/ris-mcp-ts?
+
Honeyfield-Org/ris-mcp-ts es mcp servers para el ecosistema de Claude AI. MCP Server for the Austrian Legal Information System (RIS) - Access Austrian federal laws, state laws, court decisions and more Tiene 16 estrellas en GitHub y su última actualización registrada es del 2026-09-08.
¿Cómo se instala ris-mcp-ts?
+
Puedes instalar ris-mcp-ts clonando el repositorio (https://github.com/Honeyfield-Org/ris-mcp-ts) o siguiendo las instrucciones del README en GitHub. ClaudeWave también te ofrece bloques de instalación rápida en esta misma página.
¿Es seguro usar Honeyfield-Org/ris-mcp-ts?
+
Nuestro agente de seguridad ha analizado Honeyfield-Org/ris-mcp-ts y le ha asignado un Trust Score de 95/100 (tier: Verified). Revisa el desglose completo de comprobaciones superadas y flags en esta página.
¿Quién mantiene Honeyfield-Org/ris-mcp-ts?
+
Honeyfield-Org/ris-mcp-ts es mantenido por Honeyfield-Org. La última actividad registrada en GitHub es del 2026-09-08, con 3 issues abiertos.
¿Hay alternativas a ris-mcp-ts?
+
Sí. En ClaudeWave puedes explorar mcp servers similares en /categories/mcp, ordenados por popularidad o actividad reciente.
Despliega ris-mcp-ts en tu cloud
Lleva este repo a producción en minutos. Cada plataforma genera su propio entorno con variables de entorno editables.
¿Mantienes este repo? Añade un badge a tu README
Pega el badge en tu README de GitHub para mostrar que está auditado por ClaudeWave. Cada badge enlaza de vuelta a esta página y muestra el Trust Score actual.
[](https://claudewave.com/repo/honeyfield-org-ris-mcp-ts)<a href="https://claudewave.com/repo/honeyfield-org-ris-mcp-ts"><img src="https://claudewave.com/api/badge/honeyfield-org-ris-mcp-ts" alt="Featured on ClaudeWave: Honeyfield-Org/ris-mcp-ts" width="320" height="64" /></a>Más MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
The fastest path to AI-powered full stack observability, even for lean teams.
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!