@pipeworx/us-race-matchups

Connect: https://pipeworx.io/mcp — every tool in the catalog, including @pipeworx/us-race-matchups’s. Install: one-click buttons

Connect to just the @pipeworx/us-race-matchups pack

https://gateway.pipeworx.io/us-race-matchups/mcp — only @pipeworx/us-race-matchups’s own tools, nothing else in the catalog.

No MCP client? Skip the connection: POST https://gateway.pipeworx.io/v1/tools/search_packs {"query":"..."} to find a tool below, GET /v1/tools/<name> for its schema, POST the same URL with arguments for the data — see For AI agents.

Tools: 2

Who is on the ballot in a US House district or Senate seat: the incumbent, every FEC-registered candidate by party with the money behind them, which of them won a primary, and the primary and general election dates. Built for the 2026 midterms (general election 3 November 2026); works for any even cycle.

Tools

  • race_matchup(state, office, district?, cycle?, special?) — one race. Returns the incumbent, candidates (party, incumbent status, total receipts, disbursements, cash on hand, the date each candidate’s money runs through, won_primary), primary result tables with vote counts and share, and the primary, runoff and general election dates. A district with no candidates returns an error naming the districts that do have candidates; a state with no Senate race that cycle says so; a race with no primary table says so in primary_results_note instead of returning an empty list.
  • list_races(state, office?, cycle?) — every race in a state with how many candidates registered and who the incumbent is. Use it to find a district number.

Auth

Platform key (the shared data.gov key the gateway already holds for the FEC pack). Callers pass nothing.

Data sources

  • FEC, candidate and committee filings — candidates, party, incumbent status, receipts, disbursements, cash on hand. Federal public record.
  • FEC, election calendar — primary, runoff and general election dates.
  • Wikipedia, 2026 race pages — primary vote counts and which candidates advanced. This is a volunteer-compiled source, not an official one; every response labels it and lists the state election authority the page cites (for example “Iowa Secretary of State”). Treat primary numbers as a convenience and check the state authority for anything that matters.

Notes the next person would otherwise rediscover:

  • The FEC money view omits registrants with no financial summary on file; those appear with financials_on_file: false and null money (null, not zero).
  • won_primary is INFERRED, not an id join: the primary table carries no FEC ids, so filers are matched by surname and party, narrowed by given name when several fit. won_primary_match says how (inferred_by_surname_and_party, no_match, ambiguous); when two filers cannot be told apart won_primary is null. null with no match field means no primary table was found.
  • incumbent is the sitting officeholder as the FEC flags them, not necessarily someone on the ballot. Read seeking_reelection and incumbent_note: when the FEC classifies every filer as “Open seat” the incumbent is not a candidate.
  • One person can hold several FEC candidate ids. race_matchup folds them into one candidate (main row = registration with the latest filing; the rest under other_fec_registrations, money not summed); list_races counts people, not ids.
  • FEC lists some candidates’ coverage dates in the future; those are shown as null and excluded from data_as_of.
  • Large states split their Wikipedia coverage across sub-pages by district range (California); the pack follows the link.
  • Ohio and Florida have both a regular and a special Senate election in 2026. FEC groups them under the state; special: true reads the special election’s primary page.
  • No home addresses or other individual contact details are served.

Tools

  • race_matchup — One US House district or Senate seat: who the sitting officeholder is (incumbent, with seeking_reelection and incumbent_note saying whether they are actually on the ballot or the seat is open), every
  • list_races — Every federal race in a state for a cycle (the Senate seat if any, and each House district) with how many distinct people registered with the FEC and who the sitting officeholder is (incumbent; incumb

Tools

  • list_races — Every federal race in a state for a cycle (the Senate seat if any, and each House district) with how many distinct people registered with the FEC and who the sitting officeholder is (incumbent; incumb
  • race_matchup — One US House district or Senate seat: who the sitting officeholder is (incumbent, with seeking_reelection and incumbent_note saying whether they are actually on the ballot or the seat is open), every

Regenerated from source · build October 30, 2026