fec-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@fec-mcpWhat are the current contribution limits for PACs?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
fec-mcp
An MCP (Model Context Protocol) server for federal (and optionally state) campaign-finance rules, regulations, and data covering PACs, party committees, and candidates.
It provides two complementary tool families:
Rulebook search -- full-text search over official campaign-finance PDF guides. Federal (FEC) guides (campaign guides for candidates, party committees, and PACs, plus the contribution-limits chart) are the built-in baseline; state guides can optionally be added per state (see below). This is the authoritative source for compliance questions and dollar limits: results are quoted directly from the PDFs with source + page citations, not hardcoded or model-recalled figures.
Live OpenFEC data -- real-time lookups against the public OpenFEC API for candidates, committees, filings, disbursements, financial totals, elections, and the reporting calendar. This covers federal elections only -- OpenFEC has no state-level data.
Setup
1. Install
python3 -m venv .venv
source .venv/bin/activate
pip install -e .2. Add the FEC rulebook PDFs
Place the official FEC PDF guides in data/rulebooks/, for example:
The FEC's Campaign Guide for Congressional Candidates and Committees
The FEC's Campaign Guide for Political Party Committees
The FEC's Campaign Guide for Nonconnected Committees (PACs)
The current Contribution Limits chart
These are published on fec.gov under its Campaign Guides / Contribution Limits resources; grab the current versions from there (this repo does not bundle download links since they change over time -- verify you have the current cycle's documents).
Any PDF you drop in data/rulebooks/ is picked up automatically -- the
server builds a search index (cached in data/rulebooks/.index/) the first
time it starts and rebuilds it whenever files are added, removed, or
changed.
Optional: add state-level guides. Drop a state's official
campaign-finance PDFs into data/rulebooks/states/{state_code}/ (lowercase
two-letter USPS code, e.g. data/rulebooks/states/ca/) and they're indexed
the same way, tagged with that state as their jurisdiction. This is
entirely incremental -- add one state, several, or none; see
data/rulebooks/states/README.md for details. OpenFEC's live data tools
remain federal-only regardless.
3. Get an OpenFEC API key (optional but recommended)
Live OpenFEC lookups work out of the box with the shared DEMO_KEY, which
is heavily rate-limited. For real use, get a free key at
https://api.data.gov/signup/ and set it:
export FEC_API_KEY=your_key_here4. Configure your MCP client
For Claude Code / Claude Desktop, add to your MCP config:
{
"mcpServers": {
"fec": {
"command": "/absolute/path/to/FEC_MCP/.venv/bin/fec-mcp",
"env": {
"FEC_API_KEY": "your_key_here"
}
}
}
}Or run directly for local testing:
fec-mcpRelated MCP server: political-finance-mcp-server
Tools
Rulebook search (grounded in the PDFs you add):
Tool | Purpose |
| List which jurisdictions have PDFs loaded ("federal", state codes) |
| List loaded PDFs, page counts, and jurisdiction (optionally filtered) |
| Full-text search across loaded PDFs (optionally filtered by jurisdiction) |
| Read the full text of one page |
Live OpenFEC data (federal only):
Tool | Purpose |
| Candidate lookup and financials |
| PAC/party/campaign committee lookup, filings, financials |
| Itemized Schedule B disbursements (who a committee paid, and how much) |
| Cross-committee filing search |
| Election search by state/office/cycle |
| FEC reporting and election deadline dates |
Notes on scope
No hardcoded contribution limits or rule text. OpenFEC's live API has no endpoint for contribution limits or regulation text, and those figures change (limits are inflation-adjusted every two-year cycle) -- baking them into code risks going stale silently. Instead, this server searches the FEC's own PDFs you provide, so answers are always sourced to a specific document and page.
Not legal advice. Tool output should be treated as a research aid and cited back to its source (PDF page or OpenFEC record), not relied on as a substitute for consulting the FEC or legal counsel.
State coverage is opt-in and incomplete by default. Out of the box, only federal (FEC) rulebooks are loaded. A question about a specific state's rules will correctly come back empty/unanswerable unless that state's PDFs have been added under
data/rulebooks/states/{state_code}/-- the server won't substitute federal rules for state rules. Live OpenFEC data (candidates, committees, filings, disbursements) is federal only; there is no state-level equivalent here.
Demo
demo/ has a one-page Streamlit chat app over these same tools -- useful for
showing the project to someone without walking them through MCP client setup.
See demo/README.md.
Development
pip install -e ".[dev]"
pytestThis server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityDmaintenanceConnects the OpenFEC API to AI assistants for investigating US federal campaign finance through natural language conversations.1MIT
- AlicenseBqualityDmaintenanceMCP server giving AI agents access to US political finance data: campaign contributions, PAC spending, lobbying records, and voting behavior.61MIT
- Alicense-qualityAmaintenanceAccess FEC campaign finance data through MCP. Query data about candidates, money trails, and election filings. STDIO & Streamable HTTP.2462Apache 2.0
- AlicenseAqualityBmaintenanceMCP server providing access to U.S. government primary-source records, fact-checks, news search, and trackers, with cross-referenced entity data and source links.443MIT
Related MCP Connectors
OpenFEC MCP — Federal Election Commission campaign finance data
Access FEC campaign finance data. Query data about candidates, money trails, and election filings.
MCP server for nonprofit financials via ProPublica — IRS Form 990 data for 1.8M+ nonprofits.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/bsilha/FEC_MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server