Analyze FEC (Federal Election Commission) campaign finance filings. Use when working with FEC filing IDs, campaign finance data, contributions, disbursements, or political committee financial reports. Provides the proper workflow for the fec-api MCP tools (search_committees, get_filings).
View on GitHubSelect agents to install to:
npx add-skill https://github.com/hodgesmr/agent-fecfile/blob/main/skills/fecfile/SKILL.md -a claude-code --skill fecfileInstallation paths:
.claude/skills/fecfile/# FEC Filing Analysis This skill enables analysis of Federal Election Commission campaign finance filings. ## Requirements - [uv](https://docs.astral.sh/uv/) must be installed - Python 3.9+ Dependencies are automatically installed when running scripts with `uv run`. ## First-Time Check The first time this skill is invoked in a session, verify that `uv` is installed by running: ```bash uv --version ``` If this command fails or `uv` is not found, do not proceed. Instead, inform the user that `uv` is required but not installed, and direct them to the installation guide: https://docs.astral.sh/uv/getting-started/installation/ ## Quick Start **Always start by checking the filing size:** ```bash uv run scripts/fetch_filing.py <FILING_ID> --summary-only ``` Based on the summary, decide how to proceed—see **Handling Large Filings** below for filtering and streaming strategies. Small filings can be fetched directly; large filings require pre-filtering or streaming. **Fetching data:** ```bash uv run scripts/fetch_filing.py <FILING_ID> # Full filing (small filings only) uv run scripts/fetch_filing.py <FILING_ID> --schedule A # Only contributions uv run scripts/fetch_filing.py <FILING_ID> --schedule B # Only disbursements uv run scripts/fetch_filing.py <FILING_ID> --schedules A,B # Multiple schedules ``` The `fecfile` library is installed automatically by uv. ## Field Name Policy **IMPORTANT**: Do not guess at field names. Before referencing any field names in responses: 1. For form-level fields (summary data, cash flow, totals): Read `references/FORMS.md` 2. For itemization fields (contributors, payees, expenditures): Read `references/SCHEDULES.md` These files contain the authoritative field mappings. If a field name isn't documented there, verify it exists in the actual JSON output before using it. ## Handling Large Filings FEC filings vary enormously in size. Small filings (like state party monthly reports) may have only a few