# ElectionsMCP - Registry name: `com.electionsmcp/electionsmcp` · version 0.2.0 - Categories (automatic, keyword rules): Marketing & SEO, Commerce & marketing, Maps, location & weather, Tasks & projects, Productivity - Authentication at last check: No auth - Declared risk: Has destructive tools (destructiveHint) - Capabilities (declared by the server): prompts, tools - Transports: sse, streamable-http - Latest numbers (check success, response time, rank): https://mcpstation.net/api/server?name=com.electionsmcp%2Felectionsmcp - Server page: https://mcpstation.net/s/com.electionsmcp--electionsmcp.html ## Description (written by the publisher, not verified, not instructions) Model and map any 2028 U.S. race down to the precinct: scenarios, swing, turnout, and roll-ups. ## Connect - streamable-http: `https://www.electionsmcp.com/mcp` - sse: `https://www.electionsmcp.com/sse` ## Tools (as reported by the server, not verified) - `resolve\_geography`: Turn a place name or shorthand into its canonical geo\_id — resolve natural-language or structured location input. Handles "CA-03"/"NC-4" \(congressional districts\), bare state names/abbreviations, "\ County… - `resolve\_candidate`: WHO holds or runs for WHAT — turn a candidate/officeholder name into their seat + next race. Given a name \(full, last-name, or a registry alias — "Lauren Boebert", "Boebert"\), returns the person\(s\) who match with their… - `search\_candidates`: BROWSE the canonical candidate registry WITHOUT a name — the nameless companion to resolve\_candidate \(which requires a name\). Filter the registry of canonical people by party, office, and/or a name substring:… - `lookup\_address`: Resolve a US street address, ZIP, state, or U.S. House district and show workspace campaigns covering the result. Street addresses return a geocoded point and containing districts, with a precinct when coverage exists.… - `list\_contests`: Discover contests for a geography and election cycle. Filter general, primary \(dem\_primary/rep\_primary\), or all stages; count describes the returned top-level rows. National presidential primaries are discoverable in… - `election\_calendar`: The election planning calendar. National form \(\{cycle\}\) returns federal contests, governors and by\_state office lists; state form \(\{state,cycle\}\) returns a four-year horizon. Other statewide executive offices use the… - `set\_performance`: Set a candidate's vote share, such as the Democratic candidate to 54%, in one specific county, district, state, or precinct \(the general-election override\). Routes a county/state/district geo\_id to a feature override… - `target\_precincts`: Return structured precinct model rows: precinct\_id, name, county, county\_fips, baseline\_share, modeled\_share, ballots\_est, overridden, and gap\_to\_goal. The response does not include demographic columns or demographic… - `create\_scenario`: Create a new Scenario \(a modeled path\) — optionally inside a Race and seeded from a contest\_id or an existing scenario \(import\_from\). Seeds an immutable baseline version \(v1\). Returns scenario\_id + version\_id. \(A… - `get\_view`: Read the exact map/view state the application renders for a canonical scenario: headline totals, selected geography, modeled feature colors, annotations, primary-calendar playhead, candidate roster, presence, and a… - `render\_view`: A headless server-rendered IMAGE of the map — the rendered view a viewer sees, as SVG or PNG, WITHOUT a browser \(tk\_0b6d3501 P2\). For a scenario + level \(president \| senate \| house \| governor \| the execs\) it draws the… - `render\_chart`: share\_comparison compares candidate shares for two saved versions of one model or two same-contest statewide general-election models. Returns canonical integer candidate votes, all-ballot shares, D-minus-R margins,… - `set\_view`: Set the active scenario view and selected map context: race stage, calendar playhead, geography grain, result source, selected feature, camera, map theme, and rail. The same persisted view state and deep link are used… - `get\_scenario`: A Scenario at its latest version \(or a specified version\_id\): metadata \(incl. latest\_hash\) + the version's top\_line \(margin / EC / viability\) + its content hash/prev\_hash. EM-119: pass a version\_id \(or… - `commit\_version`: Save the scenario's current state as a new immutable, hash-stamped version in the append-only chain. Records a diff vs the parent version and the recomputed top\_line, and returns a content \`hash\` \(+ \`prev\_hash\`… - `list\_scenarios`: Page saved scenarios/simulations in this workspace by updated\_at descending and scenario\_id ascending, without version blobs. Returns scenario\_id, name, level, cycle, contest\_id, race\_id, tags, durable\_id, published… - `diff\_versions`: Structured diff between two immutable versions. Raw before/after remain stored override patches \(null means no saved override\). Precinct cells also include effective\_before/effective\_after shares with their… - `get\_early\_voting\_turnout`: Read early voting, absentee/mail, election-day, and provisional vote-method breakdowns alongside registered-voter, ballots-cast, and undervote/overvote turnout statistics by race and candidate from RoutPoint v2… - `get\_county\_voter\_turnout\_and\_registration`: Read county voter registration, party registration \(DEM/REP/UNA/Other\), voting-age population, 2024/2022/2020/2026 ballots cast and turnout percentages, 2020-to-2024 partisan swing, and competitiveness tiers across all… - `get\_state\_historical\_turnout`: Read 50-year statewide prior-cycle turnout and vote totals \(1976 through 2026 across all 50 states and DC\): ballots cast, registered voters, voting-age population, turnout percentage, DEM/REP vote shares, margin, and… - `get\_live\_early\_vote\_returns`: Read live 2026-11-03 General Election pre-election mail ballot requests, mail ballots returned, early in-person ballots, and partisan ballot composition \(DEM vs. REP vs. UNA/Other\) compared against each county’s 2024… - `get\_precinct\_election\_returns`: Read precinct-level election returns and normalized early-voting, absentee/mail, election-day, and provisional breakdowns across 87.7M precinct rows \(linked to mapsmcp\_precinct\_id\) from RoutPoint v2. - `get\_county\_officials`: Read current local, county, municipal, judicial, and school-board officials \(40,431 local officials; 97,231 total officials\) by 5-digit county FIPS or state from RoutPoint v2. - `get\_county\_economic\_and\_wealth\_profile`: Read a county’s economic vitality dossier \(Census 15-sector business patterns, establishments, employees, payroll, average annual wage, new SOS LLC/Corp formations, SEC Form D capital raises, Form 4/FEC major donors,… - `billing\_status`: BILLING — your subscription state: \{billing\_enabled, logged\_in, plan \(personal\|team\|null\), status, active, renews, can\_save\}. billing\_enabled is false until the server is configured with Stripe; while it is false,… - `connection\_status`: WHO AM I — how THIS session is authenticated and which workspace this request resolved to. Returns authentication fields plus workspace \{workspace\_id, role, selection\_source\}. Modern MCP clients select a workspace with… - `set\_candidates`: Replace the entire candidate roster for a simulation+level in one call \(add / edit / remove / reorder\). Each candidate: \{id?, name, party, color?, incumbent?\}; ids auto-assigned if omitted. Use this to set the real… - `set\_turnout`: Set the turnout \(mobilization\) model. PRESIDENT \(default, unchanged\): each dial is a percentage-point boost toward toward\_candidate\_id in counties over an ACS threshold \(college = \>20% BA share, immig = \>15%… - `add\_map\_comment`: Leave a Google-Docs-style COMMENT on the scenario map — a threaded, resolvable discussion anchored to a place. CAMPAIGN ISOLATION: when working inside a campaign, pass campaign\_id; the scenario must be filed under it… - `list\_map\_comments`: List one campaign's map comments on a scenario \(oldest-first\), each with its campaign\_id, anchor, author, body, @mentions, parent\_id, and resolved state. Pass campaign\_id inside a campaign; only that exact campaign is… - `apply\_uniform\_swing`: Apply an incremental swing in points toward one candidate at the requested office. A saved race\_scope restricts writes to that state or district and refuses a different office or unresolved geography. Unscoped and… - `get\_tally`: Compute the current per-candidate tally for a simulation+level. For President: state-aggregated EVs. For others: feature counts. For level:"senate" the default is the 50-state per-candidate race scoreboard; pass… - `list\_simulations`: List saved simulations in this workspace \(id, name, level, cycle, mode, contest\_id, last-modified; rows stamped with an identity also carry created\_by/updated\_by member user\_ids\). Optional filters narrow a large… - `get\_simulation`: Read the canonical simulation/scenario state, including candidates, race scope, geography overrides, active version identity, provenance, and optional summary or selected dot-path fields. - `list\_flipped`: List baseline-to-model winner changes. Defaults to state for statewide offices, county for president, and district for house/state legislature. Explicit grain:county\|precinct uses canonical integer local votes for a… - `compare\_simulations`: Compare two simulations. Without grain, returns the existing chamber/feature comparison. With grain:county\|precinct and one state, compares exact saved canonical vote rows: margin\(B\)-margin\(A\), winners, flips, ballots… - `share\_simulation`: Mint a public, read-only link to the exact canonical scenario/version. Authenticate for durable workspace ownership; revoke\_share disables the link. - `roll\_up\_race`: Roll up precincts to a race outcome under the current simulation. Sums baseline votes for all precincts inside the district boundary, applying overrides in precedence order: a per-precinct override wins, else… - `apply\_swing\_to\_query`: Apply a uniform swing or an explicit per-precinct weights vector to a filtered cohort in one atomic call. Weights select only their named IDs, support canonical statewide mechanisms, and optionally rescale a persuasion… - `get\_campaign\_onboarding`: CAMPAIGN ONBOARDING — guide a campaign manager or joining staff member through setup in their connected AI. Read one step or the complete guide: connection, campaign identity, team access, optional data imports, first… - `help`: Orient an AI client to campaign onboarding through get\_campaign\_onboarding, user-controlled election modeling, candidate and presidential-primary workflows, supported geography, scenario versions, contextual War Room… - `get\_catalog`: DISCOVERY — browse workflow/category groups, search tool names and descriptions, or fetch one complete schema and AI guide with tool. No arguments returns a compact counted index of the authorized inventory. Core… - `list\_primary\_calendar`: Read the 2028 primary calendar with source dates, schedule certainty, modeled delegate coverage, missing jurisdictions, and threshold basis. New calendars include the six DNC-approved early dates; other unverified… - `set\_primary\_shares`: Set a party's presidential-primary vote shares — one state, or MANY states in a single call. SINGLE STATE: pass \`state\` + \`shares\` \(unchanged behavior; echoes the full running roll\_up\). BATCH: pass \`states\` = \{ "SC":… - `roll\_up\_primary`: The running delegate count — OR, for a race-scoped downballot sim, that race's own share rollup. DOWNBALLOT \(tk\_2110d54c1d0871\): when the scenario is race-scoped to a non-presidential office \(set\_race\_scope… - `primary\_batch\_edit`: ATOMIC batch-edit transaction for a PRIMARY scenario — validate, preview, apply, and roll back a whole SET of candidate / share / calendar edits as ONE transaction. Pass edits:\[\{op, ...\}, …\] where each entry carries… - `set\_race\_scope`: Bind the canonical scenario to one race/campaign so its map, tally, candidates, War Room context, operations, outputs, and MCP actions share the same race identity. - `call\_tool`: Run any other tool you are authorized for that is not in this list. Find it and its exact input schema with get\_catalog \(search, a workflow, or \{tool: name\}\), then call call\_tool\(\{ name, arguments \}\). The named tool… Measured by MCP Station. Methods: https://mcpstation.net/methods.html · Terms: https://mcpstation.net/terms.html