mcpField
U
uk-parliament-commonsvotes

uk-parliament-commonsvotes

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

关于 uk-parliament-commonsvotes

面向 UK Parliament Commons Votes 数据查询的 MCP 服务,提供分组、筛选和投票记录工具,适用于议会分析及公民科技应用。

主要功能

  1. 01以 JSON 或 XML 获取表决详情
  2. 02按议员和日期筛选表决
  3. 03查询议员投票记录
  4. 04按党派分组表决结果
  5. 05获取搜索结果总数

适用场景

  1. 01总结 Commons 表决及结果
  2. 02分析议员投票历史
  3. 03监测公民科技中的表决趋势
  4. 04导出表决数据用于报告

MCP 相关

向 MCP 客户端提供 UK Parliament Commons Votes API 查询工具,包括表决详情、搜索和投票记录;支持 stdio 传输。

配置

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

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

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

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

工具

5

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

参数类型必填说明
formatstring是xml 或 json
divisionIdnumber|string是要返回记录的分区 ID 号

详细介绍

MCP Compatible AI Agent Ready

英国议会下议院表决 MCP 服务

概要

此 MCP 服务通过模型上下文协议,提供对英国议会下议院表决数据的结构化访问。 它支持 AI Agent 通过由 API 提供支持的工具检索分组表决和投票记录,为自动化和分析提供可靠的数据访问。 开发者可以通过 stdio 传输方式集成此 MCP 服务,以访问分组表决详情、议员投票历史和搜索结果。 此服务提供的工具与下议院表决 API 直接对应,便于 AI Agent 和开发者工具快速、一致地查询数据。

功能

  • 按分组表决 ID 获取下议院分组表决详情,支持 JSON 或 XML 格式。
  • 根据议员、日期和分组表决编号等筛选条件搜索分组表决。
  • 获取议员投票记录和按党派分组的汇总信息。
  • 以一致的封装格式保留上游响应,供下游工具和 AI Agent 使用。

可用工具

ukpcv_division_get_by_id

返回一项分组表决。

参数:

  • divisionId (number, path) – 分组表决 ID。
  • format (string, path) – xml 或 json。
ukpcv_divisions_grouped_by_party

返回按党派分组的分组表决结果。

参数:

  • format (string, path) – xml 或 json。
  • queryParameters.searchTerm (string, query)
  • queryParameters.memberId (number, query)
  • queryParameters.includeWhenMemberWasTeller (boolean, query)
  • queryParameters.startDate (string, query) – yyyy-MM-dd。
  • queryParameters.endDate (string, query) – yyyy-MM-dd。
  • queryParameters.divisionNumber (number, query)
ukpcv_divisions_member_voting

返回一名议员的投票记录。

参数:

  • format (string, path) – xml 或 json。
  • queryParameters.memberId (number, query) – 必填。
  • queryParameters.skip (number, query)
  • queryParameters.take (number, query)
  • queryParameters.searchTerm (string, query)
  • queryParameters.includeWhenMemberWasTeller (boolean, query)
  • queryParameters.startDate (string, query) – yyyy-MM-dd。
  • queryParameters.endDate (string, query) – yyyy-MM-dd。
  • queryParameters.divisionNumber (number, query)
ukpcv_divisions_search

返回分组表决列表。

参数:

  • format (string, path) – json 或 xml。
  • queryParameters.skip (number, query)
  • queryParameters.take (number, query)
  • queryParameters.searchTerm (string, query)
  • queryParameters.memberId (number, query)
  • queryParameters.includeWhenMemberWasTeller (boolean, query)
  • queryParameters.startDate (string, query) – yyyy-MM-dd。
  • queryParameters.endDate (string, query) – yyyy-MM-dd。
  • queryParameters.divisionNumber (number, query)
ukpcv_divisions_search_total_results

返回结果总数。

参数:

  • format (string, path) – json 或 xml。
  • queryParameters.searchTerm (string, query)
  • queryParameters.memberId (number, query)
  • queryParameters.includeWhenMemberWasTeller (boolean, query)
  • queryParameters.startDate (string, query) – yyyy-MM-dd。
  • queryParameters.endDate (string, query) – yyyy-MM-dd。
  • queryParameters.divisionNumber (number, query)

输出示例

{
  "status": 200,
  "data": {
    "items": [
      {
        "divisionId": 1234,
        "title": "Finance Bill - Third Reading",
        "divisionNumber": 15,
        "date": "2026-03-10"
      }
    ],
    "totalResults": 1
  },
  "upstream_path": "/data/divisions.json/search",
  "retrieved_at": "2026-03-11T10:00:00.000Z"
}

快速开始

使用 npx 运行 MCP 服务:

npx -y -p @darkhorseone/mcp-server-uk-parliament-commonsvotes mcp-server-uk-parliament-commonsvotes

MCP 配置

stdio 传输方式的 mcpServers 配置示例:

{
  "mcpServers": {
    "uk-parliament-commonsvotes": {
      "command": "npx",
      "args": ["-y", "-p", "@darkhorseone/mcp-server-uk-parliament-commonsvotes", "mcp-server-uk-parliament-commonsvotes"],
      "env": {
        "UKPCV_API_BASE_URL": "https://commonsvotes-api.parliament.uk",
        "UKPCV_REQUEST_TIMEOUT_MS": "10000"
      }
    }
  }
}

使用示例

  • 以 JSON 格式按 ID 获取一项分组表决。
  • 搜索某位议员在指定日期范围内参与的分组表决。
  • 获取议员的投票记录和分页结果。
  • 在获取分页结果前,先查询搜索结果总数。

使用场景

  • AI Agent 汇总下议院分组表决及结果。
  • 政治分析工具追踪议员投票历史。
  • 公民科技平台监测分组表决趋势。
  • 自动化工作流导出分组表决数据以生成报告。

数据源

英国议会下议院表决 API https://commonsvotes-api.parliament.uk/

安装

使用 npx 直接运行:

npx -y -p @darkhorseone/mcp-server-uk-parliament-commonsvotes mcp-server-uk-parliament-commonsvotes

或者在仓库根目录通过 pnpm 安装:

pnpm install

运行(HTTP 代理服务)

先构建,再启动:

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

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

UKPCV_HTTP_PORT=8787 pnpm --filter @darkhorseone/mcp-server-uk-parliament-commonsvotes run start:http

已发布的软件包命令:

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

如果 shell 无法解析二进制文件(显示“command not found”),请直接运行 HTTP 入口点:

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

健康检查:

curl http://127.0.0.1:8787/healthz

许可证

MIT 许可证

MCP 元数据

协议:Model Context Protocol 传输方式:stdio 工具:ukpcv_division_get_by_id、ukpcv_divisions_grouped_by_party、ukpcv_divisions_member_voting、ukpcv_divisions_search、ukpcv_divisions_search_total_results

评论

支持 Markdown

第一次接触 MCP?

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

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