mcpField
U
UK Parliament - Open Data - Model Context Protocol Server

UK Parliament - Open Data - Model Context Protocol Server

本地服务
github.com数据与分析43 周前更新

关于 UK Parliament - Open Data - Model Context Protocol Server

这是一个用于通过官方 API 查询英国议会数据的旧版 .NET MCP 服务,面向使用 MCP 助手进行议会研究的场景。它覆盖议员、法案、投票和 Hansard 等内容,并提供来源 URL;后续开发已转至继任仓库。

主要功能

  1. 01查询议员与选区
  2. 02检索法案、投票和委员会
  3. 03查询 Hansard 与议会活动
  4. 04提供官方 API 来源 URL

适用场景

  1. 01查看议员简介或投票记录
  2. 02查找法案阶段与修正案
  3. 03检索委员会会议和证据

MCP 相关

它将英国议会开放数据 API 封装为 stdio MCP 工具,供 GitHub Copilot、Claude Desktop 等客户端调用,并可返回所用 API URL 作为来源。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

英国议会开放数据 MCP .NET 9

🇬🇧 英国议会 AI 助手

将任何支持 MCP 的 AI 转变为实时议会研究台。
询问议员、贵族院议员、法案、投票、委员会、Hansard 等信息——答案来自议会官方 API,并且每次都会注明来源。

快速开始 · 可以询问什么 · 设置 · 提示词示例 · 后续项目


重要

活跃开发已转移。 本仓库是最初的 .NET MCP 实验项目。
目前持续维护的项目——拥有完整的 CLI、更丰富的工具和持续修复——位于:
👉 ChrisBrooksbank/uk-parliament-data-mcp

功能本仓库(旧实验项目)后续项目
面向 AI 助手的 MCP 服务✅ .NET✅ Python(持续维护)
命令行界面(CLI)❌ 此处没有✅ 有——CLI 仅在新仓库中提供
AIS / 零安装选项有限✅ 更多选择
持续增强与修复已归档 / 活跃度低✅ 活跃

如果你想获得当下的最佳体验(尤其是终端工作流),请从后续仓库开始。


🎬 实际演示

AI 助手中的 MCP

注意: Claude Code 和 MCP 服务未经授权,不得在议会电脑上使用。此演示录制于非议会电脑上。

用自然语言提问;助手通过 MCP 调用议会 API,并返回附有来源的答案。

MCP 演示:AI 助手通过 MCP 使用英国议会实时数据回答议会问题

MCP 会话——实时工具、实时数据,并附有来源 URL。

后续项目中的 CLI

更喜欢使用终端?CLI 仅在新仓库中提供——此实验项目中没有。

后续项目的 CLI 演示:在终端中运行命令查询英国议会数据

uk-parliament-data-mcp 的 CLI 演示——请在那里安装并运行。


✨ 项目缘起

议会数据是公开的——但分散在许多 API 中。本项目将这些端点封装为 MCP 工具,让 GitHub Copilot、Claude Desktop 等助手以及其他 MCP 客户端能够:

优势含义
🎯 基于事实的回答回答取自 parliament.uk 官方 API,而非仅凭模型记忆
🔗 来源透明每个有用的回答都可以列出所用的 API URL
⚡ 覆盖广泛议员、法案、投票、委员会、Hansard、质询、日历、法定文书、条约、利益申报……
🧩 适用于支持 MCP 的环境VS Code Copilot Chat(Agent 模式)、Claude Desktop 和其他 MCP 宿主

免责声明: 非官方独立项目。并非由英国议会创建、认可或支持。数据来自公开的议会开发者 API。


🚀 快速开始

1. 前置条件
2. 克隆
git clone https://github.com/chrisbrooksbank-parliament/opendata-mcp-lab.git
cd opendata-mcp-lab
3. 将 MCP 主机指向服务

VS Code — 命令面板 → MCP: Add Server → Command (stdio):

dotnet run --project C:\code\opendata-mcp-lab\OpenData.Mcp.Server\OpenData.Mcp.Server.csproj

(请调整为你的克隆目录路径。)

Claude Desktop — 编辑 claude_desktop_config.json(UTF-8),然后完全重启 Claude:

{
  "mcpServers": {
    "opendata-server": {
      "command": "dotnet",
      "args": [
        "run",
        "--project",
        "C:\\code\\opendata-mcp-lab\\OpenData.Mcp.Server\\OpenData.Mcp.Server.csproj"
      ]
    }
  }
}
4. 正确开始会话

为获得最佳效果,请始终以会话提示词开头(或说 "Hello Parliament")。

📋 必需的系统提示词(点击展开)
You are a helpful assistant that answers questions using only data from UK Parliament MCP servers.

When the session begins, introduce yourself with a brief message such as:

"Hello! I’m a parliamentary data assistant. I can help answer questions using official data from the UK Parliament MCP APIs. Just ask me something, and I’ll fetch what I can — and I’ll always show you which sources I used."

When responding to user queries, you must:

Only retrieve and use data from the MCP API endpoints this server provides.

Avoid using any external sources or inferred knowledge.

After every response, append a list of all MCP API URLs used to generate the answer.

If no relevant data is available via the MCP API, state that clearly and do not attempt to fabricate a response.

Convert raw data into human-readable summaries while preserving accuracy, but always list the raw URLs used.

