立法数据服务器

MCP服务器连接AI助手与巴西众议院开放数据API,提供62种工具实时查询联邦立法数据。

  • by cristianoaredes
  • TypeScript
  • 混合部署
  • 2 星标
  • 更新于
在 GitHub 查看 cristianoaredes/mcp-camara

使用说明

巴西众议院MCP服务器🇧🇷

模型上下文协议(MCP)服务器,将Claude、Cursor、Windsurf和其他人工智能助手连接到巴西众议院,开放数据API-62个工具,涵盖议员、法案、投票、委员会、政党等。

英语 | 葡萄牙语


英语

这是什么?

mcp-camara 是一个 模型上下文协议服务器 将任何兼容MCP的AI助手连接到 巴西众议院(Câmara dos Reputados)开放数据API配置后,您的人工智能助手可以实时回答有关巴西联邦立法的自然语言问题-无需API密钥,无需额外账户,无需任何费用。

问这样的问题:

  • “给我看看2024年以来的所有税收改革法案”
  • “220593议员最近的开支是多少?”
  • “两党是如何就PEC 45/2019进行投票的?”
  • “列出玛丽亚·桑托斯议员所属的委员会”

服务器自动处理身份验证、缓存、速率限制和数据格式化。


快速安装

npx @aredes.me/mcp-camara

或全局安装:

npm install -g @aredes.me/mcp-camara

通过Smithery(克劳德桌面一键安装):

npx -y @smithery/cli install @aredes.me/mcp-camara --client claude

配置

克劳德桌面版

添加 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):

{
  "mcpServers": {
    "camara": {
      "command": "npx",
      "args": ["@aredes.me/mcp-camara"]
    }
  }
}

重新启动Claude Desktop,然后问: “列出圣保罗的5名代表” 以验证。

光标IDE

在光标MCP设置中:

{
  "mcpServers": {
    "camara": {
      "command": "npx",
      "args": ["@aredes.me/mcp-camara"]
    }
  }
}

Windsurf IDE

{
  "mcpServers": {
    "camara": {
      "command": "npx",
      "args": ["@aredes.me/mcp-camara"]
    }
  }
}

Continue.dev

{
  "mcpServers": [
    {
      "name": "camara",
      "command": "npx",
      "args": ["@aredes.me/mcp-camara"]
    }
  ]
}

Cloudflare Workers(远程/生产)

部署一个全局分布式实例,并将任何MCP客户端指向SSE端点:

https://mcp-camara.cristianoaredes.workers.dev/sse

62可用工具

代表----15种工具

工具 说明
deputados_listar 使用过滤器列出代表:姓名、政党、州(UF)、立法机构
deputados_obter 完整的代理人简介:传记、联系方式、当前状态
deputados_despesas 费用和报销明细
deputados_discursos 现场发言和议会发言
deputados_eventos 活动参与和出席记录
deputados_frentes 议会阵线和核心小组成员
deputados_orgaos 议员参与的委员会和立法机构
deputados_profissoes 申报职业
deputados_ocupacoes 专业职业
deputados_historico 立法历史和过去的授权
deputados_foto 官方照片URL
deputados_mesa 董事会任职情况
deputados_liderancas 领导职位
deputados_cargos 当前和过去的角色
deputados_votacoes 个人投票记录

提案(法案、修正案)——10种工具

工具 说明
proposicoes_listar 使用过滤器搜索账单:类型(PL、PEC等)、年份、作者、状态
proposicoes_obter 完整的提案细节,包括完整的文本和当前状态
proposicoes_autores 作者和合著者
proposicoes_relacionadas 相关命题和依赖关系
proposicoes_votacoes 对某一提案进行的所有投票
proposicoes_tramitacoes 完整的处理历史和当前的立法阶段
proposicoes_temas 主题分类
proposicoes_arquivos 随附文件和档案
proposicoes_referencias 法律参考和引用
proposicoes_tipos 所有立法提案类型的参考清单

投票环节——4个工具

工具 说明
votacoes_listar 列出带有日期和提案过滤器的投票会话
votacoes_obter 详细结果:批准状态、投票计数
votacoes_votos 个别代表票:赞成、反对、弃权、缺席
votacoes_orientacoes 党领导人投票建议(Party leadership voting recommendations)

委员会(Órgãos)----5个工具

工具 说明
orgaos_listar 列出所有委员会、专门委员会和立法机构
orgaos_obter 委员会细节:管辖权和组成
orgaos_membros 当前和历史成员
orgaos_eventos 委员会会议、听证会和会议
orgaos_votacoes 委员会投票

政党----6种工具

工具 说明
partidos_listar 列出所有已注册的政党
partidos_obter 政党详情:意识形态、领导层、历史
partidos_membros 现有成员和附属机构
blocos_listar 列出议会集团和联盟
blocos_obter 集团组成和成员党
partidos_liderancas 党的领导职务

立法活动——7个工具

工具 说明
eventos_listar 使用日期和类型筛选器列出所有立法事件
eventos_obter 活动详情:地点、参与者、日程安排
eventos_orgaos 由特定委员会或机构组织的活动
eventos_deputados 有特定副手参与的活动
eventos_pauta 活动议程和讨论项目
eventos_situacoes 参考:事件状态代码(已计划、正在进行、已完成、已取消)
eventos_tipos 参考:立法事件的类型

参考数据——15个工具

