Entscheidsuche — Schweizer Gerichtsentscheide

ch.entscheidsuche由 entscheidsuche.ch 發布官方發布者v1.0.0更新於 Oct 24, 2026

Suche in Schweizer Gerichtsentscheiden aller Instanzen (Bund, Kantone) in DE/FR/IT.

已驗證Streamable HTTP可網頁執行網頁搜尋與抓取知識與記憶

概覽

AI 產生的概覽

遠端 MCP 伺服器,可對瑞士聯邦與各邦法院公開裁判書進行德語、法語、義大利語全文檢索與全文取得。

可以做什麼
  • 以全文檢索瑞士法院判決與判例,可依裁判日期、層級與語言篩選
  • 依案號、程序編號與 BGE 引註進行精確片語檢索
  • 依文件 ID 取得單一裁判的全文、中繼資料、標題、摘要與連結
  • 列出聯邦、邦、法院與法庭的層級 ID 及文件數量
  • 取得含在地化標籤的邦、法院與法庭 facet 樹
  • 讀取伺服器版本與端點資訊
適用情境
適合助理需要查找、引用或閱讀瑞士判例——聯邦最高法院判決、邦法院裁判、行政處分或刑事處分令——而不必逐一造訪 26 個以上的法院入口網站時使用。
執行需求
需要遠端 Streamable HTTP 端點;無需驗證、API 金鑰或帳號。僅支援 stdio 的用戶端(如 Claude Desktop)需透過 mcp-remote 之類的橋接。自行部署需要 Python 及可存取的 Elasticsearch 索引。
安裝前請注意
此服務標示為 Beta,README 也說明並非所有用戶端設定指南都經過完整測試。檢索與文件請求會送往由 entscheidsuche.ch 協會營運的第三方伺服器;自架實例預設會記錄工具參數,除非關閉參數記錄。資料來自擷取與使用者上傳,完整性與時效性無法保證。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Entscheidsuche — Schweizer Gerichtsentscheide,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/ch.entscheidsuche%2Fmcp/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "entscheidsuche-schweizer-gerichtsentsche": {
      "type": "http",
      "url": "https://mcp.entscheidsuche.ch/mcp"
    }
  }
}

README

entscheidsuche-mcp

MCP-Server für die offene Schweizer Rechtsprechung (Beta) — Volltextsuche und Volltextzugriff auf publizierte Gerichtsentscheide aller Schweizer Instanzen (Bundesgerichte, kantonale Gerichte, Verwaltungsbehörden, Strafbefehle) in Deutsch, Französisch und Italienisch — über das Model Context Protocol.

MCP Server for Swiss case law (beta). Search and retrieve published court decisions from all Swiss instances (federal courts, all 26 cantons, administrative authorities, penal orders) in German, French, and Italian. Operated as open Swiss legal data infrastructure by the non-profit association entscheidsuche.ch, tax-exempt in Switzerland since 2020.

Öffentlicher Endpunkt: https://mcp.entscheidsuche.ch/mcp (Streamable HTTP, ohne Authentifizierung)

Landing Page für Endnutzer: mcp.entscheidsuche.ch — dort steht alles Nötige zur Einrichtung in Claude.ai, ChatGPT, Cursor, VS Code, Claude Desktop und anderen Clients. Dieses Repository richtet sich primär an Entwickler, Drittanwendungen und Selbst-Betreiber.

[Lizenz Code] [Daten] [Status] [Betrieb]


Inhalt

Über den MCP-Server

Schweizer Gerichtsentscheide sind formal öffentlich, faktisch aber über mehr als 26 kantonale Portale, mehrere Bundesgerichte und unterschiedlich strukturierte Veröffentlichungsformate verteilt. Der Verein entscheidsuche.ch sammelt diese Entscheide seit 2017 ein, indexiert sie volltextlich und macht sie zugänglich. Eine Lizenz gibt es nicht, da Gerichtsentscheide nicht dem Urheberrecht unterstehen. Dieser MCP-Server bringt diesen Bestand zu KI-Assistenten und programmatischen Clients.

