MCP server for Polish court judgments via the SAOS API with verifiable citations.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent — or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag — we're steadily working through the catalog.
💡 Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by MCP Saos.
searchFull-text and filtered search (court, judge, legal basis, dates)
get_judgmentFull judgment by ID from SAOS
search_by_caseShortcut: search by case number (e.g. "I ACa 772/13")
saos_cite_checkCitator: is the judgment still good law? Finds later citing judgments and scans them for overruling language near the signature
Published on npm + the MCP Registry (io.github.matematicsolutions/mcp-saos). Run without cloning:
MCP client configuration (stdio):
(Building from source - below.)
An MCP (Model Context Protocol) server for Polish case law - a connector to SAOS (System Analizy Orzeczen Sadowych - the courts' public case-law database, run by Fundacja ePanstwo).
Part of the MateMatic "Polish legal AI" project. It runs as a separate process communicating over stdio; the chat template (a fork of mike) calls it through the MCP protocol.
An open database of Polish court judgments. Public REST API, no key required.
Coverage caveat: coverage is broad and includes current judgments (2024-2026 are well populated), but it is uneven by court type, and some Supreme Court resolutions exist only as citations in other judgments. Verify anything critical against sn.pl, orzeczenia.ms.gov.pl, trybunal.gov.pl.
The database covers: common courts (COMMON), the Sad Najwyzszy (Supreme Court, SUPREME), the Trybunal Konstytucyjny (Constitutional Tribunal, CONSTITUTIONAL_TRIBUNAL), the KIO (National Appeal Chamber, NATIONAL_APPEAL_CHAMBER). Administrative courts (WSA/NSA) - no data in SAOS.
| Tool | Description |
|---|---|
search | Full-text and filtered search (court, judge, legal basis, dates) |
get_judgment | Full judgment by ID from SAOS |
search_by_case | Shortcut: search by case number (e.g. "I ACa 772/13") |
saos_cite_check | Citator: is the judgment still good law? Finds later citing judgments and scans them for overruling language near the signature |
Give it a case number (a placeholder here; use a real one):
It searches SAOS full-text for later judgments citing that signature, scans
their reasoning for departure phrases ("odstepuje od pogladu wyrazonego",
"nie podziela pogladu", "traci moc uchwala", "uchwala skladu siedmiu sedziow"
and others) within ~500 characters of the signature, and returns one of four
verdicts: przelamanie_wykryte, uchwala_skladu_powiekszonego,
nadal_cytowany, brak_cytowan_w_saos. Each hit includes a +-200 character
fragment for human verification.
Every phrase on the list was verified against live SAOS data - the evidence table, the algorithm and the honest-limits section are in docs/CITE-CHECK.md. The short version: no hits does NOT mean the judgment is still good law, and every response says so.
After npm run build, the entry point is dist/index.js.
Add an entry to your client's MCP configuration (e.g. mcp-servers.json):
Provide the absolute path to dist/index.js. On Windows use forward slashes /
or double backslashes \\.
The smoke test checks tools/list (4 tools), search, search_by_case,
a Constitutional Tribunal lookup and saos_cite_check on a Supreme Court
resolution with known later treatment.
No external dependencies for HTTP/JSON - requests go through the built-in node:https.
The only production dependency: @modelcontextprotocol/sdk.
pageSize has a hard lower limit of 10 (SAOS returns HTTP 400 for less) -
the server automatically enforces a minimum of 10.courtType=ADMINISTRATIVE returns empty results - SAOS does not index WSA/NSA.judgmentDate field.saos_cite_check is a heuristic. It reads the top citing judgments only,
its phrase list cannot cover every way a court departs from a line of case
law, and no hits does not confirm the judgment is current.MIT - see the LICENSE file for details. Judgment data: Fundacja ePanstwo, open license (public API with no usage restrictions).
This server is one of five MCP connectors covering Polish jurisdiction + EU law, used by Patron (AGPL-3.0) and any other MCP-aware legal AI agent.
All five MCP servers share the same structuredContent.citations
contract: each tool returns an array of {title, url, snippet?, ...metadata}
that legal agents can render directly in their citation panel.
See matematicsolutions/.github for the full org profile.
Factual signals from GitHub, npm, and our automated checks — not a rating.
No reviews yet — be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/mcp-saos)<a href="https://allmcps.com/mcp/mcp-saos"><img src="https://allmcps.com/api/badge/mcp-saos?style=directory" alt="MCP Saos on AllMCPs" /></a>