About mcp-eureka
mcp-eureka is an MCP server for legal researchers querying the Polish Ministry of Finance’s EUREKA tax-practice collection. It supports filtered searches and returns citations with signatures, URLs, and issue dates.
Key features
- 01Search Polish tax-practice documents
- 02Look up documents by signature
- 03Filter by category and date
- 04Retrieve document content and metadata
- 05Return verifiable citations
Use cases
- 01Find a specific tax interpretation
- 02Verify a document by signature
- 03Filter materials by category or date
MCP support
The MCP server provides clients with search, signature lookup, category listing, and document retrieval tools. Responses include citation details such as title, URL, signature, and issue date.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
4Saved tool list · updated 2w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| page | number | No | Page number (starting from 0). For pagination. |
| query | string | No | Search phrase, e.g. 'fotowoltaika' or 'ulga badawczo-rozwojowa'. |
| date_to | string | No | Issue date to (YYYY-MM-DD). |
| date_from | string | No | Issue date from (YYYY-MM-DD). |
| page_size | number | No | Number of results per page (1-50). Default: 10. |
| signature | string | No | Document reference number, full ('0112-KDIL3.4012.367.2026.2.AK') or prefix ('0112-KDIL3'). |
| full_phrase | boolean | No | true = the phrase must appear EXACTLY (often returns 0 matches); false (default) = search words independently. |
| category_ids | array | No | Category IDs from the dictionary (list_categories). E.g. [1] = individual interpretation, [3] = general interpretation, [11] = tax explanation. |
Details
From the project READMEmcp-eureka
An MCP (Model Context Protocol) server for the EUREKA system of the
Ministerstwo Finansow / MF (Ministry of Finance) (eureka.mf.gov.pl) -
550,000+ documents of Polish tax practice, including 517,000+ individual
interpretacje podatkowe (tax interpretations) of the Krajowa Informacja
Skarbowa / KIS (National Revenue Information), general interpretations, tax
explanations, and binding rate (WIS) and excise (WIA) information.
The largest single corpus of tax practice in Poland, available to Claude / Cursor / VS Code MCP agents with verifiable citations (signature + URL + date).
Status: v0.1.0 | License: MIT | Maintainer: MateMatic
Tax interpretations are not a source of law - they are the practice of authorities (art. 14a-14s of the Tax Ordinance). Legal protection applies to the applicant of a given individual interpretation.
Data source
The public JSON API of the EUREKA portal (Angular SPA backend, no key required), verified live on 2026-07-08:
POST /api/public/v1/wyszukiwarka/informacje/?size=N&page=N&sort=DT_WYD,desc- search (filters:SYG,KATEGORIA_INFORMACJIas an array of ids,DT_WYD_start/DT_WYD_end;searchQueryin the body). The trailing slash before?is mandatory - without it the backend returns HTTP 500.GET /api/public/v1/informacje/{id}- full document (metadata + HTML content).GET /api/public/v1/pozycje-slownika/wyszukiwarka?kodSlownika=KATEGORIA_INFORMACJI- category dictionary (28 entries).
MCP tools
search(query?, full_phrase?, signature?, category_ids?, date_from?, date_to?, page?, page_size?)- search with filters; sorted by issue date descending.get_interpretation(id)- full document by ID_INFORMACJI (thesis + first 3000 characters of content).search_by_signature(signature)- shortcut: by signature, full (0112-KDIL3.4012.367.2026.2.AK) or prefix (0112-KDIL3).list_categories()- category dictionary (id -> name) forcategory_ids.
Every response includes structuredContent.citations (title, url, signature,
issue_date) - the contract consumed by Patron
and any MCP agent.
Quickstart
npm install
npm run build
npm start # stdio transport
npm run drift # consistency INSTRUCTIONS <-> TOOLS <-> ErrorCode
npm run test:parse # offline - fixtures from real API responses
npm run smoke # LIVE - eureka.mf.gov.pl (throttled 2 req/s)
MCP client configuration (mcp-servers.json):
{
"mcpServers": {
"eureka": {
"command": "node",
"args": ["<path>/mcp-eureka/dist/index.js"]
}
}
}
MateMatic Polish-law connectors
mcp-saos (common courts/SN/TK/KIO) ·
mcp-nsa (NSA + 16 WSA) ·
mcp-eureka (this one) ·
mcp-isap (Dz.U. + M.P.) ·
mcp-krs (KRS) ·
kio-orzeczenia-mcp (KIO)
Fleet convention: one connector = one source (single-source). Every call returns a citable source, zero content modification, stateless.
Disclaimer
The data comes from the public EUREKA system of the Ministry of Finance. The connector does not modify content, throttles requests (max 2 req/s), and identifies itself with a User-Agent carrying the repo address. Interpreting the law in a specific case requires your own individual interpretation or the opinion of a tax advisor.
License
MIT - see LICENSE.
Citation: MateMatic Solutions (2026), mcp-eureka - MCP server for Polish tax interpretations (EUREKA/KIS), https://github.com/matematicsolutions/mcp-eureka, MIT.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.