Was den Server unterscheidet

  • Betrieben vom gemeinnützigen Verein entscheidsuche.ch (gegründet 2017 in Landquart GR, seit 2020 in Bern als gemeinnütziger Zweck steuerbefreit) — kollektiv getragene Schweizer Rechtsdaten-Infrastruktur, kein Bastelprojekt
  • Eigener Datenbestand: tägliche Scrapes direkt aus den Originalquellen aller Schweizer Gerichte. Enthält auch Entscheide, die von Behörden nicht oder nicht in geeigneter Form publiziert werden und über die Upload-Funktion (seit 2021) eingereicht wurden, darunter Strafbefehle
  • Drei Amtssprachen (DE / FR / IT) mit gezieltem Sprachfilter und sprachübergreifender Suche
  • Offen — keine Authentifizierung, kein API-Key, lizenzfrei

Tools

ToolZweck
searchVolltextsuche mit Lucene-Syntax. Filter nach Entscheiddatum, Scrape-Datum, Hierarchie (Kanton / Gericht / Kammer) und Sprache. Sortierung nach Relevanz, Entscheiddatum oder Scrape-Datum. Paginierung über next_cursor / search_after. Aggregationen für Facetten-Auswertung.
search_by_case_numberExakte Phrasensuche nach Geschäftsnummern, Aktenzeichen und BGE-Zitaten (z.B. BGE 142 III 1, 6B_1234/2025, 5A_396/2015). Setzt die Nummer automatisch in Anführungszeichen.
fetch_documentVollständigen Entscheid samt Volltext anhand der ID abrufen.
list_hierarchyHierarchie-IDs (Bund / Kanton / Gericht / Kammer) mit Trefferzahlen.
list_facetsHierarchischer Facetten-Baum mit lokalisierten Labels in DE/FR/IT.
server_infoVersions- und Konfigurationsinformationen.

Vollständige Schnittstellenbeschreibung mit allen Parametern, Filtern, Rückgabe-Schemata und Beispielen: docs/API.md.

Suchsyntax — Cheatsheet

AufgabeBeispiel
Volltext, alle Begriffe (AND)Mietzins Kündigung
Phrase, exakte Reihenfolge"fristlose Kündigung"
Geschäftsnummer"BGE 142 III 1"
ORMietzins OR Pachtzins
NegationMietzins NOT Erhöhung
WildcardMietz*
Feld-Suchetitle.de:"Kündigung"

Standardverknüpfung zwischen Wörtern ist AND. Gesucht wird in title, abstract, meta, attachment.content und reference.

language und sort sind optional. Ohne language erfolgt keine Spracheinschränkung — der Server liefert das erste vorhandene Sprachfeld zurück (de → fr → it). Ohne sort wird nach Relevanz sortiert. Zur expliziten Sprachfilterung dient language_filter. Erlaubte Sprachen: de, fr, it.

Schnelleinbindung in MCP-Clients

Ausführliche, client-spezifische Anleitungen mit Voraussetzungen (Tarif-Anforderungen für claude.ai und ChatGPT, Konfigurations-Pfade) stehen auf der Landing Page und in docs/CLIENTS.md. Im Wesentlichen:

Claude Code (CLI)

bash
claude mcp add --transport http entscheidsuche https://mcp.entscheidsuche.ch/mcp

Cursor / Windsurf / VS Code / Generisch (mcp.json)

json
{  "mcpServers": {    "entscheidsuche": {      "url": "https://mcp.entscheidsuche.ch/mcp"    }  }}

Claude Desktop (stdio-only, daher über die mcp-remote-Bridge):

json
{  "mcpServers": {    "entscheidsuche": {      "command": "npx",      "args": ["-y", "mcp-remote", "https://mcp.entscheidsuche.ch/mcp"]    }  }}

MCP Inspector zum Testen

bash
npx @modelcontextprotocol/inspector https://mcp.entscheidsuche.ch/mcp

Hinweis: Nicht jede Client-Anleitung ist vollständig durchgespielt; Tarife, Tool-Listen und Konfigurations-Pfade ändern sich bei Anthropic, OpenAI und anderen Anbietern regelmässig. Bei Abweichungen gilt die offizielle Doku des jeweiligen Clients — Rückmeldungen bitte als Issue oder PR.

Lokale Entwicklung

bash
git clone https://github.com/entscheidsuche/entscheidsuche-mcp.gitcd entscheidsuche-mcppython3 -m venv .venvsource .venv/bin/activatepip install -e '.[dev]'
# Server starten — Streamable HTTP auf 127.0.0.1:8765/mcppython -m entscheidsuche_mcp
# Alternative: stdio (für lokale CLI-Clients)python -m entscheidsuche_mcp --transport stdio

