fi-eli-mcp
This server provides read-only access to Finnish statutes from the Finlex open-data API, returning structured metadata and full legal text in Akoma Ntoso 3.0 XML format. No API key is required.
Tools available:
fi_list_acts— List all Finnish statutes published in a given year, returning titles, ELI URIs, statute numbers, subtypes, dates, and human-readable citations (e.g.,Tietosuojalaki (1050/2018)).fi_get_act— Fetch metadata for a specific statute by year and number, including ELI URI, FRBR URI, title (Finnish/Swedish), subtype, and source URL.fi_get_text— Download the complete Akoma Ntoso 3.0 XML text of a statute by year and number, along with its byte size, ELI URI, and citation.
Key notes:
Every response includes verifiable ELI URIs and source URLs for independent verification.
Covers Finnish statutes (saadokset) only — case law is not supported.
Statute titles may appear in Finnish or Swedish (bilingual country).
An audit log of every tool call is maintained locally.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@fi-eli-mcplist all Finnish statutes from 2023"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
fi-eli-mcp
Install (one command)
Published on PyPI + MCP Registry (io.github.matematicsolutions/fi-eli-mcp). Run without cloning:
uvx fi-eli-mcpConfigure your MCP client (stdio):
{ "mcpServers": { "fi-eli-mcp": { "command": "uvx", "args": ["fi-eli-mcp"] } } }Windows 11 with Smart App Control
Smart App Control blocks unsigned executables, which covers uvx.exe, pip.exe
and the fi-eli-mcp.exe launcher that pip writes at install time. The python.exe and
py.exe from the python.org installer are signed by the Python Software
Foundation, so running the module through the interpreter works:
python -m pip install fi-eli-mcp
python -m fi_eli_mcppip.exe is blocked for the same reason, so install with python -m pip, not
pip install. If python is not on PATH, use the Windows launcher: py -3 -m fi_eli_mcp.
{ "mcpServers": { "fi-eli-mcp": { "command": "python", "args": ["-m", "fi_eli_mcp"] } } }Do not turn Smart App Control off to work around this - it cannot be re-enabled without reinstalling Windows.
Building from source: see Install.
An MCP server for the Finnish Finlex open-data API (opendata.finlex.fi). It fetches
consolidated Finnish statutes as Akoma Ntoso 3.0 XML, with verifiable ELI identifiers and
Finnish citations.
Part of the MateMatic eu-legal-mcp production line - after PL, DE, AT and ES. Same citation
contract, Finlex source.
Scope. This MVP covers Finnish statutes (saadokset). Discovery is by year (
fi_list_acts) or by year + number; the open-data API is path-based, not keyword search. Finland is bilingual, so titles may be Finnish or Swedish. Every response carries adataset_note.Licence. Finnish legislation in Finlex is official public information published as open data (keyless). This connector relays it with attribution and a
source_url.
Related MCP server: lu-eli-mcp
The tools
Tool | What it does |
| List the statutes of a year (discovery). |
| Metadata for a statute by year + number. |
| Full Akoma Ntoso text of a statute by year + number. |
Every response carries the contract: eli_uri (a full ELI URL, e.g.
http://data.finlex.fi/eli/sd/2018/1050/alkup), human_readable_citation
(e.g. Tietosuojalaki (1050/2018)), and source_url.
Install
cd fi-eli-mcp
pip install -e .Configure (Claude Code / any MCP client)
{
"mcpServers": {
"fi-eli-mcp": { "command": "fi-eli-mcp" }
}
}Environment:
FI_ELI_BASE_URL- defaulthttps://opendata.finlex.fi/finlex/avoindata/v1FI_ELI_CACHE_DIR- default~/.matematic/cache/fi-eliFI_ELI_AUDIT_DIR- default~/.matematic/audit
No API key. Finlex open data is keyless.
Governance
Public data only - read-only against Finlex; no client data leaves the machine.
Audit log - every tool call appends one JSON line to
~/.matematic/audit/fi-eli-mcp.jsonl.Vendor-neutral - talks only to
opendata.finlex.fi; no LLM provider, no telemetry.Verifiable citations - every response is independently checkable via
source_url.
See CONSTITUTION.md and DISCOVERY.md.
Tests
pip install -e ".[dev]"
pytest tests/test_instructions_drift.py -v # offline
pytest tests/test_smoke.py -v # hits live FinlexLicence
Apache-2.0. © Matematic Solutions / Wieslaw Mazur.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityAmaintenanceEnables AI agents to search and retrieve consolidated Swedish statutes (SFS) from the Riksdagen open data API, with verifiable citations and persistent identifiers.Last updated3Apache 2.0
- AlicenseAqualityAmaintenanceEnables querying Luxembourg legislation metadata and full Akoma Ntoso text via ELI identifiers from Legilux open data.Last updated21Apache 2.0
- AlicenseAqualityAmaintenanceProvides access to Danish legislation from Retsinformation.dk, enabling retrieval of act metadata, full text, and recent changes with verifiable citations.Last updated3Apache 2.0
- AlicenseAqualityAmaintenanceEnables access to Slovak legislation from the Collection of Laws via static.slov-lex.sk. Supports listing consolidated versions, retrieving act metadata, and fetching full text with verifiable citations.Last updated3Apache 2.0
Related MCP Connectors
Search Swiss federal legislation: laws, articles, amendments via the Fedlex SPARQL endpoint.
EU law, article-level: GDPR, NIS2, DORA, EU AI Act + more, with EUR-Lex citations. Keyless.
Japan Law MCP — Japanese national laws & ordinances via the e-Gov Law API.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/matematicsolutions/fi-eli-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server