二室MCP服务器
全面的模型上下文协议(MCP)服务器,提供对荷兰议会(Tweede Kamer)开放数据API的访问。
概述
此MCP服务器使AI助手能够搜索和分析荷兰议会数据,包括:
- 文件 -法案、议案、书面质询、政府函件(662629+份文件)
- 投票记录 -议会投票和政党立场(938047+票)
- 国会议员 -拥有透明数据(职业、教育、礼物、旅行)的议员
- 议会判例 -立法案件和档案(289275多起案件)
- 辩论和会议 -委员会和全体会议(92275+次活动)
- 委员会和政党 -目前的组成和成员
- 部长级承诺 -跟踪政府承诺和履行情况
特性
- 25+专用工具 涵盖议会数据的各个方面
- JSON和Markdown 响应格式
- 分页支持 对于大型结果集
- 高级过滤 按日期、类型、关键字、状态
- 关系导航 链接文档、投票、成员和案例
- 无需认证 -公共数据访问
安装
快速安装(3个命令)
# Clone to your MCP servers directory
git clone https://github.com/wimjan123/tweede-kamer-mcp.git ~/.mcp-servers/tweede-kamer
# Install dependencies
pip install -r ~/.mcp-servers/tweede-kamer/requirements.txt
# Add to Claude Desktop
claude mcp add tweede-kamer python ~/.mcp-servers/tweede-kamer/tweede_kamer_mcp.py然后重新启动Claude Desktop,您就可以开始了!
先决条件
- Python 3.10或更高版本
- MCP兼容客户端(例如Claude Desktop)
看 安装.md 用于替代安装方法。
可用工具
文档工具(5)
tk_search_documents-按关键字、类型、日期范围搜索tk_get_document_details-包含版本和关系的完整文档tk_get_document_versions-带有下载链接的版本历史记录tk_search_written_questions-查找议会问题tk_search_motions-查找带有投票跟踪功能的动议
人物工具(4)
tk_search_members-按姓名、政党、职能查找议员tk_get_member_profile-包含透明度数据的完整配置文件tk_get_member_activities-议员的议会工作tk_get_member_documents-成员撰写的文件
投票工具(3)
tk_search_votes-按党派、决定、日期查找投票tk_get_vote_details-投票细分以供决定tk_get_party_voting_record-分析政党投票模式
案例工具(4)
tk_search_cases-按主题、类型、状态搜索案例tk_get_case_details-包含文件和时间表的完整案例tk_get_case_timeline-按时间顺序排列的病例进展tk_track_motion_status-跟踪从提交到投票的动议
档案工具(3)
tk_search_dossiers-按主题查找档案tk_get_dossier_contents-档案中的所有案件和文件tk_track_dossier_activity-最近的档案活动
活动和会议工具(4)
tk_search_activities-查找辩论和会议tk_get_activity_details-与参与者的活动和议程tk_get_meeting_agenda-会议议程项目tk_get_debate_participants-辩论参与详情
委员会和政党工具(4)
tk_list_committees-所有有成员的委员会tk_get_committee_details-委员会信息和活动tk_list_parties-所有有席位数的政党tk_get_party_details-党的信息和成员
决策与承诺工具(2)
tk_search_decisions-查找议会决定tk_track_ministerial_commitments-监督部长承诺
用法示例
查找最近的气候议案及其投票结果
Use tk_search_motions with keywords="klimaat" and year=2024, then get vote details for specific motions.跟踪议员的活动
Use tk_search_members to find the member, then tk_get_member_activities to see their debates and committee work.监测尚未履行的部长级承诺
Use tk_track_ministerial_commitments with status="Openstaand" to find unfulfilled promises.分析特定主题的政党投票模式
Search for cases with tk_search_cases, then use tk_get_party_voting_record to see how parties voted.荷兰术语指南
- 第二 房间 -众议院(荷兰议会下院)
- Kamerlid -议员(MP)
- 党派 -议会党派/团体
- 委员会 -委员会
- 运动 -运动
- 立法提案 -法案/立法提案
- 书面问题 -书面问题
- 辩论者 -全体会议辩论
- 词干提取 -投票/投票
- 下降 -决定
- 扎克 -案例/事项
- 房间档案 -议会档案
- 承诺 -承诺/许诺
数据源
所有数据均来自荷兰议会官方开放数据门户:
- 基本URL:https://gegevensmagazijn.tweedekamer.nl/OData/v4/2.0
- 文档: https://opendata.tweedekamer.nl
- 格式:带有JSON响应的OData v4 API
- 访问:无需身份验证(公共数据)
重要说明
投票结构
大多数投票记录在 派系/政党级别不是个别议员。在荷兰的制度中,个人投票记录很少见,因为政党通常作为一个整体投票。
数据质量
- 即使在活动记录上,某些字段也可能为空
- 已删除的记录仍保留在数据库中
Verwijderd: true标志(自动过滤掉) - 历史数据可以追溯到20世纪90年代
- 未来日期表示已安排的会议/活动
API限制
- 每个查询最多250个结果(更多请使用分页)
- 复杂的多级扩展可能会失败(工具会自动处理)
- 文本搜索使用子字符串匹配(没有全文搜索排名)
发展
测试
# Validate syntax
python -m py_compile tweede_kamer_mcp.py
# Run server (for manual testing in tmux)
python tweede_kamer_mcp.py评估
# Run evaluation suite (requires evaluation harness)
# See MCP documentation for evaluation setup许可证
此MCP服务器按原样提供,用于访问荷兰议会的公共数据。数据本身由Tweed Kamer der Staten General根据其开放数据政策提供。
支持
对于问题或疑问:
- MCP服务器问题:检查代码和文档
- API问题:https://opendata.tweedekamer.nl
- 数据问题:联系Tweed Kamer支持
版本
1.0.0-首次发布,包含25多种工具,涵盖所有主要议会数据实体
