drio
Open app

MCP OpenFEC Server

Source

A Model Context Protocol (MCP) server that provides access to Federal Election Commission (FEC) campaign finance data through the OpenFEC API.

Catalog onlyCatalog onlySTDIO

Overview

MCP OpenFEC is a Model Context Protocol (MCP) server that provides access to Federal Election Commission (FEC) campaign finance data through the OpenFEC API.

To use MCP OpenFEC, clone the repository from GitHub, install the necessary dependencies, and configure your OpenFEC API key in a .env file. Then, build and run the server to access campaign finance data.

  • Search for candidates by name, state, or office - Get detailed candidate information and financial data - Access committee information and view individual contributions - Track independent expenditures and access FEC filings - Download bulk data for analysis
  1. Researchers analyzing campaign finance trends
  2. Journalists investigating political contributions
  3. Developers building applications that require access to FEC data

Add to your AI client

Use these steps to connect MCP OpenFEC Server in Cursor, Claude, VS Code, and other MCP-compatible apps. The same JSON appears in the Use with menu above for one-click copy.

Cursor

Add this to your .cursor/mcp.json file in your project root, then restart Cursor.

.cursor/mcp.json

{
  "mcpServers": {
    "mcp-openfec-psalzman": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-mcp-openfec-psalzman"
      ]
    }
  }
}

Claude Desktop

Add this server entry to the mcpServers object in your Claude Desktop config, then restart the app.

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)

{
  "mcpServers": {
    "mcp-openfec-psalzman": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-mcp-openfec-psalzman"
      ]
    }
  }
}

Claude Code

Add this to your project's .mcp.json file. Claude Code will detect it automatically.

.mcp.json (project root)

{
  "mcpServers": {
    "mcp-openfec-psalzman": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-mcp-openfec-psalzman"
      ]
    }
  }
}

VS Code (Copilot)

Add this to your .vscode/mcp.json file. Requires the GitHub Copilot extension with MCP support enabled.

.vscode/mcp.json

{
  "servers": {
    "mcp-openfec-psalzman": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-mcp-openfec-psalzman"
      ]
    }
  }
}

Windsurf

Add this to your Windsurf MCP config file, then restart Windsurf.

~/.codeium/windsurf/mcp_config.json

{
  "mcpServers": {
    "mcp-openfec-psalzman": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-mcp-openfec-psalzman"
      ]
    }
  }
}

Cline

Open Cline settings, navigate to MCP Servers, and add this server configuration.

Cline MCP Settings (via UI)

{
  "mcpServers": {
    "mcp-openfec-psalzman": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-mcp-openfec-psalzman"
      ]
    }
  }
}

FAQ

What are the requirements to run MCP OpenFEC?

You need Node.js (v16 or higher) and an OpenFEC API Key.

Is there a rate limit for API requests?

Yes, the server implements a rate limit of 1000 requests per hour.

Can I modify the server?

Yes, you can modify the server by changing the TypeScript files in the `src` directory and rebuilding it.7:["$","div",null,{"className":"container mx-auto flex flex-col gap-4","children":["$L26","$L27",["$","$L28",null,{"currentProject":{"id":1237,"uuid":"3ba08d5c-04c1-4de4-89ee-f87282eec655","name":"mcp-openfec","title":"MCP OpenFEC Server","description":"A Model Context Protocol (MCP) server that provides access to Federal Election Commission (FEC) campaign finance data through the OpenFEC API.","avatar_url":"https://avatars.githubusercontent.com/u/28785074?v=4","created_at":"2025-02-20T14:08:30.330Z","updated_at":"2025-02-23T07:20:28.491Z","status":"created","author_name":"psalzman","author_avatar_url":"https://avatars.githubusercontent.com/u/28785074?v=4","tags":"mcp-openfec,campaign-finance,openfec-api","category":"research-and-data","is_featured":false,"sort":1,"url":"https://github.com/psalzman/mcp-openfec","target":"_self","content":"$29","summary":"$2a","img_url":null,"type":null,"metadata":null,"user_uuid":null,"tools":null,"sse_url":null,"sse_provider":null,"sse_params":null,"is_official":false,"server_command":null,"server_params":null,"server_config":null,"allow_call":false,"is_innovation":false,"is_dxt":false,"dxt_manifest":null,"dxt_file_url":null,"is_audit":false},"randomProjects":[],"currentServerKey":"$undefined"}]]}]