关于 tr-eli-mcp
tr-eli-mcp 为法律研究者和 AI Agent 提供土耳其立法的搜索、元数据和全文,覆盖多种法规类型,并附可核验引文。
主要功能
- 01按标题或全文搜索立法
- 02按类型和编号筛选结果
- 03获取法规全文及条文目录
- 04列出法规类型和文档数量
- 05提供覆盖范围说明及来源标识
适用场景
- 01按主题查找土耳其法规
- 02查看法规条文结构并引用官方文本
MCP 相关
该 MCP 服务向客户端提供土耳其立法搜索、全文、条文目录及类型列表工具。响应包含可解析标识、易读引文和官方来源链接;不提供判例。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
5收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| query | string | 是 | 搜索词组,例如 ``"vergi"``。 |
| mevzuat_no | any | 否 | 可选的法律编号筛选条件。 |
| baslikta_ara | boolean | 否 | 仅搜索标题(默认 True)。设为 False 也搜索全文。 |
| mevzuat_turu | any | 否 | 可选的法律类型筛选条件,例如 ``"KANUN"``、``"KHK"``、 ``"YONETMELIK"``。完整列表请参阅 ``tr_list_legislation_types``。 |
详细介绍
tr-eli-mcp
一个用于土耳其立法的 MCP 服务(Kanun/法律、KHK/法令、Tuzuk/章程、Yonetmelik/法规、Cumhurbaskanligi Kararnamesi/总统令、Teblig/通告等)。该服务由Adalet Bakanligi(司法部)通过 bedesten.adalet.gov.tr/mevzuat 提供,是一个无需密钥的 JSON API。它为 AI Agent 提供立法文本和元数据,并附带可验证的引用:可解析的标识符、人类可读的引用以及官方来源链接。
这是 MateMatic 的 eu-legal-mcp 系列的一部分——每个国家一个连接器,且在各处使用相同的引用约定。该系列将土耳其纳入其更广义的“欧洲”框架(欧洲委员会成员国、欧盟入盟候选国),并与严格按照欧盟 27 国成员资格划分的连接器并列。
关于 ELI。 土耳其不发布原生 ELI(
/eli/)URI。为确保该系列的约定准确无误,eli_uri使用规范且可解析的mevzuat.gov.trURL——例如https://www.mevzuat.gov.tr/mevzuat?MevzuatNo=5237&MevzuatTur=1&MevzuatTertip=5——这是每条 Bedesten 搜索记录都会提供的 URL。该连接器绝不会伪造/eli/URI,并会在工具说明中明确说明。请参阅DISCOVERY.md。关于判例。 此连接器仅涵盖立法。从构建网络访问 Yargitay(土耳其最高上诉法院)的裁决搜索时无法连接(TCP 超时);Anayasa Mahkemesi(土耳其宪法法院)则仅提供由客户端渲染的 SPA,未发现服务器 API。这两者都未接入此连接器——请参阅
DISCOVERY.md,了解实际检查过的内容。
工具
| 工具 | 功能 |
|---|---|
tr_search_legislation(query, mevzuat_turu=None, mevzuat_no=None, baslikta_ara=True) | 按标题和/或全文搜索土耳其立法;可选按类型和编号筛选。 |
tr_get_legislation_content(mevzuat_id) | 获取一份文档的全文(将 HTML 转换为纯文本)。 |
tr_get_legislation_toc(mevzuat_id) | 获取一份文档的条文树(madde agaci / 目录)。 |
tr_list_legislation_types() | 列出所有立法类型及实时文档数量(KANUN、KHK、YONETMELIK……)。 |
tr_coverage() | 声明此连接器的涵盖范围、各类别的采集时间,以及明确未涵盖的内容。每项缺口都附有备用方案。 |
每个响应都包含引用约定:
eli_uri— 规范且可解析的mevzuat.gov.tr标识符(见上文关于 ELI 的说明)。human_readable_citation— 土耳其引用格式:法律编号 + 名称 + 《官方公报》(Resmi Gazete)日期/编号,例如 5237 sayili Turk Ceza Kanunu (Resmi Gazete: 12/10/2004, Sayi: 25611)。source_url— 相同的规范mevzuat.gov.tr页面。
安装
作为 Claude 插件安装(Claude Code 或桌面应用,需要 uv);有关发送和存储的内容,请参阅 plugin/README.md:
/plugin marketplace add matematicsolutions/tr-eli-mcp
/plugin install tr-eli-mcp@tr-eli-mcp
pip install -e ".[dev]"
在 MCP 客户端中注册(请参阅 .mcp.json.example):
{
"mcpServers": {
"tr-eli-mcp": {
"command": "tr-eli-mcp",
"env": {
"TR_ELI_BASE_URL": "https://bedesten.adalet.gov.tr/mevzuat",
"TR_ELI_CACHE_DIR": "~/.matematic/cache/tr-eli",
"TR_ELI_AUDIT_DIR": "~/.matematic/audit"
}
}
}
}
使用 Smart App Control 的 Windows 11
Smart App Control 会阻止未签名的可执行文件,包括 uvx.exe、pip.exe 以及 pip 在安装时写入的 tr-eli-mcp.exe 启动器。python.org 安装程序提供的 python.exe 和 py.exe 由 Python Software Foundation 签名,因此通过解释器运行模块即可正常工作:
python -m pip install tr-eli-mcp
python -m tr_eli_mcp
出于相同原因,pip.exe 也会被阻止,因此请使用 python -m pip 安装,而不要使用 pip install。如果 python 不在 PATH 中,请使用 Windows 启动器:py -3 -m tr_eli_mcp。
{ "mcpServers": { "tr-eli-mcp": { "command": "python", "args": ["-m", "tr_eli_mcp"] } } }
请勿通过关闭 Smart App Control 来规避此问题——若不重新安装 Windows,便无法重新启用它。
设计
- 仅公开数据。 只读访问无需密钥的 Adalet Bakanligi Bedesten API;除查询内容或文档 ID 外,不会发送任何信息。
- 审计日志。 每次调用都会向
~/.matematic/audit/tr-eli-mcp.jsonl追加一行 JSON(用于记录)。 - 网络 - 服务会与上述官方来源及本地文件系统通信。首次使用时,还会从此仓库的 GitHub Releases 获取一个小型配置文件
(
tr-runtime.json.gz,包含更新后的来源地址)。 此请求不携带任何查询内容;我们能看到的唯一使用信号是 GitHub 对该文件的下载计数。设置TR_ELI_RUNTIME_URL=""可将其关闭;Claude 插件默认关闭此功能。不会使用任何大模型提供商,也没有其他遥测。采用自有退避机制和磁盘缓存。 - 不捏造信息。 标识符和标题均从来源记录中解析。如果 Bedesten 的架构发生变化,连接器会明确报错,而不会返回过时或虚构的数据。
请参阅 CONSTITUTION.md(4 项原则)和 DISCOVERY.md(来源映射方式及排除的内容)。
测试
pytest tests/test_instructions_drift.py # offline
pytest tests/test_smoke.py # live Bedesten API
许可
Apache-2.0。所提供的土耳其法律法规是土耳其共和国的官方公开数据;此连接器不会因此获得任何额外权利。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。