Konfiguration (Umgebungsvariablen)

Vollständige Liste in .env.example. Die wichtigsten:

VariableDefaultBedeutung
ENTSCHEIDSUCHE_ES_URLhttps://entscheidsuche.pansoft.de:9200/entscheidsuche.v2-*/_searchElasticsearch-Endpoint
ENTSCHEIDSUCHE_FACETS_URLhttps://www.recherche.histoirerurale.ch/Facetten.jsonFacetten-Hierarchie
HOST / PORT127.0.0.1 / 8765Listen-Adresse
MCP_PATH/mcpHTTP-Pfad
MCP_STATELESS_HTTPtrueStreamable HTTP ohne Session-Pflicht
MCP_DNS_REBINDING_PROTECTIONtrueHost-/Origin-Prüfung
PUBLIC_BASE_URLhttps://mcp.entscheidsuche.chÖffentliche Basis-URL
LOG_LEVELINFOLoglevel

Schnelltest mit curl

bash
# initializecurl -N -H 'Content-Type: application/json' \     -H 'Accept: application/json, text/event-stream' \     http://localhost:8765/mcp \     -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"0"}}}'
# tools/listcurl -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \     http://localhost:8765/mcp \     -d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'
# searchcurl -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \     http://localhost:8765/mcp \     -d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"search","arguments":{"query":"\"BGE 142 III 1\"","language":"de","size":3}}}'

Komfortabler ist ein echter MCP-Client (MCP Inspector, Claude Code) — der übernimmt die Streamable-HTTP-Session-Verwaltung automatisch.

Eigene Instanz deployen (Debian)

Das Repository enthält eine systemd-Unit, einen nginx-vHost und ein Installations-Script. Damit kann jeder einen eigenen MCP-Endpoint gegen den gleichen Elasticsearch-Index betreiben.

bash
ssh [email protected]git clone https://github.com/entscheidsuche/entscheidsuche-mcp.git /opt/entscheidsuche-mcpsudo bash /opt/entscheidsuche-mcp/deploy/install.sh
# TLS-Zertifikatsudo apt-get install -y certbot python3-certbot-nginxsudo certbot --nginx -d mcp.example.org

Das Script legt den Systemnutzer entscheidsuche an, baut ein venv, kopiert .env.example nach /etc/entscheidsuche-mcp.env, installiert die systemd-Unit und den nginx-vHost.

Status prüfen:

bash
systemctl status entscheidsuche-mcpjournalctl -u entscheidsuche-mcp -f

Nutzungsstatistik (/statistik)

Der MCP-Server liefert unter /statistik eine selbst-enthaltene HTML-Seite mit Tageszahlen, Top-Tools, KI-Client-Klassifizierung (clientInfo.name), Stunden-Sparklines und Methoden-Verteilung. Wird bei jedem Aufruf live generiert; Vortage werden in einem JSON-Cache (/var/lib/entscheidsuche-mcp/stats-cache.json) fixiert.

Basic Auth via Env-Variablen (in /etc/entscheidsuche-mcp.env):

bash
ESC_STATS_USER=adminESC_STATS_PASS=DEIN_PASSWORT

Sind beide leer, ist /statistik ungeschützt zugänglich (Dev-Modus). Der Authorization-Header wird vom nginx-vHost unverändert an den Python-Server durchgereicht; die Prüfung passiert dort per hmac.compare_digest gegen die Env-Variablen.

Inhalte sind reine Aggregate. Mit ESC_ACCESS_LOG_ARGS_MAX=0 (Default im .env.example) werden Tool-Argumente — also die Suchqueries der Nutzer — gar nicht erst geloggt.

Datenquelle: /var/log/entscheidsuche-mcp/access.log (geschrieben von der entscheidsuche_mcp.access-Middleware). Logrotation z. B. via /etc/logrotate.d/entscheidsuche-mcp einrichten:

/var/log/entscheidsuche-mcp/access.log {    weekly    rotate 12    compress    delaycompress    missingok    notifempty    copytruncate}

copytruncate ist wichtig, damit der Logger weiter in die rotierte Datei schreibt, ohne dass der Server neu gestartet werden muss.

Architektur

