关于 fi-eli-mcp
fi-eli-mcp 面向查询芬兰成文法的用户,通过 Finlex 开放数据 API 获取法规元数据和 Akoma Ntoso 3.0 全文。它按年份或年份与编号发现法规,并提供可核验的 ELI 标识和芬兰语引文。
主要功能
- 01按年份列出法规
- 02按年份和编号获取元数据
- 03获取 Akoma Ntoso 全文
- 04说明覆盖范围与数据缺口
- 05提供 ELI 标识和来源引文
适用场景
- 01按年份浏览芬兰成文法
- 02通过编号查阅法规全文
- 03核验法规的 ELI 标识和引文
MCP 相关
作为 MCP 服务,它向客户端提供法规列表、元数据、全文和覆盖范围工具,并从 Finlex 开放数据 API 读取法规。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
4收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| year | integer | 是 | 例如:``2018``。 |
详细介绍
fi-eli-mcp
安装(一条命令)
作为 Claude 插件使用(Claude Code 或桌面应用,需要 uv); 有关发送和存储的内容,请参阅 plugin/README.md:
/plugin marketplace add matematicsolutions/fi-eli-mcp
/plugin install fi-eli-mcp@fi-eli-mcp
已发布到 PyPI 和 MCP Registry(io.github.matematicsolutions/fi-eli-mcp)。无需克隆即可运行:
uvx fi-eli-mcp
配置你的 MCP 客户端(stdio):
{ "mcpServers": { "fi-eli-mcp": { "command": "uvx", "args": ["fi-eli-mcp"] } } }
使用 Smart App Control 的 Windows 11
Smart App Control 会阻止未签名的可执行文件,包括 uvx.exe、pip.exe
以及 pip 安装时写入的 fi-eli-mcp.exe 启动器。python.org 安装程序中的 python.exe 和
py.exe 由 Python Software
Foundation 签名,因此可以通过解释器运行模块:
python -m pip install fi-eli-mcp
python -m fi_eli_mcp
pip.exe 也会因同样的原因被阻止,因此请使用 python -m pip 安装,而不要使用
pip install。如果 python 不在 PATH 中,请使用 Windows 启动器:py -3 -m fi_eli_mcp。
{ "mcpServers": { "fi-eli-mcp": { "command": "python", "args": ["-m", "fi_eli_mcp"] } } }
请勿为了绕过此限制而关闭 Smart App Control——若不重新安装 Windows,就无法重新启用它。
从源代码构建:请参阅安装。
这是一个用于芬兰 Finlex 开放数据 API(opendata.finlex.fi)的 MCP 服务。它获取
合并后的芬兰法规(Akoma Ntoso 3.0 XML),并提供可验证的 ELI 标识符
和芬兰语引文。
它属于 MateMatic 的 eu-legal-mcp 生产线,继 PL、DE、AT 和 ES 之后推出。采用相同的引文
规范,数据来源为 Finlex。
**范围。**此 MVP 涵盖芬兰法规(saadokset)。按年份(
fi_list_acts) 或年份 + 编号进行查询;开放数据 API 基于路径,不支持关键词搜索。芬兰是双语国家, 因此标题可能为芬兰语或瑞典语。每个响应都包含dataset_note。**许可。**Finlex 中的芬兰法规属于官方公共信息,以开放数据形式发布 (无需密钥)。此连接器会注明出处并提供
source_url。
工具
| 工具 | 功能 |
|---|---|
fi_list_acts | 列出某一年的法规(发现)。 |
fi_get_act | 按年份 + 编号获取法规的元数据。 |
fi_get_text | 按年份 + 编号获取法规的完整 Akoma Ntoso 正文。 |
fi_coverage | 说明此连接器的覆盖范围、每个类别的采集时间,以及明确说明未覆盖的内容。每项缺口都提供备用方案。 |
每个响应都遵循以下规范:eli_uri(完整的 ELI URL,例如
http://data.finlex.fi/eli/sd/2018/1050/alkup)、human_readable_citation
(例如 Tietosuojalaki (1050/2018))和 source_url。
安装
cd fi-eli-mcp
pip install -e .
配置(Claude Code / 任意 MCP 客户端)
{
"mcpServers": {
"fi-eli-mcp": { "command": "fi-eli-mcp" }
}
}
环境变量:
FI_ELI_BASE_URL- 默认值为https://opendata.finlex.fi/finlex/avoindata/v1FI_ELI_CACHE_DIR- 默认值为~/.matematic/cache/fi-eliFI_ELI_AUDIT_DIR- 默认值为~/.matematic/audit
无需 API 密钥。Finlex 开放数据无需密钥。
治理
- 仅限公共数据 - 以只读方式访问 Finlex;客户端数据不会离开本机。
- 审计日志 - 每次工具调用都会向
~/.matematic/audit/fi-eli-mcp.jsonl追加一行 JSON。 - 网络 - 服务会与上文列出的官方来源及本地
文件系统通信。首次使用时,它还会从此仓库的 GitHub Releases 获取一个小型配置文件
(
fi-runtime.json.gz,包含更新后的来源地址)。 此请求不包含任何查询内容;我们唯一能看到的使用情况信号是 GitHub 对该文件的下载计数。 设置FI_ELI_RUNTIME_URL=""可关闭此功能;Claude 插件默认关闭。 不使用 LLM 提供商,也没有其他遥测。 - 可验证的引文 - 每个响应都可以通过
source_url独立核验。
请参阅 CONSTITUTION.md 和 DISCOVERY.md。
测试
pip install -e ".[dev]"
pytest tests/test_instructions_drift.py -v # offline
pytest tests/test_smoke.py -v # hits live Finlex
许可
Apache-2.0。© Matematic Solutions / Wieslaw Mazur。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。