mcpField
U
uk-parliament-questions-statements

uk-parliament-questions-statements

本地服务
github.com/DarkhorseOne法律与政务133 周前更新

关于 uk-parliament-questions-statements

该 MCP 服务面向议会研究和公民科技应用,通过 UK Parliament API 查询每日报告、书面质询和书面声明。支持按议员、日期、议院及答复状态筛选,也可按编号或日期与 UIN 获取记录。

主要功能

  1. 01按日期和议院列出每日报告
  2. 02按议员、日期和届期筛选书面质询
  3. 03按编号或日期与 UIN 获取质询
  4. 04筛选并获取书面声明

适用场景

  1. 01汇总书面质询和声明
  2. 02追踪不同届期的议会质询
  3. 03监测各部门发布的声明
  4. 04导出每日报告数据

MCP 相关

通过 MCP 向客户端提供查询 UK Parliament Questions and Statements API 的工具,支持 stdio 传输。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"nick-ma-uk-parliament-questions-statements": {
"command": "npx",
"args": [
"-y",
"@darkhorseone/mcp-server-uk-parliament-questions-statements"
]
}
}
}
启动命令npx -y @darkhorseone/mcp-server-uk-parliament-questions-statements

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@darkhorseone/mcp-server-uk-parliament-questions-statements1.0.1

工具

7

收录的工具列表 · 更新于 2 周前

参数类型必填说明
skipnumber|string否要跳过的记录数,默认为 0
takenumber|string否要获取的记录数,默认为 20
houseany否与指定议院相关的每日报告。默认为两院
dateTostring否报告日期为指定日期或之前的每日报告。日期格式为 yyyy-mm-dd
dateFromstring否报告日期为指定日期或之后的每日报告。日期格式为 yyyy-mm-dd

详细介绍

MCP Compatible AI Agent Ready

英国议会问题与声明 MCP 服务

摘要

此 MCP 服务使用模型上下文协议,提供对英国议会问题与声明数据的结构化访问。 它支持 AI Agent 通过由 API 支持的工具和数据访问功能获取每日报告、书面问题和书面声明。 开发者可以通过 stdio 传输集成此 MCP 服务,以搜索问题、按会话状态筛选并获取声明详情。 该服务提供的工具与问题和声明 API 直接对应,可用于可靠的自动化和 AI Agent 工作流。

功能

  • 按日期和议院筛选每日报告。
  • 按答复状态、议员和会话筛选书面问题。
  • 按 id 或日期/uin 获取书面问题和声明。
  • 在标准化封装中保留上游负载,供下游工具使用。

可用工具

list_daily_reports

返回每日报告列表。

参数:

  • dateFrom (string, query)
  • dateTo (string, query)
  • house (string, query) – 两院制 | 下议院 | 上议院
  • skip (number, query)
  • take (number, query)
list_written_questions

返回书面问题列表。

参数:

  • askingMemberId (number, query)
  • answeringMemberId (number, query)
  • tabledWhenFrom (string, query)
  • tabledWhenTo (string, query)
  • dateForAnswerWhenFrom (string, query)
  • dateForAnswerWhenTo (string, query)
  • answered (string, query) – 任意 | 已答复 | 未答复
  • answeredWhenFrom (string, query)
  • answeredWhenTo (string, query)
  • questionStatus (string, query) – 未答复 | 仅已答复 | 所有问题
  • includeWithdrawn (boolean, query)
  • expandMember (boolean, query)
  • correctedWhenFrom (string, query)
  • correctedWhenTo (string, query)
  • sessionStatus (string, query) – 当前 | 任意
  • searchTerm (string, query)
  • uIN (string, query)
  • answeringBodies (array:number, query)
  • members (array:number, query)
  • house (string, query) – 两院制 | 下议院 | 上议院
  • skip (number, query)
  • take (number, query)
get_written_question_by_id

返回一项书面问题。

参数:

  • id (number, path)
  • expandMember (boolean, query)
  • sessionStatus (string, query) – 当前 | 任意
get_written_question_by_date_and_uin

返回一项书面问题。

参数:

  • date (string, path)
  • uin (string, path)
  • expandMember (boolean, query)
  • sessionStatus (string, query) – 当前 | 任意
