Tools · MCP
MCP server and WebMCP tools
Four read-only tools over 2026 races and what the nominees say, available two ways: a remote MCP server any AI client can connect to, and WebMCP tools registered on every page of this site.
Connect a client
The server is open, needs no key, and is read-only. Please cite 2026election.com when you use the results.
https://www.2026election.com/mcpClaude: Settings → Connectors → Add custom connector, then paste the URL.
Claude Code:
claude mcp add --transport http 2026election https://www.2026election.com/mcpChatGPT: turn on developer mode (Settings → Apps & Connectors → Advanced settings), then create a connector with the URL.
Cursor: add it to .cursor/mcp.json:
{
"mcpServers": {
"2026election": {
"url": "https://www.2026election.com/mcp"
}
}
} How it works
Both ways serve the same four tools with the same output: the markdown version of a race or state page, or the Search API's JSON, so agents and readers see the same documented positions. The MCP server speaks Streamable HTTP and keeps no sessions.
In a browser with WebMCP enabled, an agent on any page here can call the tools directly, with no setup. Browsers without WebMCP ignore them.
search_positions
Full-text search over what 2026 House, Senate and governor nominees say on the issues, in their own words. Returns matching positions with the quote, its source, and links to the race page and its markdown.
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Words to search for, e.g. 'tariffs' or 'medicaid expansion'."
},
"state": {
"type": "string",
"description": "Full state name or 2-letter code."
},
"chamber": {
"type": "string",
"enum": [
"house",
"senate",
"governor"
]
},
"issue": {
"type": "string",
"enum": [
"immigration-border-security",
"economy-cost-of-living",
"healthcare",
"abortion-reproductive-rights",
"education",
"energy-environment",
"taxes-government-spending",
"guns",
"crime-public-safety",
"democracy-elections",
"government-reform-ethics",
"housing",
"foreign-policy-defense",
"veterans",
"agriculture-rural",
"infrastructure-transportation",
"social-security-retirement"
],
"description": "Issue topic slug."
},
"party": {
"type": "string",
"enum": [
"D",
"R",
"other"
]
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 25,
"description": "Max results (default 10)."
}
},
"required": [
"query"
]
}- Example output What this tool returns.
get_race
The full guide to one 2026 race as markdown: nominees, rating, every issue with each nominee's documented position and verbatim sourced quotes, plus polls and markets.
{
"type": "object",
"properties": {
"race_key": {
"type": "string",
"description": "Race key, e.g. 2026-senate-ga, 2026-house-fl-10, 2026-house-wy-al."
}
},
"required": [
"race_key"
]
}- Example output What this tool returns.
compare_on_issue
One race, one issue topic: the race header and candidates plus only the issue sections in that topic, as markdown, with each nominee's position side by side.
{
"type": "object",
"properties": {
"race_key": {
"type": "string",
"description": "Race key, e.g. 2026-senate-ga, 2026-house-fl-10, 2026-house-wy-al."
},
"issue": {
"type": "string",
"description": "Issue topic slug or name. One of: immigration-border-security, economy-cost-of-living, healthcare, abortion-reproductive-rights, education, energy-environment, taxes-government-spending, guns, crime-public-safety, democracy-elections, government-reform-ethics, housing, foreign-policy-defense, veterans, agriculture-rural, infrastructure-transportation, social-security-retirement."
}
},
"required": [
"race_key",
"issue"
]
}- Example output What this tool returns.
list_state_races
Every 2026 House, Senate and governor race in one state as markdown, with ratings, nominees and links to each race guide.
{
"type": "object",
"properties": {
"state": {
"type": "string",
"description": "Full state name or 2-letter code."
}
},
"required": [
"state"
]
}- Example output What this tool returns.