Every published Swiss court decision, every federal article, every cited authority — accessible to AI in one URL.
mcp.opencaselaw.ch · works in Claude, ChatGPT, Cursor, Gemini and Copilot Studio · also via REST and bulk download.
Corpus snapshot
Graph & doctrine
+0 24hOpen-access legal scholarship
Beyond decisions and statutes: a unified, daily-rebuilt index of every Swiss legal publication that's licensed for free reuse — peer-reviewed journal articles, open commentaries, dissertations, and federal legal-policy reports. Every record carries explicit attribution + CC license, so LLMs grounded on this corpus respect the upstream authors' terms.
Searches title, authors, abstract, journal, keywords across all … indexed publications. Full API: /api/scholarship/search.
Total indexed
Citation bridge
extracted from … full-text records (…% bridge coverage). Query both directions via
find_scholarship_citing_decision
and find_scholarship_citing_statute.
Sources live today
click to expand
Licensing
All publications are open-access. Per-source license terms:
view license breakdown
- sui generis: CC-BY-SA 4.0
- OnlineKommentar.ch: CC-BY 4.0
- OpenLegalCommentary.ch: CC-BY-SA 4.0
- The Good Board: author-permitted reuse
- LEOH — Animal Law & One Health: CC-BY-ND 4.0
- medialex: CC-BY-SA 4.0
- EuZ (eizpublishing): CC-BY-NC-ND 4.0
- Ancilla Iuris: CC-BY 4.0
- cognitio: CC-BY-NC-SA 4.0
- CFS — Criminologie, Forensique & Sécurité: CC-BY 4.0
- ex/ante: CC-BY-NC-ND 4.0
- LeGes (Bundeskanzlei): federal publication — no copyright (Art. 5 URG)
- Repositorium.ch: author-deposited OA
- UNIGE Archive ouverte: per-record license
- UniBE BORIS: per-record license
- ETH Research Collection: per-record license
- UniBas edoc: per-record license
- UniNE LIBRA: per-record license
- ZHAW digitalcollection: per-record license
- FHNW IRF: per-record license
- UniSG Alexandria: per-record license
- e-periodica (ETH Library): historical periodicals, rightsstatements.org
Machine-readable catalog: /api/scholarship/licenses
Sources scaffolded for activation (corpus-completeness backlog)
Generic OAI-PMH harvester + per-source PDF resolvers (OJS citation_pdf_url + DSpace 7 REST + custom HTML scrapers) are in place. Remaining gaps below — most need outreach, not code:
- UZH ZORA — UZH's OAI/REST endpoints return HTTP 504 (server-side timeout from any IP). UZH library outreach required to unlock ~10–30k UZH law records.
- UNIL IRIS (was SERVAL) — repository migrated; no public OAI endpoint discovered yet. UNIL library outreach required.
- USI Lugano, HSLU, FOLIA UniFR, UniLU — no OAI endpoints found via probe; each could add a few hundred records.
- Italian-language coverage — only 215 Italian records (0.7% of corpus). Ticino-region sources (Rivista ticinese di diritto, Italian-language Swiss law journals) not yet identified.
- Justice-Justiz-Giustizia — Swiss judges' association journal (OA portion only); custom scraper needed.
- BJ Studien (Bundesamt für Justiz) — federal-commissioned legal research; custom scraper needed.
- e-Helvetica federal deposits — theses + government reports at the Swiss National Library; OAI URL not found.
Verifiable, not just searchable
Citing an authority that doesn't exist — or doesn't say what's claimed — is the central failure mode of AI in legal work. The MCP server is built so every citation an AI writes resolves to a real, clickable source.
Canonical citations
Every result carries a server-built citation_string_de/fr/it + canonical_url against a deterministic decision_id. The LLM copies the string verbatim — it never formats a citation itself.
Active verification
check_claim_support and attest_response run a second model family over every reference + quoted text before the response leaves the server. Citations and pinpoints are checked against the corpus; quoted substrings must appear verbatim in the cited source.
Click-through
Every reference is a Markdown link to mcp.opencaselaw.ch/entscheid/<id>. The Word add-in turns it into a Word hyperlink. The document stays verifiable after handoff.
Connect
Pick your AI client. Paste the URL. Done.
- Open Claude.ai or Claude Desktop → Settings → Connectors → Add custom connector.
- Paste this URL:
https://mcp.opencaselaw.ch
- Click Add. The 38 tools appear immediately.
Then ask: "Find Federal Supreme Court decisions on Art. 41 OR with the keyword Schadenersatz."
Pro / Max / Team / Enterprise plan needed for the Connectors UI. Free Claude users: see the Claude Code tab.
- Settings → Apps → Advanced settings → enable Developer mode.
- Click Create app, name it "Swiss Caselaw", paste this URL (auth: None):
https://mcp.opencaselaw.ch/sse
- In any chat: + → Developer mode → select Swiss Caselaw.
Plus / Pro / Team / Enterprise / Edu plans. Best with GPT-5.3 (5.4 currently does not invoke MCP tools).
Add to ~/.cursor/mcp.json:
{
"mcpServers": {
"swiss-caselaw": { "url": "https://mcp.opencaselaw.ch" }
}
}
Restart Cursor. The 38 tools appear under swiss-caselaw.
Add to ~/.gemini/settings.json:
{
"mcpServers": {
"swiss-caselaw": { "url": "https://mcp.opencaselaw.ch" }
}
}
Restart Gemini CLI. Free — no plan required.
Single CLI command (works on the Claude Code free tier):
claude mcp add swiss-caselaw --transport sse https://mcp.opencaselaw.ch
No restart needed. The 38 tools are immediately invocable.
- Open Microsoft Copilot Studio → your agent → Tools → Add a tool → New tool → Custom connector.
- In Power Apps "New custom connector" → Import an OpenAPI from URL, paste:
https://mcp.opencaselaw.ch/api/openapi.json
- Authentication: No authentication. Save → Update connector.
- Back in Copilot Studio: Add tool → pick the new Swiss Case Law connector. The 30 REST routes (search, decisions, legislation, citations, doctrine, …) are now callable from your agent.
Spec is OpenAPI 3.0.3, WADL-converter clean (validated 2026-04-25 with LALIVE). M365 Copilot agents and Power Platform flows can both use the same connector.
30-route REST API. OpenAPI 3.0.3 spec at:
https://mcp.opencaselaw.ch/api/openapi.json
Or call directly:
curl -X POST https://mcp.opencaselaw.ch/api/search_decisions \
-H "Content-Type: application/json" \
-d '{"query":"Art. 41 OR Schadenersatz","limit":5}'
Practitioner toolkit
Beyond the AI clients above: every decision is exportable as Word, BibTeX, or RIS. Every court has an Atom feed. The whole corpus is on Hugging Face. Everything CC0.
@misc entry for LaTeX bibliographies and reference managers.
Try sample →
RIS
Bibliographic record (TY-CASE) — drop straight into Zotero, EndNote, Mendeley.
Try sample →
Atom feed
Subscribe in any feed reader — newest 50 decisions per court, refreshed daily.
Subscribe →
REST API
Full OpenAPI 3.0.3 spec — search, citations, statutes, exports — usable from any language.
Open docs →
Bulk download
Whole corpus as Parquet (~7 GB) on Hugging Face. Daily refresh, CC0.
Download →
Latest
Recent Federal Supreme Court decisions
View all →Upcoming federal statute revisions
View all →Notable
Eight facts intrinsic to the published Swiss legal corpus — independent of when we scraped them.
Most-cited decision
—
Most-cited statute article
—
ECHR rulings on Switzerland
—
Oldest decision in the corpus
—
Verbatim Federal Council Botschaften
—
Three-language coverage
—
Citation graph size
—
Head-note coverage
—
Live from the corpus
Concrete examples of what your AI agent sees when it hits the MCP server.
search_decisions(
query="Mietrecht Kündigung Form",
canton="ZH",
limit=3
)
get_doctrine(
query="Art. 41 OR"
)
Art. 41 OR — Ausservertragliche Haftung
Statute text (DE/FR/IT) plus 12 authority-ranked BGEs spanning 1957–2024 and a doctrinal timeline.
Commentary excerpt:
„Die Tatbestandsvoraussetzungen der ausservertraglichen Haftung umfassen Schaden, Kausalität, Widerrechtlichkeit und Verschulden…“