list_written_statements

返回书面声明列表。

参数:

  • madeWhenFrom (string, query)
  • madeWhenTo (string, query)
  • sessionStatus (string, query) – 当前 | 任意
  • searchTerm (string, query)
  • uIN (string, query)
  • answeringBodies (array:number, query)
  • members (array:number, query)
  • house (string, query) – 两院制 | 下议院 | 上议院
  • skip (number, query)
  • take (number, query)
  • expandMember (boolean, query)
get_written_statement_by_id

返回一项书面声明。

参数:

  • id (number, path)
  • expandMember (boolean, query)
  • sessionStatus (string, query) – 当前 | 任意
get_written_statement_by_date_and_uin

返回一项书面声明。

参数:

  • date (string, path)
  • uin (string, path)
  • expandMember (boolean, query)
  • sessionStatus (string, query) – 当前 | 任意

输出示例

{
  "status": 200,
  "data": {
    "items": [
      {
        "id": 12345,
        "uin": "12345",
        "title": "Example written question",
        "house": "Commons"
      }
    ],
    "totalResults": 1
  },
  "upstream_path": "/api/writtenquestions/questions",
  "retrieved_at": "2026-03-11T10:00:00.000Z"
}

快速开始

使用 npx 运行 MCP 服务:

npx -y -p @darkhorseone/mcp-server-uk-parliament-questions-statements mcp-server-uk-parliament-questions-statements

MCP 配置

stdio 传输的 mcpServers 配置示例:

{
  "mcpServers": {
    "uk-parliament-questions-statements": {
      "command": "npx",
      "args": ["-y", "-p", "@darkhorseone/mcp-server-uk-parliament-questions-statements", "mcp-server-uk-parliament-questions-statements"],
      "env": {
        "UPSTREAM_BASE_URL": "https://questions-statements-api.parliament.uk",
        "REQUEST_TIMEOUT_MS": "10000"
      }
    }
  }
}

使用示例

  • 按日期范围列出下议院的每日报告。
  • 按议员和会话状态搜索书面问题。
  • 按 id 或日期/uin 获取书面声明。
  • 按答复状态和议院筛选问题。

使用场景

  • AI Agent 汇总书面问题和声明。
  • 研究工具跟踪议会问题随时间的变化。
  • 公民科技平台监控各部门的声明。
  • 自动化工作流导出每日报告数据。

数据源

英国议会问题与声明 API https://questions-statements-api.parliament.uk

安装

使用 npx 直接运行:

npx -y -p @darkhorseone/mcp-server-uk-parliament-questions-statements mcp-server-uk-parliament-questions-statements

或者从仓库根目录使用 pnpm 安装:

pnpm install

运行(HTTP 代理服务器)

先构建,然后启动:

pnpm --filter @darkhorseone/mcp-server-uk-parliament-questions-statements run build
pnpm --filter @darkhorseone/mcp-server-uk-parliament-questions-statements run start:http

使用 UKP_HTTP_PORT 环境变量设置自定义 HTTP 端口(默认值:8787):

UKP_HTTP_PORT=8787 pnpm --filter @darkhorseone/mcp-server-uk-parliament-questions-statements run start:http

已发布的软件包命令:

npx -y -p @darkhorseone/mcp-server-uk-parliament-questions-statements -- mcp-server-uk-parliament-questions-statements-http

如果 shell 无法解析此可执行文件(“command not found”),请直接运行 HTTP 入口点:

npx -y -p @darkhorseone/mcp-server-uk-parliament-questions-statements -- node ./dist/http.js

健康检查:

curl http://127.0.0.1:8787/healthz

代理模式:

GET /proxy/<upstream-path>?<query>

示例:

curl "http://127.0.0.1:8787/proxy/api/writtenquestions/questions?searchTerm=health&take=10"

许可证

MIT 许可证

MCP 元数据

协议:Model Context Protocol 传输方式:stdio 工具:list_daily_reports, list_written_questions, get_written_question_by_id, get_written_question_by_date_and_uin, list_written_statements, get_written_statement_by_id, get_written_statement_by_date_and_uin

评论

支持 Markdown

第一次接触 MCP?

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

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