MCP-Client (Claude, ChatGPT, Cursor, ...)       │  Streamable HTTP (JSON-RPC)       ▼mcp.entscheidsuche.ch       │  TLS, nginx Reverse Proxy       ▼127.0.0.1:8765/mcp  ← uvicorn + FastMCP       │  HTTPS       ▼Elasticsearch (entscheidsuche.v2-*)

Implementierung: Python + FastMCP.

Trägerverein

Der MCP-Server, die zugrundeliegende Plattform und der Datenbestand werden vom Verein entscheidsuche.ch betrieben.

  • Gegründet: 2017 in Landquart (GR)
  • Vereinszweck: Die Rechtsprechung schweizerischer Gerichte für jedermann durchsuchbar und zugreifbar machen (Statuten)
  • Gemeinnützigkeit: Seit 2020 vom Kanton Bern wegen Verfolgung gemeinnütziger Zwecke von der Steuerpflicht befreit
  • Vorstand: Jörn Erbguth, Daniel Kettiger, Claudia Schreiber
  • Kontakt: [email protected]
  • Postadresse: Verein entscheidsuche.ch, 3000 Bern
  • Spendenkonto: Postfinance IBAN CH04 0900 0000 1412 0685 4, Verein entscheidsuche.ch, 8000 Zürich (Spendenquittung auf Anfrage)
  • Mitgliedschaft: 100 CHF/Jahr für natürliche Personen, 1'000 CHF/Jahr für institutionelle Mitglieder

Die Plattform wurde 2018–2020 durch eine Crowdfunding-Aktion auf wemakeit finanziert. Eine kurze Vorstellung des Projekts erschien im Juli 2021 in der Zeitschrift für Zivilprozess- und Zwangsvollstreckungsrecht (ZZZ).

Die Scraper, mit denen die Entscheide aus den Originalquellen geholt werden, sind ebenfalls open source — siehe Repositories des Vereins auf GitHub.

Beitragen

Issues, Pull Requests und Vorschläge sind willkommen, insbesondere:

  • Fehlerberichte zur Suche oder zur API
  • Erweiterungen der MCP-Tools (z.B. Aggregations-/Statistik-Tools, Zitationsgraph)
  • Verbesserungen der Client-Anleitungen in docs/CLIENTS.md
  • Übersetzungen

Bei Datenfehlern oder fehlenden Entscheiden bitte direkt an [email protected] — der Datenbestand wird zentral gepflegt, nicht in diesem Repo.

Lizenz

Code: MIT

Daten: Die zugrundeliegenden Gerichtsentscheide sind amtliche Werke und stehen gemäss URG Art. 5 nicht unter Urheberrechtsschutz. Die strukturierten Aufbereitungen des Vereins entscheidsuche.ch sind frei nutzbar — Details unter entscheidsuche.ch.

來源:README.md,提交 d5da96a

工具

6

search_by_case_number

Search by case number

Specialized search for case numbers, judgment numbers and BGE citations in Swiss court judgments. This tool automatically wraps the given case number in quotes and runs an exact phrase search, for example for 'BGE 142 III 1', '5A_396/2015' or similar references from the Federal Supreme Court (BGer, BGE) and cantonal case law.

輸入參數sizesortlanguagehierarchycase_number必填search_afterscrape_date_tolanguage_filterdecision_date_toscrape_date_fromdecision_date_frominclude_aggregations

fetch_document

Fetch decision

Fetch a single Swiss court decision, judgment or Federal Supreme Court decision by its document ID (`_id`). Returns the indexed full text of the decision together with metadata, title, abstract and links. Use this when the full decision should be read or processed after a search. Note: for very long decisions the indexed text is capped at 100,000 characters; if `text_truncated` is true, the complete document is available at `document_url`.

輸入參數id必填language

list_hierarchy

List hierarchy buckets

Returns the available hierarchy IDs for Swiss cantons, courts and chambers together with document counts. Useful for narrowing subsequent searches to the Federal Supreme Court, cantonal courts, Obergerichte or Verwaltungsgerichte.

輸入參數sizequery

list_facets

Facet tree (localized)

Hierarchical facet tree with localized labels for cantons, courts and chambers. The `id` fields can be used in the `hierarchy` filter of the search.

無需輸入參數。

server_info

Server info

Version info and configured endpoint URLs of the MCP server for Swiss case law and court decisions.

無需輸入參數。

版本歷史

1
  1. v1.0.0最新Sep 16, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。