关于 mcp-isap
通过 Sejm ELI API 搜索《法律公报》和《波兰公报》中的波兰立法。可获取法案详情和纯文本条文,并提供引文元数据。
主要功能
- 01按标题、年份或状态搜索法案
- 02按 ELI 获取法案详情
- 03分页读取法案文本
- 04查找搜索词附近的文本
- 05返回结构化引文
适用场景
- 01按标题或年份查找波兰法案
- 02核查法案是否生效
- 03获取法案中的具体条文
- 04为法律研究引用波兰立法
MCP 相关
通过 stdio 向 MCP 客户端提供法案搜索、详情和文本读取工具,数据来自 Sejm ELI API。响应包含结构化引文元数据。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
3收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| type | enum | 否 | 法规类型(波兰语,必须与数据库中的写法完全一致)。Ustawa | RozporzÄ…dzenie | Obwieszczenie | UchwaĹ‚a | Umowa miÄ™dzynarodowa | Konstytucja | Postanowienie |
| year | number | 否 | 法规的发布日期年份。 |
| limit | number | 否 | 最大结果数(1-50)。默认值为 10。 |
| title | string | 否 | 标题片段(波兰语,使用变格形式;例如,'ochronie' 可匹配 'ustawa o ochronie...')。 |
| in_force | boolean | 否 | true = 仅包含现行有效法规。省略此项可包含全部法规。 |
| publisher | enum | 否 | DU = Dziennik Ustaw(法律、条例),MP = Monitor Polski(众议院决议、总统命令、公告)。DU | MP |
详细介绍
mcp-isap
安装(一个命令)
已发布到 npm 和 MCP Registry(io.github.matematicsolutions/mcp-isap)。无需克隆即可运行:
npx -y @matematicsolutions/mcp-isap
MCP 客户端配置(stdio):
{ "mcpServers": { "mcp-isap": { "command": "npx", "args": ["-y", "@matematicsolutions/mcp-isap"] } } }
(从源代码构建的方法见下文。)
用于查询波兰法律的 MCP 服务——《法律公报》(Dziennik Ustaw,DU)和《波兰监测报》(Monitor Polski,MP),
数据来自官方 Sejm ELI API(api.sejm.gov.pl/eli)。
为什么需要它
mcp-saos(普通法院)+ mcp-nsa(行政法院)+ mcp-eu-sparql(欧盟)
涵盖了判例法。mcp-isap 补充法律法规——法令、条例、
官方公告和国际协定。由此构成完整的三部分:
STATUTE + CASE LAW + EU LAW
↓ ↓ ↓
ISAP SAOS+NSA EUR-Lex
↓ ↓ ↓
law firm asks about GDPR
→ 4 connectors in parallel
→ 4 citation sections in the panel
覆盖范围:从 1918 年至今的 96,000 多部法案。完整支持 ELI (欧洲立法标识符)。
工具
search_acts(title?, year?, publisher?, type?, in_force?, limit?)- 按标题片段、年份、发布方、法案类型或 生效状态搜索。publisher:DU(Dziennik Ustaw)或MP(Monitor Polski)。get_act(eli)- 按 ELI 查询法案详情(DU/2018/1000)。 返回标题、类型、状态、生效日期、关键词、 HTML/PDF 正文链接以及 ISAP 页面链接。get_act_text(eli, page?, search_text?)- 法案纯文本(不含 HTML 标签),每页 5000 个字符。若structuredContent.pagination.has_more为 true,可逐页查询;也可以传入search_text(例如"Art. 118."),一次调用即可获取首次匹配内容周围的片段。structuredContent.text_version会说明文本是合并文本,还是 颁布时的原文——Sejm ELI 对基础法案提供原文,因此如需查询现行法律,应获取consolidated_text_eli中列出的最新合并文本公告。仅以 PDF 发布的法案会返回text_unavailable_use_pdf错误及相关链接,不会用其他文字代替条文。
每个响应都包含 structuredContent.citations,字段包括:
title、url(ISAP UI)、eli、display_address(Dz.U. 2018 poz. 1000)、
publisher、year、document_type、status、in_force、promulgation。
Patron 会自动读取此字段,并在 UI 面板中显示为 “Polish legal acts (Dz.U. / M.P. - Sejm ELI)” 部分。
技术栈
- Node 18+(内置
fetch) @modelcontextprotocol/sdk- Stdio 传输
- 请求之间限流 500 ms(每秒 2 次请求)
- 不进行抓取——纯 REST JSON API
构建和运行
npm install
npm run build
node dist/index.js
接入 Patron
在 patron/backend/mcp-servers.json 中:
{
"name": "isap",
"transport": "stdio",
"command": "node",
"args": ["C:/Users/<YOUR-USER>/mcp-isap/dist/index.js"],
"enabled": true
}
冒烟测试
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":"get_act","arguments":{"eli":"DU/2018/1000"}}}' \
| node dist/index.js
应返回 2018 年 5 月 10 日《个人数据保护法》,
状态为 IN_FORCE,并提供 ISAP 链接和结构化引文。
源流
API 契约基于 legal-data-hunter/sources/PL/DziennikUrzedowy
(Python + REST,MIT)。TypeScript 实现从头编写——未导入任何源代码。
许可证
MIT。
MateMatic 旗下项目
此连接器会实时查询其数据源。它是 PATRON 中捆绑的波兰和欧盟数据源连接器之一,可与任何 MCP 客户端配合使用。
- 波兰,一个服务涵盖所有数据源:prawo-pl-mcp · 每个数据源独立提供:mcp-saos · mcp-nsa · mcp-isap(本仓库)· mcp-krs · mcp-eureka · kio-orzeczenia-mcp
- 欧盟:mcp-eu-sparql(实时)· mcp-eu-compliance(离线语料库)
- 收录波兰和欧盟法律并附有引文图谱的预构建语料库:Repertorium
mcp-saos、mcp-nsa、mcp-isap、mcp-krs 和 mcp-eu-sparql 共享同一套 structuredContent.citations
契约:每个工具都会返回一个包含 {title, url, snippet?, ...metadata}
的数组,法律 Agent 可直接在其引文面板中呈现这些内容。
完整的组织简介请参阅 matematicsolutions/.github 。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。