工具 说明
referencias_legislaturas 所有有日期范围的立法机构
referencias_situacoes_deputado 副状态代码(活动、许可等)
referencias_situacoes_evento 事件状态分类
referencias_situacoes_proposicao 提案状态代码
referencias_tipos_proposicao 立法提案类型(PL、PEC、MPV等)
referencias_tipos_orgao 立法机构的类型
referencias_tipos_evento 事件类型分类
referencias_tipos_votacao 投票类型和程序
referencias_escolaridades 教育程度
referencias_ufs 巴西各州和领地
referencias_municipios 按州划分的城市
referencias_situacoes_orgao 委员会状态代码
referencias_situacoes_membro 会员身份代码
referencias_cargos_orgao 委员会职位类型
referencias_tipos_lideranca 领导职位类型

需求

  • Node.js>=18.0.0
  • 任何兼容MCP的AI客户端(Claude Desktop、Cursor、Windsurf、Continue.dev等)
  • 不需要API密钥-Câmara API是免费和开放的

配置参考

所有设置都是可选的,并具有合理的默认值:

# Transport mode: stdio (default), http, or sse
MCP_TRANSPORT=stdio

# Port for http/sse mode
MCP_HTTP_PORT=3000

# Câmara API endpoint (default shown)
CAMARA_API_BASE_URL=https://dadosabertos.camara.leg.br/api/v2

# Cache: time-to-live in seconds (default: 3600)
MCP_CACHE_TTL=3600
MCP_DISABLE_CACHE=false

# Rate limiting
MCP_DISABLE_RATE_LIMIT=false

# Logging: DEBUG, INFO, WARN, ERROR (default: INFO)
LOG_LEVEL=INFO

Cloudflare员工部署

部署为全球分布式无服务器MCP服务器:

# 1. Install dependencies
npm install

# 2. Build
npm run build

# 3. Create KV namespaces (once)
npm run workers:kv:create

# 4. Deploy to production
npm run workers:deploy:prod

Workers功能:REST API端点、具有可配置TTL的LRU缓存、KV-based速率限制、用于REST端点的可选API密钥授权、自动生成的OpenAPI规范 /openapi.json.


开发设置

git clone https://github.com/cristianoaredes/mcp-camara.git
cd mcp-camara
npm install
npm run build
npm test

在HTTP模式下运行以进行本地测试:

MCP_TRANSPORT=http MCP_HTTP_PORT=3000 node build/lib/bin/mcp-camara.js

然后:

# Health check
curl -i http://localhost:3000/health

# List all tools
curl http://localhost:3000/mcp -X POST -H "Content-Type: application/json" \
  -d '{"jsonrpc": "2.0", "id": 1, "method": "tools/list"}'

# Call a tool
curl http://localhost:3000/mcp -X POST -H "Content-Type: application/json" \
  -d '{"jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": {"name": "proposicoes_listar", "arguments": {"siglaTipo": "PL", "ano": 2024}}}'

用例

  • 立法追踪 --跟踪法案(PL、PEC、MPV)从介绍到最终投票
  • 副研究员 --调查投票记录、费用、演讲和委员会活动
  • 数据新闻 --提取结构化的立法数据用于调查性报道
  • 学术研究 --分析投票模式、政党凝聚力和立法行为
  • 公民透明度工具 --监督议员的开支和议会活动
  • 公民聊天机器人 --构建人工智能助手,回答有关巴西立法的问题

文档

指南 说明
配置指南 环境变量和所有设置
用法示例 每个工具类别的实例
API 文档 完整的工具参考
Cloudflare部署 逐步部署Workers
HTTP传输 HTTP服务器文档
苏格兰和南方能源公司运输 服务器发送事件传输
故障排除 常见问题和解决方案

许可证

麻省理工学院——见 许可证.

数据由 巴西众议院开放数据API,这是免费和公开的。

建于 模型上下文协议 通过Anthropic。


作者

通过 克里斯蒂亚诺·阿雷德斯


葡萄牙语

那是什么?

mcp-camara 是一个 servidor模型上下文协议(MCP) 将任何兼容 MCP 的 AI 助手连接到 众议院开放数据API设置后,您的人工智能助理可以实时用自然语言回答有关巴西联邦立法的问题,无需API密钥,无需注册,无需成本。

问题示例:

  • “显示所有2024年税收改革法案”
  • “议员220593最近的开支是多少?”
  • “每个政党如何在PEC 45/2019投票?”
  • “列出议员玛丽亚桑托斯所属的委员会”

服务器自动处理缓存,速率限制和数据格式。


快速安装

npx @aredes.me/mcp-camara

或全局安装:

npm install -g @aredes.me/mcp-camara

通过Smithery(Claude Desktop的一键安装):

npx -y @smithery/cli install @aredes.me/mcp-camara --client claude

配置

克劳德桌面版

编辑 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):

{
  "mcpServers": {
    "camara": {
      "command": "npx",
      "args": ["@aredes.me/mcp-camara"]
    }
  }
}

重新启动 Claude Desktop 并测试: 圣保罗5名议员名单.

Cursor、Windsurf、Continue.dev

JSON 配置是相同的 — 只适应字段 mcpServers 每个IDE


要求

  • Node.js>=18.0.0
  • 任何 MCP 客户端(Claude Desktop、Cursor、Windsurf、Continue.dev等)
  • 无需 API 密钥 — Camera API 是免费且公开的

许可证

麻省 理工 学院 - 道路 许可证.

数据由 众议院开放数据API.


作者

通过 克里斯蒂亚诺·阿雷德斯