O

OpenFEC竞选财务工具

@psalzman/mcp-openfec
0 Stars 367 次浏览 psalzman 更新于 2026-08-23

通过OpenFEC API启用与联邦选举委员会数据的交互,通过模型上下文协议提供对竞选财务信息的访问,例如候选人、委员会、捐款和支出信息。

该服务暂未提供标准配置,请参考 README 手动接入

服务介绍

MCP OpenFEC 服务器

这是一个模型上下文协议(MCP)服务器,通过OpenFEC API提供联邦选举委员会(FEC)竞选财务数据的访问。

功能

  • 按姓名、州或职位搜索候选人
  • 获取详细的候选人信息和财务数据
  • 访问委员会信息
  • 查看个人捐款
  • 跟踪独立支出
  • 访问FEC文件和审计案件
  • 下载批量数据

要求

  • Node.js (v16 或更高版本)
  • 一个 OpenFEC API 密钥 (在这里获取)

安装

  1. 克隆仓库:
git clone https://github.com/psalzman/mcp-openfec
cd mcp-openfec
  1. 安装依赖项:
npm install
  1. 在根目录下创建一个 .env 文件,并添加您的 OpenFEC API 密钥:
OPENFEC_API_KEY=your_api_key_here
  1. 构建服务器:
npm run build

配置

要将此 MCP 服务器与 Claude Desktop 一起使用:

  1. 找到您的 Claude Desktop 配置文件:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
    • Linux: ~/.config/Claude/claude_desktop_config.json
  2. 将以下配置添加到文件中:

{
  "mcpServers": {
    "openfec": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-openfec/build/server.js"],
      "env": {
        "OPENFEC_API_KEY": "your_api_key_here"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

重要配置说明:

  1. /absolute/path/to/mcp-openfec 替换为您实际克隆仓库的位置
  2. 使用绝对路径,而不是相对路径
  3. disabled 设置为 false 以启用服务器
  4. 为了安全起见,请保持 autoApprove 为空数组
  5. env 部分添加您的 OpenFEC API 密钥

可用工具

  1. get_candidate: 获取候选人的详细信息
  2. get_candidate_financials: 获取候选人的财务数据
  3. search_candidates: 按姓名或其他标准搜索候选人
  4. get_committee: 获取委员会的详细信息
  5. get_candidate_contributions: 获取候选人的个人捐款
  6. get_filings: 检索官方 FEC 文件
  7. get_independent_expenditures: 获取独立支出
  8. get_electioneering: 获取竞选宣传通信
  9. get_party_coordinated_expenditures: 获取政党协调支出
  10. get_communication_costs: 获取公司/工会的通讯费用
  11. get_audit_cases: 获取 FEC 审计案件和调查结果
  12. get_bulk_downloads: 获取批量数据下载链接

速率限制

服务器实现了速率限制,以符合 OpenFEC API 指南:

  • 每小时 1000 次请求
  • 超过此限制的请求将收到错误响应

开发

要修改服务器:

  1. src 目录中的 TypeScript 文件进行更改
  2. 重新构建服务器:
npm run build

许可证

本项目采用 BSD 3-Clause 许可证——这是一种允许性开源许可证,确保用户拥有最大自由度的同时满足归属要求。该许可证允许您:

  • 商业使用代码
  • 修改代码
  • 分发代码
  • 私人使用代码

有三个主要条件:

  1. 必须包含原始版权声明
  2. 必须在分发中包含许可文本
  3. 未经许可,不得使用贡献者的名字来为衍生产品背书

BSD 3-Clause 许可证广泛应用于学术和商业环境中,提供了许可性和保护贡献者之间的良好平衡。

贡献

  1. 叉取仓库
  2. 创建你的功能分支 (git checkout -b feature/my-new-feature)
  3. 提交你的更改 (git commit -am 'Add some feature')
  4. 推送到分支 (git push origin feature/my-new-feature)
  5. 创建一个新的 Pull Request

版权

版权所有 (c) 2025, Phillip Salzman & Foundry Peak, LLC. 保留所有权利。网站: http://foundrypeak.com/

有关许可证详细信息,请参阅 LICENSE 文件。

相关 MCP 服务