# io.github.philrox/ris (npm · ris-mcp-ts)

Access Austrian laws, court decisions & legal documents via the RIS API.

- Trust score: 69/100 (medium)
- Change this week: +34
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- npm · `ris-mcp-ts`: 69/100 (this document), [markdown](https://verifymcp.io/servers/philrox-ris/ris-mcp-ts.md), [page](https://verifymcp.io/servers/philrox-ris/ris-mcp-ts)

## Channel facts

- Registry: `npm`
- Package: `ris-mcp-ts`
- Version: `1.0.2`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Supply Chain Security**: 86/100
  - No malware found by supply-chain analysis.
  - Only part of the dependency tree could be resolved (117 of 122), so this covers what we could see, not the whole tree.
  - No install/post-install scripts declared.
  - Only part of the dependency tree could be resolved (117 of 122), so this covers what we could see, not the whole tree.
- **Provenance & Transparency**: 71/100
  - Repository check failed: the declared repository URL redirects; it must resolve directly.
  - Cryptographically verified build provenance (signed, bound to philrox/ris-mcp-ts).
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 0 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 55/100
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 4368 tokens (~364/item across 12 items; 12 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 23/100
  - Stability observed for 7 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add philrox-ris -- npx -y ris-mcp-ts
```

### Codex

```bash
codex mcp add philrox-ris -- npx -y ris-mcp-ts
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "philrox-ris": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "ris-mcp-ts"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add philrox-ris --command npx --arg -y --arg ris-mcp-ts
```

### Hermes

```yaml
mcp_servers:
  philrox-ris:
    command: "npx"
    args: ["-y", "ris-mcp-ts"]
```

### Other

```json
{
  "mcpServers": {
    "philrox-ris": {
      "command": "npx",
      "args": [
        "-y",
        "ris-mcp-ts"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-03 (score 69, +42)

- [security improvement] Install scripts: unverified → pass
- [security improvement] Provenance: unverified → pass
- [security improvement] Known CVEs: unverified → partial
- [security] The attested source repository moved: philrox/ris-mcp-ts
- [functional improvement] License: unverified → pass
- [functional improvement] Dependency health: unverified → partial
- [functional improvement] Maintenance: unverified → pass
- [functional improvement] MCP protocol: unverified → pass
- [functional improvement] Stability: unverified → 0.23
- [functional improvement] Schema quality: unverified → good
- [functional] Licence: MIT

### 2026-08-02 (score 27, +27)

- [security improvement] Malware scan: unverified → pass
- [functional improvement] Tool coverage: unverified → 100

### 2026-07-31 (score 0, −33)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-30 (score 33, −2)

- [functional] First check of Schema quality: unverified

### 2026-07-27 (score 35)

First indexed and scored.

## MCP tools (12)

### `ris_bundesrecht` (~288 tokens)

Search Austrian federal laws (Bundesrecht).

Use this tool to find Austrian federal legislation like ABGB, StGB, UGB, etc.

Example queries:
  \- suchworte="Mietrecht" -> Find laws mentioning rent law
  \- titel="ABGB", paragraph="1319a" -> Find specific ABGB section
  \- applikation="Begut" -> Search draft legislation

Input parameters:

- `applikation` (string): Data source - "BrKons" (consolidated, default), "Begut" (drafts), "BgblAuth" (gazette), "Erv" (English)
- `fassung_vom` (string): Date for historical version (YYYY-MM-DD)
- `limit` (number): Results per page 10/20/50/100 (default: 20)
- `paragraph` (string): Paragraph number to search for (e.g., "1295" for §1295)
- `response_format` (string): "markdown" (default) or "json"
- `seite` (number): Page number (default: 1)
- `suchworte` (string): Full-text search terms (e.g., "Mietrecht", "Schadenersatz")
- `titel` (string): Search in law titles (e.g., "ABGB", "Strafgesetzbuch")

### `ris_landesrecht` (~178 tokens)

Search Austrian state/provincial laws (Landesrecht).

Use this tool to find laws enacted by Austrian federal states (Bundeslaender).

Example: suchworte="Bauordnung", bundesland="Salzburg"

Input parameters:

- `applikation` (string): "LrKons" (consolidated, default)
- `bundesland` (string): Filter by state - Wien, Niederoesterreich, Oberoesterreich, Salzburg, Tirol, Vorarlberg, Kaernten, Steiermark, Burgenland
- `limit` (number): Results per page
- `response_format` (string): "markdown" or "json"
- `seite` (number): Page number
- `suchworte` (string): Full-text search terms
- `titel` (string): Search in law titles

### `ris_judikatur` (~256 tokens)

Search Austrian court decisions (Judikatur).

Use this tool to find court decisions from Austrian courts.

Example: gericht="Vfgh", suchworte="Grundrecht"

Input parameters:

- `entscheidungsdatum_bis`: Decision date to (YYYY-MM-DD)
- `entscheidungsdatum_von` (string): Decision date from (YYYY-MM-DD)
- `gericht` (string): Court - "Justiz" (OGH/OLG/LG, default), "Vfgh" (Constitutional), "Vwgh" (Administrative), "Bvwg", "Lvwg", "Dsk" (Data Protection), "AsylGH" (historical), "Normenliste", "Pvak", "Gbk", "Dok"
- `geschaeftszahl` (string): Case number (e.g., "5Ob234/20b")
- `limit` (number): Results per page
- `norm` (string): Search by legal norm (e.g., "1319a ABGB")
- `response_format` (string): "markdown" or "json"
- `seite` (number): Page number
- `suchworte` (string): Full-text search in decisions

### `ris_bundesgesetzblatt` (~285 tokens)

Search Austrian Federal Law Gazettes (Bundesgesetzblatt).

Use this tool for historical research and tracking when laws were enacted.
Contains official publications of federal laws, ordinances, and treaties.

Example queries:
  \- bgblnummer="120", jahrgang="2023", teil="1" -> Find specific gazette
  \- suchworte="Klimaschutz" -> Full-text search in gazettes

Input parameters:

- `applikation` (string): "BgblAuth" (authentic 2004+, default), "BgblPdf" (PDF), "BgblAlt" (1945-2003)
- `bgblnummer` (string): Gazette number (e.g., "120")
- `jahrgang` (string): Year (e.g., "2023")
- `limit` (number): Results per page 10/20/50/100 (default: 20)
- `response_format` (string): "markdown" (default) or "json"
- `seite` (number): Page number (default: 1)
- `suchworte` (string): Full-text search terms
- `teil` (string): Part - "1" (I=Laws), "2" (II=Ordinances), "3" (III=Treaties)
- `titel` (string): Search in gazette titles

### `ris_landesgesetzblatt` (~281 tokens)

Search Austrian State Law Gazettes (Landesgesetzblatt).

Use this tool to find official publications of state/provincial laws.
Covers all 9 federal states (Bundeslaender).

Example queries:
  \- lgblnummer="50", jahrgang="2023", bundesland="Wien"
  \- suchworte="Bauordnung", bundesland="Salzburg"

Input parameters:

- `applikation` (string): "LgblAuth" (authentic, default), "Lgbl" (general), "LgblNO" (Lower Austria)
- `bundesland` (string): Filter by state - Wien, Niederoesterreich, Oberoesterreich, Salzburg, Tirol, Vorarlberg, Kaernten, Steiermark, Burgenland
- `jahrgang` (string): Year (e.g., "2023")
- `lgblnummer` (string): Gazette number (e.g., "50")
- `limit` (number): Results per page 10/20/50/100 (default: 20)
- `response_format` (string): "markdown" (default) or "json"
- `seite` (number): Page number (default: 1)
- `suchworte` (string): Full-text search terms
- `titel` (string): Search in gazette titles

### `ris_regierungsvorlagen` (~289 tokens)

Search Austrian Government Bills (Regierungsvorlagen).

Use this tool for legislative history and parliamentary materials.
Contains government proposals submitted to parliament.

Example queries:
  \- suchworte="Klimaschutz" -> Full-text search in bills
  \- einbringende_stelle="BMF (Bundesministerium für Finanzen)" -> Bills from Finance Ministry
  \- beschlussdatum_von="2024-01-01", beschlussdatum_bis="2024-12-31" -> Bills from 2024

Input parameters:

- `beschlussdatum_bis`: Decision date to (YYYY-MM-DD)
- `beschlussdatum_von` (string): Decision date from (YYYY-MM-DD)
- `einbringende_stelle` (string): Filter by submitting ministry
- `im_ris_seit` (string): Filter by time in RIS
- `limit` (number): Results per page 10/20/50/100 (default: 20)
- `response_format` (string): "markdown" (default) or "json"
- `seite` (number): Page number (default: 1)
- `sortierung_richtung` (string): Sort direction
- `sortierung_spalte` (string): Sort by column
- `suchworte` (string): Full-text search terms
- `titel` (string): Search in bill titles

### `ris_dokument` (~105 tokens)

Retrieve full text of a legal document.

Use this after searching to load the complete text of a specific law or decision.

Note: For long documents, content may be truncated. Use specific searches to narrow down.

Input parameters:

- `dokumentnummer` (string): RIS document number (e.g., "NOR40052761") - from search results
- `response_format` (string): "markdown" (default) or "json"
- `url` (string): Direct URL to document content

### `ris_bezirke` (~337 tokens)

Search Austrian district administrative authority announcements (Kundmachungen der Bezirksverwaltungsbehörden).

Use this tool to find announcements and ordinances from district administrative authorities.

Note: Only certain states publish here: Niederösterreich, Oberösterreich, Tirol, Vorarlberg, Burgenland, Steiermark.

Example queries:
  \- bundesland="Niederösterreich", suchworte="Bauordnung"
  \- bezirksverwaltungsbehoerde="Bezirkshauptmannschaft Innsbruck"

Input parameters:

- `bezirksverwaltungsbehoerde` (string): District authority name (e.g., "Bezirkshauptmannschaft Innsbruck", "Bezirkshauptmannschaft Amstetten")
- `bundesland` (string): Filter by state - Burgenland, Kärnten, Niederösterreich, Oberösterreich, Salzburg, Steiermark, Tirol, Vorarlberg, Wien
- `im_ris_seit` (string): Filter by time in RIS
- `kundmachungsdatum_bis`: Announcement date to (YYYY-MM-DD)
- `kundmachungsdatum_von` (string): Announcement date from (YYYY-MM-DD)
- `kundmachungsnummer` (string): Announcement number
- `limit` (number): Results per page 10/20/50/100 (default: 20)
- `response_format` (string): "markdown" (default) or "json"
- `seite` (number): Page number (default: 1)
- `suchworte` (string): Full-text search terms
- `titel` (string): Search in titles

### `ris_gemeinden` (~594 tokens)

Search Austrian municipal law (Gemeinderecht).

Use this tool to find municipal regulations and local ordinances.

Applications:
  \- Gr: Municipal law (Gemeinderecht) - default
  \- GrA: Cross-border municipal law (Gemeinderecht Authentisch/Amtsblätter)

Example queries:
  \- gemeinde="Graz", suchworte="Parkgebuehren"
  \- bundesland="Tirol", titel="Gebuehrenordnung"
  \- applikation="Gr", index="Baurecht"
  \- applikation="GrA", bezirk="Bregenz"

Input parameters:

- `applikation` (string): "Gr" (municipal law, default) or "GrA" (cross-border/Amtsblätter)
- `bezirk` (string): District name (GrA only, e.g., "Bregenz")
- `bundesland` (string): Filter by state - Burgenland, Kärnten, Niederösterreich, Oberösterreich, Salzburg, Steiermark, Tirol, Vorarlberg, Wien
- `fassung_vom` (string): Historical version date (YYYY-MM-DD, Gr only)
- `gemeinde` (string): Municipality name (e.g., "Graz")
- `gemeindeverband` (string): Municipal association name (GrA only)
- `geschaeftszahl` (string): File number/Aktenzeichen (Gr only)
- `im_ris_seit` (string): Filter by time in RIS - EinerWoche, ZweiWochen, EinemMonat, DreiMonaten, SechsMonaten, EinemJahr
- `index` (string): Subject area index (Gr only) - VertretungskoerperUndAllgemeineVerwaltung, OeffentlicheOrdnungUndSicherheit, UnterrichtErziehungSportUndWissenschaft, KunstKulturUndKultus, SozialeWohlfahrtUndWohnbaufo…
- `kundmachungsdatum_bis`: Announcement date to (YYYY-MM-DD, GrA only)
- `kundmachungsdatum_von`: Announcement date from (YYYY-MM-DD, GrA only)
- `kundmachungsnummer` (string): Announcement number (GrA only)
- `limit` (number): Results per page 10/20/50/100 (default: 20)
- `response_format` (string): "markdown" (default) or "json"
- `seite` (number): Page number (default: 1)
- `sortierung_richtung` (string): Sort direction
- `sortierung_spalte_gr` (string): Sort column (Gr only)
- `suchworte` (string): Full-text search terms
- `titel` (string): Search in titles

### `ris_sonstige` (~958 tokens)

Search miscellaneous Austrian legal collections (Sonstige).

Use this tool for specialized legal documents and historical materials.

Available applications:
  \- PruefGewO: Trade licensing examinations (Gewerbeordnung)
  \- Avsv: Social insurance announcements (Sozialversicherung)
  \- Spg: Health structure plans (Strukturpläne Gesundheit)
  \- Avn: Official veterinary notices (Amtliche Veterinärnachrichten)
  \- KmGer: Court announcements (Kundmachungen der Gerichte)
  \- Upts: Party transparency decisions (Parteien-Transparenz-Senat)
  \- Mrp: Council of Ministers protocols (Ministerratsprotokolle)
  \- Erlaesse: Ministerial decrees (Erlässe der Bundesministerien)

Example queries:
  \- applikation="Mrp", suchworte="Budget", einbringer="BMF..."
  \- applikation="Erlaesse", bundesministerium="Bundesministerium für Finanzen"
  \- applikation="Upts", partei="SPÖ - Sozialdemokratische Partei Österreichs"
  \- applikation="KmGer", kmger_typ="Geschaeftsordnung"
  \- applikation="Avsv", dokumentart="Richtlinie"

Input parameters:

- `abteilung` (string): Department/division (Erlaesse only)
- `applikation` (string, required): Collection to search - "PruefGewO" (trade exams), "Avsv" (social insurance), "Spg" (health plans), "Avn" (veterinary notices), "KmGer" (court announcements), "Upts" (party transparency), "Mrp" (cabin…
- `avn_typ` (string): Notice type (Avn only) - Kundmachung, Verordnung, Erlass
- `avnnummer` (string): AVN number (Avn only)
- `avsvnummer` (string): AVSV number (Avsv only)
- `bundesministerium` (string): Federal ministry (Erlaesse only)
- `datum_bis`: Date to (YYYY-MM-DD)
- `datum_von` (string): Date from (YYYY-MM-DD)
- `dokumentart` (string): Document type search (Avsv only) - free text search expression
- `einbringer` (string): Submitter (Mrp only, e.g., ministry abbreviation)
- `fassung_vom`: Historical version date (YYYY-MM-DD, for Erlaesse)
- `fundstelle` (string): Source reference (Erlaesse only)
- `gericht` (string): Court name (KmGer only)
- `geschaeftszahl` (string): File number/Aktenzeichen (for Mrp, Upts, KmGer)
- `gesetzgebungsperiode` (string): Legislative period (Mrp only, e.g., '27')
- `im_ris_seit` (string): Filter by time in RIS - EinerWoche, ZweiWochen, EinemMonat, DreiMonaten, SechsMonaten, EinemJahr
- `kmger_typ` (string): Announcement type (KmGer only) - Geschaeftsordnung, Geschaeftsverteilung
- `limit` (number): Results per page 10/20/50/100 (default: 20)
- `norm` (string): Legal norm reference (for Erlaesse, Upts)
- `osg_typ` (string): Austrian health structure plan type (Spg only) - ÖSG, ÖSG - Großgeräteplan
- `partei` (string): Political party (Upts only)
- `pruefgewo_typ` (string): Examination type (PruefGewO only) - Befähigungsprüfung, Eignungsprüfung, Meisterprüfung
- `response_format` (string): "markdown" (default) or "json"
- `rsg_land` (string): Federal state for RSG (Spg only)
- `rsg_typ` (string): Regional health structure plan type (Spg only) - RSG, RSG - Großgeräteplan
- `seite` (number): Page number (default: 1)
- `sitzungsnummer` (string): Session number (Mrp only)
- `sortierung_richtung` (string): Sort direction
- `spgnummer` (string): SPG number (Spg only)
- `suchworte` (string): Full-text search terms
- `titel` (string): Search in titles
- `urheber` (string): Author/institution (Avsv only)

### `ris_history` (~484 tokens)

Search document change history (Aenderungshistorie).

Use this tool to track changes to legal documents over time.
Shows when documents were created, modified, or deleted.

Available applications (30 total):
  \- Bundesrecht: Bundesnormen, BgblAuth, BgblAlt, BgblPdf, RegV
  \- Landesrecht: Landesnormen, LgblAuth, Lgbl, LgblNO, Vbl, Gemeinderecht, GemeinderechtAuth
  \- Judikatur: Justiz, Vfgh, Vwgh, Bvwg, Lvwg, Dsk, Gbk, Pvak, AsylGH
  \- Sonstige: Bvb, Mrp, Erlaesse, PruefGewO, Avsv, Spg, KmGer, Dok, Normenliste

Example queries:
  \- applikation="Bundesnormen", aenderungen_von="2024-01-01", aenderungen_bis="2024-01-31"
  \- applikation="Justiz", aenderungen_von="2024-06-01"

Input parameters:

- `aenderungen_bis`: Changes to date (YYYY-MM-DD)
- `aenderungen_von` (string): Changes from date (YYYY-MM-DD)
- `applikation` (string, required): Application to search history for - categories: Bundesrecht (Bundesnormen, BgblAuth, BgblAlt, BgblPdf, RegV), Landesrecht (Landesnormen, LgblAuth, Lgbl, LgblNO, Vbl, Gemeinderecht), Judikatur (Justiz…
- `include_deleted` (boolean): Include deleted documents in results (default: false)
- `limit` (number): Results per page 10/20/50/100 (default: 20)
- `response_format` (string): "markdown" (default) or "json"
- `seite` (number): Page number (default: 1)

### `ris_verordnungen` (~313 tokens)

Search Austrian state ordinance gazettes (Verordnungsblaetter der Laender).

Use this tool to find official publications of state/provincial ordinances.
NOTE: Currently only Tirol data is available (since January 1, 2022).
Other federal states have not yet published their ordinance gazettes in RIS.

Example queries:
  \- suchworte="Wolf" -> Full-text search
  \- titel="Verordnung" -> Search in title
  \- bundesland="Tirol" -> Filter by state (currently only Tirol has data)
  \- kundmachungsnummer="25" -> Search by publication number
  \- kundmachungsdatum_von="2024-01-01", kundmachungsdatum_bis="2024-12-31" -> Date range

Input parameters:

- `bundesland` (string): Filter by state (currently only Tirol has data)
- `kundmachungsdatum_bis`: Publication date to (YYYY-MM-DD)
- `kundmachungsdatum_von` (string): Publication date from (YYYY-MM-DD)
- `kundmachungsnummer` (string): Publication number
- `limit` (number): Results per page 10/20/50/100 (default: 20)
- `response_format` (string): "markdown" (default) or "json"
- `seite` (number): Page number (default: 1)
- `suchworte` (string): Full-text search terms
- `titel` (string): Search in title

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/philrox-ris/ris-mcp-ts#diagnostics

## Score history

- 2026-08-03: 69
- 2026-08-02: 27
- 2026-08-01: 0
- 2026-07-31: 0
- 2026-07-30: 33
- 2026-07-28: 35
- 2026-07-27: 35

## Links

- npm package: https://www.npmjs.com/package/ris-mcp-ts
- Socket report: https://socket.dev/npm/package/ris-mcp-ts
- Changelog RSS feed: https://verifymcp.io/servers/philrox-ris/ris-mcp-ts/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/philrox-ris/ris-mcp-ts/changelog.json
- HTML version of this page: https://verifymcp.io/servers/philrox-ris/ris-mcp-ts
