关于 nl-eli-mcp
nl-eli-mcp 为法律研究者和 AI Agent 提供荷兰现行及指定日期的合并法规与判例数据,并附可核验引文和官方来源链接。
主要功能
- 01按标题搜索法规
- 02获取指定日期的法规版本与全文
- 03按日期、法院或主题搜索判例
- 04通过 ECLI 获取判决全文
- 05提供覆盖范围与缺口说明
适用场景
- 01核对某日生效的法规版本
- 02查找并引用荷兰法院判决
MCP 相关
该 MCP 服务向客户端提供荷兰法规及判例的搜索、元数据和全文工具。响应附持久标识、易读引文和官方来源链接。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
6收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| query | string | 是 | 要在法令标题中匹配的词语,例如 ``"bestuursrecht"``。 |
| on_date | any | 否 | 可选的 ``YYYY-MM-DD``;默认为今天(今天生效)。 |
详细介绍
nl-eli-mcp
安装(一个命令)
作为 Claude 插件使用(Claude Code 或桌面应用,需要 uv); 有关发送和存储内容,请参阅 plugin/README.md:
/plugin marketplace add matematicsolutions/nl-eli-mcp
/plugin install nl-eli-mcp@nl-eli-mcp
已发布到 PyPI 和 MCP Registry(io.github.matematicsolutions/nl-eli-mcp)。无需克隆即可运行:
uvx nl-eli-mcp
配置 MCP 客户端(stdio):
{ "mcpServers": { "nl-eli-mcp": { "command": "uvx", "args": ["nl-eli-mcp"] } } }
使用 Smart App Control 的 Windows 11
Smart App Control 会阻止未签名的可执行文件,包括 uvx.exe、pip.exe
以及 pip 在安装时写入的 nl-eli-mcp.exe 启动器。python.org 安装程序提供的 python.exe 和
py.exe 由 Python Software Foundation 签名,因此通过解释器运行模块即可:
python -m pip install nl-eli-mcp
python -m nl_eli_mcp
出于相同原因,pip.exe 也会被阻止,因此请使用 python -m pip 安装,而不要使用
pip install。如果 python 不在 PATH 中,请使用 Windows 启动器:py -3 -m nl_eli_mcp。
{ "mcpServers": { "nl-eli-mcp": { "command": "python", "args": ["-m", "nl_eli_mcp"] } } }
请勿通过关闭 Smart App Control 来绕过此问题——若不重新安装 Windows,便无法重新启用它。
从源代码构建:请参阅安装。
这是一个 MCP 服务,提供由 KOOP 通过官方 SRU API(zoekservice.overheid.nl,无需密钥)发布的荷兰合并立法 BWB(Basiswettenbestand)。它会提供某项法律在指定日期生效的版本,并附带可验证的引文:永久标识符、人类可读的引文,以及官方来源链接。
属于 MateMatic 的 eu-legal-mcp 系列——每个欧盟成员国一个连接器,处处使用相同的引文规范。
关于 ELI。 荷兰不会在合并立法 BWB 上发布原生 ELI(
/eli/)URI。为确保该系列遵守引文规范,eli_uri使用官方永久标识符——wetten.overheid.nl/idtoestand URI (例如http://wetten.overheid.nl/id/BWBR0005537/2026-06-04/0)。连接器绝不会伪造/eli/URI,并会在工具说明中明确说明。请参阅DISCOVERY.md。
工具
| 工具 | 功能 |
|---|---|
nl_search(query, on_date=today) | 按标题中的词语查找指定日期生效的法律。返回去重后的法律列表,每项均符合引文规范。 |
nl_get_act(bwb_id, on_date=today) | 获取某项法律(例如 BWBR0005537)的元数据——标识符、标题、主管机构、版本日期。 |
nl_get_text(bwb_id, on_date=today) | 获取某项法律的完整合并 XML(BWB toestand)。 |
nl_case_search(date_from, date_to, ...) | 按日期范围/法院/主题列出法院判决(Rechtspraak Open Data)。不支持全文搜索;每条结果均带有原生 ecli。 |
nl_get_decision(ecli) | 按 ECLI 获取法院判决(例如 ECLI:NL:HR:2020:1)——法院、日期、案号和全文。 |
nl_coverage() | 说明此连接器涵盖的内容、各类别的采集时间,以及明确说明未涵盖的内容。每项缺口均附有替代方案。 |
立法数据来自 BWB(KOOP SRU);判例法来自 Rechtspraak Open Data
(data.rechtspraak.nl),以原生 ECLI 为键。每个响应都包含引文规范:
eli_uri— 官方永久标识符(toestand URI;请参阅上方的 ELI 说明)。human_readable_citation— 官方简称(citeertitel),例如 Algemene wet bestuursrecht。source_url— 对应版本在wetten.overheid.nl上可浏览的页面。
版本和日期
每项法律都有多个带时间戳的版本。工具默认使用今日生效的版本;
传入 on_date(YYYY-MM-DD)可指定历史或未来版本。如果某项法律在该日期没有有效版本,则返回 not_found——请使用其他 on_date 重试。
安装
pip install -e ".[dev]"
在 MCP 客户端中注册(请参阅 .mcp.json.example):
{
"mcpServers": {
"nl-eli-mcp": {
"command": "nl-eli-mcp",
"env": {
"NL_ELI_BASE_URL": "https://zoekservice.overheid.nl/sru/Search",
"NL_ELI_CACHE_DIR": "~/.matematic/cache/nl-eli",
"NL_ELI_AUDIT_DIR": "~/.matematic/audit"
}
}
}
}
设计
- 仅限公开数据。 仅对无需密钥的 KOOP SRU API、官方仓库托管服务和 Rechtspraak Open Data 进行只读访问;除查询 / 标识符和日期外,不会发送任何内容。
- 审计日志。 每次调用都会向
~/.matematic/audit/nl-eli-mcp.jsonl追加一行 JSON(用于记录)。 - 网络。 除上述来源外,服务在首次使用时会从此仓库的 GitHub Releases 获取一个小型配置文件(
nl-runtime.json.gz,其中包含更新后的来源地址)。该请求不包含任何查询内容;我们能看到的唯一使用信号是 GitHub 对该文件的下载计数。设置NL_ELI_RUNTIME_URL=""可关闭此功能;Claude 插件默认关闭此功能。无大模型提供商、无其他遥测;自带退避机制和磁盘缓存。 - 不捏造信息。 标识符和标题均从来源记录中解析。如果 KOOP 的架构发生变化,连接器会明确报错,而不会返回过时或虚构的数据。
请参阅 CONSTITUTION.md(4 项原则)和 DISCOVERY.md(来源的映射方式)。
测试
pytest tests/test_instructions_drift.py tests/test_parse.py # offline
pytest tests/test_smoke.py # live KOOP API
许可
Apache-2.0。所提供的荷兰法律是荷兰王国的官方公开数据;此连接器不对其主张任何额外权利。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。