MCP OpenFEC Server
A Model Context Protocol (MCP) server that provides access to Federal Election Commission (FEC) campaign finance data through the OpenFEC API.
Features
- Search for candidates by name, state, or office
- Get detailed candidate information and financial data
- Access committee information
- View individual contributions
- Track independent expenditures
- Access FEC filings and audit cases
- Download bulk data
Requirements
- Node.js (v16 or higher)
- An OpenFEC API Key (Get one here)
Installation
- Clone the repository:
- Install dependencies:
- Create a
.env
file in the root directory and add your OpenFEC API key:
- Build the server:
Configuration
To use this MCP server with Claude Desktop:
- Locate your Claude Desktop configuration file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
- Add the following configuration to the file:
Important configuration notes:
- Replace
/absolute/path/to/mcp-openfec
with the actual path where you cloned the repository - Use absolute paths, not relative paths
- Set
disabled
tofalse
to enable the server - Keep
autoApprove
as an empty array for security - Add your OpenFEC API key in the
env
section
Available Tools
get_candidate
: Get detailed information about a candidateget_candidate_financials
: Get financial data for a candidatesearch_candidates
: Search for candidates by name or other criteriaget_committee
: Get detailed information about a committeeget_candidate_contributions
: Get individual contributions for a candidateget_filings
: Retrieve official FEC filingsget_independent_expenditures
: Get independent expendituresget_electioneering
: Get electioneering communicationsget_party_coordinated_expenditures
: Get party coordinated expendituresget_communication_costs
: Get corporate/union communication costsget_audit_cases
: Get FEC audit cases and findingsget_bulk_downloads
: Get links to bulk data downloads
Rate Limiting
The server implements rate limiting to comply with OpenFEC API guidelines:
- 1000 requests per hour
- Requests exceeding this limit will receive an error response
Development
To modify the server:
- Make changes to the TypeScript files in the
src
directory - Rebuild the server:
License
This project is licensed under the BSD 3-Clause License - a permissive open source license that ensures maximum freedom for users while maintaining attribution requirements. The license allows you to:
- Use the code commercially
- Modify the code
- Distribute the code
- Use the code privately
With three main conditions:
- You must include the original copyright notice
- You must include the license text in distributions
- You cannot use the names of contributors to endorse derived products without permission
The BSD 3-Clause License is widely used in academic and commercial settings, offering a good balance between permissiveness and protecting contributors.
Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin feature/my-new-feature
) - Create a new Pull Request
Copyright
Copyright (c) 2025, Phillip Salzman & Foundry Peak, LLC. All rights reserved. Web: http://foundrypeak.com/
For licensing details, see the LICENSE file.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
通过 OpenFEC API 实现与联邦选举委员会数据的交互,通过模型上下文协议提供对候选人、委员会、捐款和支出等竞选财务信息的访问。
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityEnables interaction with the CoinGecko Pro API to access cryptocurrency data including price history and market metrics through both MCP and OpenAI function calling.Last updated -9MIT License
- AsecurityFlicenseAqualityA Model Context Protocol server that provides tools to search and retrieve economic data series from the Federal Reserve Economic Data (FRED) API.Last updated -868
- AsecurityFlicenseAqualityConnects to the US Treasury's Fiscal Data API, enabling users to fetch specific treasury statements, access historical data, and generate formatted reports.Last updated -11814
- AsecurityFlicenseAqualityProvides tools to get financial data (stock prices, company information) and generate financial visualizations through the Model Context Protocol.Last updated -104