npm @matematicsolutions/mcp-nsastdioMITupdated 29d ago
Published on npm + the MCP Registry (io.github.matematicsolutions/mcp-nsa). Run without cloning:
mcp nsa で何ができる?
mcp-nsa
Installation (one command)
Published on npm + the MCP Registry (io.github.matematicsolutions/mcp-nsa). Run without cloning:
npx -y @matematicsolutions/mcp-nsa
MCP client configuration (stdio):
{ "mcpServers": { "mcp-nsa": { "command": "npx", "args": ["-y", "@matematicsolutions/mcp-nsa"] } } }
(Building from source - below.)
MCP server for the case law of the Polish administrative courts -
Naczelny Sad Administracyjny / NSA (Supreme Administrative Court) + 16 Wojewodzkie Sady Administracyjne / WSA (regional administrative courts) - via CBOSA (Centralna Baza Orzeczen Sadow Administracyjnych - the administrative courts' central case-law database)
(orzeczenia.nsa.gov.pl).
Why
SAOS (the common-courts case-law analysis system) does not index the administrative courts. Yet that is exactly where the substantive case law lives:
- GDPR / data protection - decisions of the President of UODO appealed to the WSA, cassation appeals to the NSA
- Taxes - individual tax rulings, decisions of tax authorities
- Customs and excise
- Administrative permits, concessions
- Review of public-administration activity
mcp-nsa closes this gap. Coverage: 2,390,000+ rulings (verified live 2026-07-08 across the full date range), from 1981 to today.
Tools
search(query, caseNumber?, court?, dateFrom?, dateTo?, pageNumber?)- search by keyword, case number, court, date. Fetches the top 5 full rulings (case number, court, date, panel, keywords, legal basis, excerpt).
get_judgment(doc_id)- full ruling by 10-character hex doc_id (from the CBOSA URL, e.g.7E50984BB7).search_by_case(caseNumber)- shortcut: search by case number (e.g.III OSK 1377/23,I SA/Gl 659/22).
Every response contains structuredContent.citations with the fields:
title, url (CBOSA), case_number, court, judgment_date,
decision_type, snippet, doc_id. Patron reads this field automatically
and surfaces it in the UI panel as the section "Rulings from CBOSA (NSA / WSA - administrative courts)".
Stack
- Node 18+
@modelcontextprotocol/sdk- Stdio transport
https+ regex HTML parser (zero external deps beyond the SDK)- 500 ms throttle between requests (2 req/s)
- SSL:
rejectUnauthorized: false- the CBOSA chain is sometimes incomplete on some machines; public rulings, no PII, MITM risk negligible against the benefit. See: LDH issue #167.
Build + run
npm install
npm run build
node dist/index.js # starts the server on stdio
Wiring into Patron
In patron/backend/mcp-servers.json (alongside mcp-saos and mcp-eu-sparql):
{
"name": "nsa",
"transport": "stdio",
"command": "node",
"args": ["C:/Users/<YOUR-USERNAME>/mcp-nsa/dist/index.js"],
"enabled": true
}
Smoke test
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"s","version":"0"}}}
{"jsonrpc":"2.0","method":"notifications/initialized"}
{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"search","arguments":{"query":"RODO art 6"}}}' \
| node dist/index.js
Should return ~1500 hits + the top 5 with Polish NSA/WSA case numbers + CBOSA URLs
- structuredContent.citations.
Lineage
Implementation rewritten in TypeScript on the basis of the HTTP/HTML contract from
legal-data-hunter/sources/PL/NSA
(Python + BeautifulSoup, MIT). It does not import the source code - it reproduces the
query pattern and HTML parsing.
License
MIT.
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-nsa (this repo) - NSA + 16 WSA administrative courts (CBOSA)
- mcp-saos - common courts, SN, TK, KIO
- 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.
インストール
mcp nsa をクライアントに追加します。お使いのものを選んでください。
claude mcp add mcp-nsa -- npx -y @matematicsolutions/mcp-nsacodex mcp add mcp-nsa -- npx -y @matematicsolutions/mcp-nsaamp mcp add mcp-nsa -- npx -y @matematicsolutions/mcp-nsa{
"mcpServers": {
"mcp-nsa": {
"command": "npx",
"args": [
"-y",
"@matematicsolutions/mcp-nsa"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"mcp-nsa": {
"command": "npx",
"args": [
"-y",
"@matematicsolutions/mcp-nsa"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"mcp-nsa","command":"npx","args":["-y","@matematicsolutions/mcp-nsa"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"mcp-nsa": {
"command": "npx",
"args": [
"-y",
"@matematicsolutions/mcp-nsa"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"mcp-nsa": {
"command": "npx",
"args": [
"-y",
"@matematicsolutions/mcp-nsa"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"mcp-nsa": {
"command": "npx",
"args": [
"-y",
"@matematicsolutions/mcp-nsa"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"mcp-nsa": {
"type": "local",
"command": "npx",
"args": [
"-y",
"@matematicsolutions/mcp-nsa"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"mcp-nsa": {
"command": {
"path": "npx",
"args": [
"-y",
"@matematicsolutions/mcp-nsa"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y @matematicsolutions/mcp-nsaRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
スコア
39 / 100
情報不足
- ドキュメント25/25
- メンテナンス25/25
- 信頼性16/20
- 機能0/15
- 導入のしやすさ12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 22 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
バージョン履歴
| バージョン | 公開日 |
|---|---|
| 1.3.0最新 | 2026年7月28日 |
| 1.2.0 | 2026年7月10日 |
| 1.1.1 | 2026年6月25日 |