如需断开连接但保留聊天上下文,请说:"Goodbye Parliament"。或者直接开始新聊天。

试试:

What is happening now in the House of Commons?

🗺 可以询问的内容

领域问题示例
🔴 实时动态下议院现在发生了什么?上议院现在有什么议程?
👥 议员… 选区的议员是谁?利益事项、生平、投票记录、发言
📜 法案与立法法案的详情、阶段、修正案、出版物和新闻
🗳 投票与表决按主题、议员或表决 ID 查询下议院/上议院表决
🏛 委员会成员构成、会议、书面/口头证据、出版物
📖 Hansard 与议事程序辩论、Erskine May、口头质询、日历/非开会日
📍 选区搜索选区、选举结果
📄 官方文件法定文书、条约、法案
💎 透明度利益登记册及类别

🛠 设置

VS Code + Copilot Chat
  1. Ctrl+Shift+P → MCP: Add Server → Command: Stdio
  2. 输入上文的 dotnet run --project … 命令
  3. MCP: List Servers → 启动服务
  4. 打开 Copilot Chat → Agent 模式 → 启用此服务的工具
  5. 粘贴系统提示词(或输入 Hello Parliament),然后提问
  6. 根据提示批准工具/权限请求
Claude Desktop
  1. Settings → Developer → Edit Config
  2. 添加快速入门中所示的 mcpServers 配置块
  3. 保存为 UTF-8,完全退出 Claude,然后重新启动
  4. 在 Developer 下确认服务正在运行,然后使用系统提示词进行测试
可选:仓库 .mcp.json

此克隆包含一个示例 .mcp.json,指向已构建的服务二进制文件。除非你已构建 OpenData.Mcp.Server,否则建议使用 dotnet run --project …。


💡 提示词技巧

技巧用处
✅ 以系统提示词 / Hello Parliament 开头确保回答基于 MCP 数据,并要求提供来源 URL
🆕 卡住时新建聊天(+)清除循环和过时的上下文
🔗 “Show me the API URL you just used.”重新显示引用,便于核实
🧠 跨院问题例如:“切姆斯福德在下议院或上议院中被提到过吗?”
🧾 “Show me the JSON from the last MCP call.”调试原始负载

预期的引用格式示例:

https://members-api.parliament.uk/api/Members/Search?Name=…


💬 提示词示例

实时动态
  • 现在两院都在发生什么?
  • 下议院 / 上议院目前在进行什么?
议员
  • 向我展示基尔·斯塔默爵士的利益事项
  • 鲍里斯·约翰逊是谁?/ 1471 号议员是谁?
  • 查询某个议员 ID 的生平、联系方式、利益事项、发言和投票记录
  • 查询 172 号议员的肖像 / 缩略图
法案
  • 最近有关渔业 / 环境的法案
  • 查询 425 号法案的详情、阶段、修正案、出版物和新闻
  • 法案类型、阶段目录、RSS 订阅源
投票
  • 搜索包含“refugee” / “climate” / “brexit”的下议院表决
  • 按 ID 查询下议院或上议院表决;按党派分组查看结果
委员会
  • 有关女性议题 / 医疗保健的委员会
  • 查询某个委员会 ID 的会议、成员、书面及口头证据
程序、议事录、日历
  • 搜索《埃斯金·梅》中的权杖
  • 口头质询时段;按主题和日期范围搜索议事录
  • 政党、部门、答复机构
  • 下议院日历;非开会日
地点、文件、透明度
  • 名称包含“london”的选区;按选区 ID 查询选举结果
  • 关于港口的法定文书;提及道路的法案;涉及西班牙的条约
  • 利益类别和已公布的登记册
高级用户
  • 显示这条粘贴的 API 结果中的全部数据:{…}
  • 显示上一次 MCP 调用的 JSON / API URL
  • 环境部成员 172 提交的法案
  • 两个日期之间关于气候变化的委员会会议

🏗 此仓库包含的内容

opendata-mcp-lab/
├── OpenData.Mcp.Server/     # .NET MCP server (stdio tools)
│   ├── Tools/               # Members, Bills, Votes, Hansard, …
│   └── Context/             # API shape notes for tools
├── context/                 # Shared API context for LLMs
├── mcp-demo.gif             # MCP assistant demo
├── cli-demo.gif             # CLI demo (successor project only)
└── README.md

技术栈: .NET 9 · MCP stdio 传输 · 官方议会 HTTP API

**此处不包含:**完整的 CLI、PyPI 打包,以及较新的宿主集成——这些仅在
uk-parliament-data-mcp 中提供。


📌 开发工作已转移

此仓库历史 .NET 实验项目 / 参考 MCP 服务
新开发请前往github.com/ChrisBrooksbank/uk-parliament-data-mcp
CLI仅在后继仓库中提供
软件包PyPI:uk-parliament-mcp(后继项目)

针对这个实验项目提交的问题和 PR,仍可能对 .NET 相关说明有所帮助,但新功能的主要开发已转至新项目。


🤝 贡献与反馈

欢迎提出想法、纠正内容和 API 覆盖建议。对于积极维护的项目(包括 CLI),请在后继仓库中提交问题或 PR。


为好奇、监督和更完善的议会质询而构建——由公开开放数据提供支持。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。