mcp-saos

mcp-saos

MCP server for Polish case-law (SAOS) — Supreme Court, Constitutional Tribunal, common courts and KIO — with ECLI and verifiable citations.

Category
Visit Server

README

mcp-saos

MCP License: MIT Node

Serwer MCP (Model Context Protocol) dla polskiego orzecznictwa - konektor do SAOS (System Analizy Orzeczen Sadowych, Fundacja ePanstwo).

Czesc projektu MateMatic "polski legal AI". Dziala jako osobny proces komunikujacy sie przez stdio; szablon czatu (fork mike) wola go przez protokol MCP.

Czym jest SAOS

Otwarta baza orzeczen sadow polskich. Publiczne REST API, bez klucza.

Wazne ograniczenie: SAOS to archiwum historyczne - ingestja danych zatrzymala sie ok. 2016-2018. Nie nadaje sie do biezacego orzecznictwa. Do spraw aktualnych: sn.pl, orzeczenia.ms.gov.pl, trybunal.gov.pl.

Baza pokrywa: sady powszechne (COMMON), Sad Najwyzszy (SUPREME), Trybunal Konstytucyjny (CONSTITUTIONAL_TRIBUNAL), KIO (NATIONAL_APPEAL_CHAMBER). Sady administracyjne (WSA/NSA) - brak danych w SAOS.

Narzedzia MCP

Narzedzie Opis
search Wyszukiwanie pelnotekstowe i filtrowane (sad, sedzia, podstawa prawna, daty)
get_judgment Pelne orzeczenie po ID z SAOS
search_by_case Skrot: szukaj po sygnaturze akt (np. "I ACa 772/13")

Wymagania

  • Node.js >= 18
  • npm >= 9
  • Dostep do internetu (live API saos.org.pl)

Instalacja i budowanie

git clone https://github.com/matematicsolutions/mcp-saos
cd mcp-saos
npm install
npm run build

Po npm run build plik startowy to dist/index.js.

Uruchomienie standalone (test)

node dist/index.js
# serwer nasłuchuje na stdin/stdout, logi diagnostyczne na stderr

Podpiecie do szablonu czatu (fork mike) - mcp-servers.json

Dodaj wpis do konfiguracji MCP swojego klienta (np. mcp-servers.json):

{
  "name": "saos",
  "transport": "stdio",
  "command": "node",
  "args": ["C:/Users/<TWOJ-UZYTKOWNIK>/mcp-saos/dist/index.js"],
  "enabled": true
}

Podaj bezwzgledna sciezke do dist/index.js. Na Windows uzyj slashow / lub podwojnych ukosnikow \\.

Smoke test

npm run build
node test/smoke.mjs

Smoke test sprawdza: tools/list (3 narzedzia) i tools/call search na zywym API SAOS z fraz "ochrona danych", sad SUPREME.

Architektura

stdin  -->  MCP JSON-RPC (stdio transport)  -->  src/index.ts
                                                      |
                                            SAOS REST API
                                     https://www.saos.org.pl/api
                                            /search/judgments
                                            /judgments/{id}
stdout <--  formatted text responses  <--

Brak zewnetrznych zaleznoscijsonow - HTTP przez wbudowany node:https. Jedyna zaleznosc produkcyjna: @modelcontextprotocol/sdk.

Ograniczenia i znane pulapki

  • pageSize ma twardy dolny limit 10 (SAOS zwraca HTTP 400 dla mniej) - serwer automatycznie wymusza minimum 10.
  • courtType=ADMINISTRATIVE zwraca puste wyniki - SAOS nie indeksuje WSA/NSA.
  • Daty w bazie moga zawierac artefakty OCR (np. "3013-12-04") - sygnatura akt jest pewniejsza niz pole judgmentDate.
  • Baza jest historyczna (~do 2016-2018) - serwer zawsze informuje o tym w kazdej odpowiedzi narzedzia.

Licencja

MIT - szczegoly w pliku LICENSE. Dane orzeczen: Fundacja ePanstwo, otwarta licencja (API publiczne bez ograniczen uzycia).

Part of the MateMatic legal stack

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.

  • mcp-saos (this repo) — common courts, Supreme Court, Constitutional Tribunal, KIO
  • mcp-nsa — NSA + 16 WSA administrative courts
  • mcp-isap — Polish legislation (Dz.U. + M.P.)
  • mcp-krs — Polish company registry (KRS)
  • mcp-eu-sparql — EU law + CJEU (EUR-Lex)

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.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured