swiss-courts-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_HOST | No | Bind host. Set to 0.0.0.0 only in containers. | 127.0.0.1 |
| MCP_PORT | No | Bind port. | 8000 |
| MCP_AUTH_SECRET | No | HS256 signing key (dev). | |
| MCP_AUTH_ENABLED | No | Enable bearer-token auth for HTTP. | false |
| MCP_CORS_ORIGINS | No | Comma-separated allowed origins (no wildcard in prod). | |
| MCP_OAUTH_JWKS_URL | No | JWKS URL for RS256 validation (production). | |
| MCP_STATELESS_HTTP | No | Stateless HTTP → horizontal scaling without sticky sessions. | true |
| MCP_REQUIRED_SCOPES | No | Comma-separated required scopes. | |
| MCP_ALLOW_PUBLIC_BIND | No | Suppress the 0.0.0.0 warning (containers). | false |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_court_decisionsA | Volltextsuche in Schweizer Gerichtsentscheiden. Use-Case: juristische Recherche über alle Schweizer Gerichte (Bund + Kantone) via entscheidsuche.ch. Unterstützt Filter nach Kanton, Gerichtsebene und Datumsbereich. Liefert abgeschlossene Treffer inkl. Titel, Abstract und Volltext-Link, kuratiertes Markdown sowie einen maschinenlesbaren Response-Envelope (source, license, match_type, count, total, results). |
| get_court_decisionA | Ruft einen einzelnen Gerichtsentscheid anhand seiner Signatur ab. Use-Case: Detail-Ansicht eines konkreten Urteils (Signatur aus search_court_decisions). Exakter Lookup ohne Fuzzy-Fallback. |
| search_bger_decisionsA | Sucht gezielt in Bundesgerichtsentscheiden (BGer/BGE). Use-Case: höchstrichterliche Rechtsprechung mit optionalem Abteilungsfilter. |
| search_by_law_referenceB | Sucht Gerichtsentscheide die einen bestimmten Gesetzesartikel zitieren. Use-Case: Praxis zu einer Norm finden. Mehrstufige Suche: exakte Phrase (höchste Relevanz) + Artikelnummer/Kürzel (breitere Abdeckung). Synergie mit fedlex-mcp: zuerst Gesetz nachschlagen, dann Praxis dazu finden. Beispiele: 'Art. 8 BV', 'Art. 328 OR', 'Art. 25 DSG'. |
| list_courtsA | Listet alle in entscheidsuche.ch indexierten Gerichte auf. Use-Case: Überblick über verfügbare Bundes- und Kantonsgerichte, optional nach Kanton gefiltert. |
| get_recent_decisionsB | Gibt die neuesten Gerichtsentscheide zurück. Use-Case: aktuelle Rechtsprechungsentwicklungen verfolgen. Chronologisch sortiert, filterbar nach Kanton und Gerichtsebene. |
| get_decision_statisticsA | Gibt Statistiken über die Anzahl indexierter Gerichtsentscheide zurück. Use-Case: Mengengerüst und Verteilung nach Kanton/Jahr. |
| get_fallback_statusA | Zeigt Zustand und Abdeckung des Offline-Fallbacks (SCD-Dump). Use-Case: Transparenz — ist der lokale Dump-Cache vorhanden, welche Version,
was deckt er ab (nur Bundesgericht 2007–2024, kein Volltext) und wie erzwingt
man ihn (ENV |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| rechtsrecherche | Strukturierte Rechtsrecherche zu einem Thema (mit fedlex-mcp-Synergie). |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 8 tools
Most tools have clearly distinct purposes, but search_bger_decisions overlaps with search_court_decisions since the general search can likely filter by court. However, the specialized nature of BGer search is well-documented, so confusion is minimal.
All tool names follow a consistent verb_noun pattern in snake_case (e.g., search_court_decisions, get_court_decision, list_courts). The minor variation in search_by_law_reference is still readable and does not break the overall pattern.
8 tools is well within the ideal 3-15 range and each tool addresses a distinct aspect of legal research (search, retrieval, recent updates, statistics, and system status). No tool feels superfluous.
The set covers the core workflows: searching across courts, retrieving specific decisions, searching by law reference, listing courts, and accessing recent/statistical data. Minor gaps like missing full-text retrieval (only links provided) are acceptable given the API's design, but the inclusion of search_bger_decisions does not add fundamental new capability.