Election Index

Neutral, sourced election calendar: polling days, when provisional and final results are due.

Should I use this

Quality & Safety

A
Description quality
96%
Schema completeness
90%
Naming quality
88%
Poisoning risk
80%
Permission match
100%
Protocol compliance
100%

Findings (3)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains URL to non-standard domainin submit_correction
  • LOWTool 'resolution_sources' description lacks action verbin resolution_sources

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~5,439Tokens (tool definitions)
~8.0 KBTypical response size
Significant attention impact (4.25% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "elections": {
      "url": "https://electionindex.org/mcp"
    }
  }
}

Remote endpoints

https://electionindex.org/mcpstreamable-http

What it can do

Tool inventory

Tools (8)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢next_election(country, count)

The next elections in one country, however far ahead: polling day and whether it is declared, scheduled or still tentative, what is elected, the counting authority, and when results are expected. Answers "When is the next election in Austria?" or "When are the US midterms?". Covers 153 elections in 61 countries, 2026–2030, including 22 of the 27 EU member states and the 2026 US midterms in all 50 states.

Input Schema

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "description": "Country name or ISO 3166-1 alpha-2 code, e.g. \"Austria\" or \"AT\", \"United States\" or \"US\""
    },
    "count": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "How many upcoming elections to return, soonest first; default 3"
    }
  },
  "required": [
    "country"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "result": {
      "type": "object",
      "properties": {
        "country": {
          "type": "string",
          "description": "ISO code"
        },
        "country_name": {
          "type": "string",
          "description": "Country name"
        },
        "total_upcoming": {
          "type": "integer",
          "description": "All upcoming elections we list for this country"
        },
        "elections": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Election id"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166-1 alpha-2"
              },
              "country_name": {
                "type": "string",
                "description": "Country name"
              },
              "date": {
                "type": "string",
                "description": "Polling day (YYYY-MM-DD)"
              },
              "date_status": {
                "type": "string",
                "description": "declared, scheduled or tentative"
              },
              "kind": {
                "type": "string",
                "description": "Kind of election"
              },
              "timezone": {
                "type": "string",
                "description": "IANA time zone"
              },
              "status": {
                "type": "string",
                "description": "Where the election is now: scheduled, counting, finalising, final-expected, ..."
              },
              "last_verified_at": {
                "type": "string",
                "description": "When the record was last checked against its sources"
              },
              "stale": {
                "type": "boolean",
                "description": "Not re-verified recently, or a stage is overdue"
              },
              "stale_reason": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Why it is stale"
              },
              "url": {
                "type": "string",
                "description": "Page on electionindex.org"
              },
              "races": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "Race id"
                    },
                    "name": {
                      "type": "string",
                      "description": "Race name"
                    },
                    "status": {
                      "type": "string",
                      "description": "Race status"
                    },
                    "expected_stage_now": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "Count stage expected on the authority page now"
                    },
                    "stages": {
                      "type": "array",
                      "items": {
                        "type": [
                          "object",
                          "null"
                        ],
                        "description": "Expected window for one count stage",
                        "properties": {
                          "stage": {
                            "type": "string",
                            "description": "Count stage id"
                          },
                          "from": {
                            "type": [
                              "string",
                              "null"
                            ],
                            "description": "Earliest expected time (ISO)"
                          },
                          "by": {
                            "type": [
                              "string",
                              "null"
                            ],
                            "description": "Latest expected time (ISO)"
                          },
                          "replacedAt": {
                            "type": [
                              "string",
                              "null"
                            ],
                            "description": "When a later stage replaces it on the authority page"
                          },
                          "confidence": {
                            "type": "string",
                            "description": "announced (law or authority), precedent (last election) or estimate"
                          },
                          "citation": {
                            "type": "string",
                            "description": "Basis for the window"
                          },
                          "source": {
                            "type": [
                              "string",
                              "null"
                            ],
                            "description": "Source of a stage published outside the authority page"
                          },
                          "observedAt": {
                            "type": [
                              "string",
                              "null"
                            ],
                            "description": "When the authority actually published it; null until observed"
                          },
                          "observedSource": {
                            "type": [
                              "string",
                              "null"
                            ],
                            "description": "URL that proves the observation"
                          }
                        }
                      }
                    },
                    "sources": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "url": {
                            "type": "string",
                            "description": "Source URL"
                          },
                          "role": {
                            "type": "string",
                            "description": "What the page is for"
                          },
                          "kind": {
                            "type": "string",
                            "description": "race_results, feed, results_index, emb_home, directory or media"
                          },
                          "kindReason": {
                            "type": "string",
                            "description": "Why it was classified that way"
                          },
                          "resolvable": {
                            "type": "boolean",
                            "description": "Can this page answer a results question?"
                          },
                          "origin": {
                            "type": "string",
                            "description": "race, stage or authority"
                          },
                          "check": {
                            "type": [
                              "object",
                              "null"
                            ],
                            "description": "Latest link check"
                          }
                        }
                      }
                    }
                  }
                }
              }
            },
            "required": [
              "id",
              "country",
              "date",
              "status",
              "url"
            ]
          }
        },
        "note": {
          "type": "string",
          "description": "Set when nothing is listed yet"
        }
      },
      "required": [
        "country",
        "elections"
      ]
    },
    "meta": {
      "type": "object",
      "description": "What this answer was built from; cite dataset_version",
      "properties": {
        "dataset_version": {
          "type": "string",
          "description": "Dataset version"
        },
        "built_at": {
          "type": "string",
          "description": "When the dataset was built"
        },
        "generated_at": {
          "type": "string",
          "description": "When this answer was generated"
        },
        "licence": {
          "type": "string",
          "description": "Licence and required credit"
        },
        "docs": {
          "type": "string",
          "description": "Documentation URL"
        }
      },
      "required": [
        "dataset_version",
        "licence"
      ]
    }
  },
  "required": [
    "result",
    "meta"
  ]
}
🟢upcoming_elections(country, from, to, include_discovered, limit)

List elections by date range and/or country, soonest first, with each race's expected count stage right now. Answers "Which elections are in Europe this autumn?", "Which elections are this month?" or "What elections does Germany have coming up?". Without dates it starts today; with a country and no end date it covers every future election of that country, otherwise the next 365 days. Covers 153 elections in 61 countries, 2026–2030, including 22 of the 27 EU member states and the 2026 US midterms in all 50 states.

Input Schema

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "description": "Country name or ISO 3166-1 alpha-2 code, e.g. \"Austria\" or \"AT\", \"United States\" or \"US\""
    },
    "from": {
      "type": "string",
      "description": "Start date YYYY-MM-DD; default today"
    },
    "to": {
      "type": "string",
      "description": "End date YYYY-MM-DD; default +365 days, or no end when a country is given"
    },
    "include_discovered": {
      "type": "boolean",
      "description": "Also list elections found on Wikidata but not yet verified by Election Index"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 200,
      "description": "Most elections to return, soonest first; default 25, max 200. Narrow with from/to or country for more."
    }
  }
}

Output Schema

{
  "type": "object",
  "properties": {
    "result": {
      "type": "object",
      "properties": {
        "total": {
          "type": "integer",
          "description": "Elections matching the filters"
        },
        "returned": {
          "type": "integer",
          "description": "Elections in this answer (see limit)"
        },
        "elections": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Election id"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166-1 alpha-2"
              },
              "country_name": {
                "type": "string",
                "description": "Country name"
              },
              "date": {
                "type": "string",
                "description": "Polling day (YYYY-MM-DD)"
              },
              "date_status": {
                "type": "string",
                "description": "declared, scheduled or tentative"
              },
              "kind": {
                "type": "string",
                "description": "Kind of election"
              },
              "timezone": {
                "type": "string",
                "description": "IANA time zone"
              },
              "status": {
                "type": "string",
                "description": "Where the election is now: scheduled, counting, finalising, final-expected, ..."
              },
              "last_verified_at": {
                "type": "string",
                "description": "When the record was last checked against its sources"
              },
              "stale": {
                "type": "boolean",
                "description": "Not re-verified recently, or a stage is overdue"
              },
              "stale_reason": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Why it is stale"
              },
              "url": {
                "type": "string",
                "description": "Page on electionindex.org"
              },
              "races": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "Race id"
                    },
                    "name": {
                      "type": "string",
                      "description": "Race name"
                    },
                    "status": {
                      "type": "string",
                      "description": "Race status"
                    },
                    "expected_stage_now": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "Count stage expected on the authority page now"
                    },
                    "stages": {
                      "type": "array",
                      "items": {
                        "type": [
                          "object",
                          "null"
                        ],
                        "description": "Expected window for one count stage",
                        "properties": {
                          "stage": {
                            "type": "string",
                            "description": "Count stage id"
                          },
                          "from": {
                            "type": [
                              "string",
                              "null"
                            ],
                            "description": "Earliest expected time (ISO)"
                          },
                          "by": {
                            "type": [
                              "string",
                              "null"
                            ],
                            "description": "Latest expected time (ISO)"
                          },
                          "replacedAt": {
                            "type": [
                              "string",
                              "null"
                            ],
                            "description": "When a later stage replaces it on the authority page"
                          },
                          "confidence": {
                            "type": "string",
                            "description": "announced (law or authority), precedent (last election) or estimate"
                          },
                          "citation": {
                            "type": "string",
                            "description": "Basis for the window"
                          },
                          "source": {
                            "type": [
                              "string",
                              "null"
                            ],
                            "description": "Source of a stage published outside the authority page"
                          },
                          "observedAt": {
                            "type": [
                              "string",
                              "null"
                            ],
                            "description": "When the authority actually published it; null until observed"
                          },
                          "observedSource": {
                            "type": [
                              "string",
                              "null"
                            ],
                            "description": "URL that proves the observation"
                          }
                        }
                      }
                    },
                    "sources": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "url": {
                            "type": "string",
                            "description": "Source URL"
                          },
                          "role": {
                            "type": "string",
                            "description": "What the page is for"
                          },
                          "kind": {
                            "type": "string",
                            "description": "race_results, feed, results_index, emb_home, directory or media"
                          },
                          "kindReason": {
                            "type": "string",
                            "description": "Why it was classified that way"
                          },
                          "resolvable": {
                            "type": "boolean",
                            "description": "Can this page answer a results question?"
                          },
                          "origin": {
                            "type": "string",
                            "description": "race, stage or authority"
                          },
                          "check": {
                            "type": [
                              "object",
                              "null"
                            ],
                            "description": "Latest link check"
                          }
                        }
                      }
                    }
                  }
                }
              }
            },
            "required": [
              "id",
              "country",
              "date",
              "status",
              "url"
            ]
          }
        },
        "discovered_unverified": {
          "type": "array",
          "description": "Found on Wikidata, not verified",
          "items": {
            "type": "object"
          }
        }
      },
      "required": [
        "elections"
      ]
    },
    "meta": {
      "type": "object",
      "description": "What this answer was built from; cite dataset_version",
      "properties": {
        "dataset_version": {
          "type": "string",
          "description": "Dataset version"
        },
        "built_at": {
          "type": "string",
          "description": "When the dataset was built"
        },
        "generated_at": {
          "type": "string",
          "description": "When this answer was generated"
        },
        "licence": {
          "type": "string",
          "description": "Licence and required credit"
        },
        "docs": {
          "type": "string",
          "description": "Documentation URL"
        }
      },
      "required": [
        "dataset_version",
        "licence"
      ]
    }
  },
  "required": [
    "result",
    "meta"
  ]
}
🟢election_status(election)

Full record of one election: races, polls-close times, every count stage window (exit poll, election night, intermediate count, final result, government) with confidence and citation, the authority, sources, and whether the record is stale.

Input Schema

{
  "type": "object",
  "properties": {
    "election": {
      "type": "string",
      "description": "Election id, e.g. \"latvia-parliamentary-2026\""
    }
  },
  "required": [
    "election"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "result": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "Election id"
        },
        "country": {
          "type": "string",
          "description": "ISO 3166-1 alpha-2"
        },
        "country_name": {
          "type": "string",
          "description": "Country name"
        },
        "date": {
          "type": "string",
          "description": "Polling day (YYYY-MM-DD)"
        },
        "date_status": {
          "type": "string",
          "description": "declared, scheduled or tentative"
        },
        "kind": {
          "type": "string",
          "description": "Kind of election"
        },
        "timezone": {
          "type": "string",
          "description": "IANA time zone"
        },
        "status": {
          "type": "string",
          "description": "Where the election is now: scheduled, counting, finalising, final-expected, ..."
        },
        "last_verified_at": {
          "type": "string",
          "description": "When the record was last checked against its sources"
        },
        "stale": {
          "type": "boolean",
          "description": "Not re-verified recently, or a stage is overdue"
        },
        "stale_reason": {
          "type": [
            "string",
            "null"
          ],
          "description": "Why it is stale"
        },
        "url": {
          "type": "string",
          "description": "Page on electionindex.org"
        },
        "races": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Race id"
              },
              "name": {
                "type": "string",
                "description": "Race name"
              },
              "status": {
                "type": "string",
                "description": "Race status"
              },
              "expected_stage_now": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Count stage expected on the authority page now"
              },
              "stages": {
                "type": "array",
                "items": {
                  "type": [
                    "object",
                    "null"
                  ],
                  "description": "Expected window for one count stage",
                  "properties": {
                    "stage": {
                      "type": "string",
                      "description": "Count stage id"
                    },
                    "from": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "Earliest expected time (ISO)"
                    },
                    "by": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "Latest expected time (ISO)"
                    },
                    "replacedAt": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "When a later stage replaces it on the authority page"
                    },
                    "confidence": {
                      "type": "string",
                      "description": "announced (law or authority), precedent (last election) or estimate"
                    },
                    "citation": {
                      "type": "string",
                      "description": "Basis for the window"
                    },
                    "source": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "Source of a stage published outside the authority page"
                    },
                    "observedAt": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "When the authority actually published it; null until observed"
                    },
                    "observedSource": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "URL that proves the observation"
                    }
                  }
                }
              },
              "sources": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "url": {
                      "type": "string",
                      "description": "Source URL"
                    },
                    "role": {
                      "type": "string",
                      "description": "What the page is for"
                    },
                    "kind": {
                      "type": "string",
                      "description": "race_results, feed, results_index, emb_home, directory or media"
                    },
                    "kindReason": {
                      "type": "string",
                      "description": "Why it was classified that way"
                    },
                    "resolvable": {
                      "type": "boolean",
                      "description": "Can this page answer a results question?"
                    },
                    "origin": {
                      "type": "string",
                      "description": "race, stage or authority"
                    },
                    "check": {
                      "type": [
                        "object",
                        "null"
                      ],
                      "description": "Latest link check"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "required": [
        "id",
        "country",
        "date",
        "status",
        "url"
      ]
    },
    "meta": {
      "type": "object",
      "description": "What this answer was built from; cite dataset_version",
      "properties": {
        "dataset_version": {
          "type": "string",
          "description": "Dataset version"
        },
        "built_at": {
          "type": "string",
          "description": "When the dataset was built"
        },
        "generated_at": {
          "type": "string",
          "description": "When this answer was generated"
        },
        "licence": {
          "type": "string",
          "description": "Licence and required credit"
        },
        "docs": {
          "type": "string",
          "description": "Documentation URL"
        }
      },
      "required": [
        "dataset_version",
        "licence"
      ]
    }
  },
  "required": [
    "result",
    "meta"
  ]
}
🟢when_final(election, race)

When will a race's final (certified) result exist? Returns the expected window, its confidence (announced / precedent / estimate) and basis. Use this before asking or settling any "final result" question.

Input Schema

{
  "type": "object",
  "properties": {
    "election": {
      "type": "string",
      "description": "Election id, e.g. \"brazil-general-2026\"; list ids with upcoming_elections"
    },
    "race": {
      "type": "string",
      "description": "Race id, e.g. \"president\"; optional when the election has one race"
    }
  },
  "required": [
    "election"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "result": {
      "type": "object",
      "properties": {
        "election": {
          "type": "string",
          "description": "Election id"
        },
        "race": {
          "type": "string",
          "description": "Race id"
        },
        "final_expected_from": {
          "type": [
            "string",
            "null"
          ],
          "description": "Earliest expected time of the final result"
        },
        "final_expected_by": {
          "type": [
            "string",
            "null"
          ],
          "description": "Latest expected time of the final result"
        },
        "confidence": {
          "type": [
            "string",
            "null"
          ],
          "description": "announced, precedent or estimate"
        },
        "basis": {
          "type": "string",
          "description": "Legal or historical basis"
        },
        "observed": {
          "type": "boolean",
          "description": "True once the authority has published the final result"
        }
      },
      "required": [
        "election",
        "race",
        "observed"
      ]
    },
    "meta": {
      "type": "object",
      "description": "What this answer was built from; cite dataset_version",
      "properties": {
        "dataset_version": {
          "type": "string",
          "description": "Dataset version"
        },
        "built_at": {
          "type": "string",
          "description": "When the dataset was built"
        },
        "generated_at": {
          "type": "string",
          "description": "When this answer was generated"
        },
        "licence": {
          "type": "string",
          "description": "Licence and required credit"
        },
        "docs": {
          "type": "string",
          "description": "Documentation URL"
        }
      },
      "required": [
        "dataset_version",
        "licence"
      ]
    }
  },
  "required": [
    "result",
    "meta"
  ]
}
🟢check_question(election, race, stage, ask_at)

Is a question about a given count stage answerable at a given time? Returns verdict ok / too-early / inside-window / too-late, settle_after, and the resolvable sources. Built to stop questions that read the provisional count when they mean the final one.

Input Schema

{
  "type": "object",
  "properties": {
    "election": {
      "type": "string",
      "description": "Election id, e.g. \"brazil-general-2026\"; list ids with upcoming_elections"
    },
    "race": {
      "type": "string",
      "description": "Race id, e.g. \"president\"; optional when the election has one race"
    },
    "stage": {
      "type": "string",
      "enum": [
        "exit-poll",
        "election-night",
        "media-call",
        "intermediate-count",
        "final-result",
        "court-validation",
        "government"
      ],
      "description": "Default final-result"
    },
    "ask_at": {
      "type": "string",
      "description": "ISO date-time; default now"
    }
  },
  "required": [
    "election"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "result": {
      "type": "object",
      "properties": {
        "election": {
          "type": "string",
          "description": "Election id"
        },
        "race": {
          "type": "string",
          "description": "Race id"
        },
        "stage": {
          "type": "string",
          "description": "Count stage asked about"
        },
        "ask_at": {
          "type": "string",
          "description": "Time the question would be asked (ISO)"
        },
        "verdict": {
          "type": "string",
          "description": "ok, too-early, inside-window, too-late or no-window"
        },
        "settle_after": {
          "type": [
            "string",
            "null"
          ],
          "description": "Earliest time the question can be settled"
        },
        "replaced_at": {
          "type": [
            "string",
            "null"
          ],
          "description": "When a later stage replaces this one"
        },
        "detail": {
          "type": "string",
          "description": "Explanation"
        },
        "window": {
          "type": [
            "object",
            "null"
          ],
          "description": "Expected window for one count stage",
          "properties": {
            "stage": {
              "type": "string",
              "description": "Count stage id"
            },
            "from": {
              "type": [
                "string",
                "null"
              ],
              "description": "Earliest expected time (ISO)"
            },
            "by": {
              "type": [
                "string",
                "null"
              ],
              "description": "Latest expected time (ISO)"
            },
            "replacedAt": {
              "type": [
                "string",
                "null"
              ],
              "description": "When a later stage replaces it on the authority page"
            },
            "confidence": {
              "type": "string",
              "description": "announced (law or authority), precedent (last election) or estimate"
            },
            "citation": {
              "type": "string",
              "description": "Basis for the window"
            },
            "source": {
              "type": [
                "string",
                "null"
              ],
              "description": "Source of a stage published outside the authority page"
            },
            "observedAt": {
              "type": [
                "string",
                "null"
              ],
              "description": "When the authority actually published it; null until observed"
            },
            "observedSource": {
              "type": [
                "string",
                "null"
              ],
              "description": "URL that proves the observation"
            }
          }
        },
        "resolution_sources": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "url": {
                "type": "string",
                "description": "Source URL"
              },
              "role": {
                "type": "string",
                "description": "What the page is for"
              },
              "kind": {
                "type": "string",
                "description": "race_results, feed, results_index, emb_home, directory or media"
              },
              "kindReason": {
                "type": "string",
                "description": "Why it was classified that way"
              },
              "resolvable": {
                "type": "boolean",
                "description": "Can this page answer a results question?"
              },
              "origin": {
                "type": "string",
                "description": "race, stage or authority"
              },
              "check": {
                "type": [
                  "object",
                  "null"
                ],
                "description": "Latest link check"
              }
            }
          }
        }
      },
      "required": [
        "election",
        "race",
        "verdict"
      ]
    },
    "meta": {
      "type": "object",
      "description": "What this answer was built from; cite dataset_version",
      "properties": {
        "dataset_version": {
          "type": "string",
          "description": "Dataset version"
        },
        "built_at": {
          "type": "string",
          "description": "When the dataset was built"
        },
        "generated_at": {
          "type": "string",
          "description": "When this answer was generated"
        },
        "licence": {
          "type": "string",
          "description": "Licence and required credit"
        },
        "docs": {
          "type": "string",
          "description": "Documentation URL"
        }
      },
      "required": [
        "dataset_version",
        "licence"
      ]
    }
  },
  "required": [
    "result",
    "meta"
  ]
}
🟢resolution_sources(election, race, resolvable_only)

Every known source URL for a race, classified (race_results, feed, results_index, emb_home, directory, media). Only race_results and feed can answer a results question; homepages never can.

Input Schema

{
  "type": "object",
  "properties": {
    "election": {
      "type": "string",
      "description": "Election id, e.g. \"brazil-general-2026\"; list ids with upcoming_elections"
    },
    "race": {
      "type": "string",
      "description": "Race id, e.g. \"president\"; optional when the election has one race"
    },
    "resolvable_only": {
      "type": "boolean",
      "description": "Only sources that can answer a results question (race_results, feed); default false"
    }
  },
  "required": [
    "election"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "result": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "description": "Source URL"
          },
          "role": {
            "type": "string",
            "description": "What the page is for"
          },
          "kind": {
            "type": "string",
            "description": "race_results, feed, results_index, emb_home, directory or media"
          },
          "kindReason": {
            "type": "string",
            "description": "Why it was classified that way"
          },
          "resolvable": {
            "type": "boolean",
            "description": "Can this page answer a results question?"
          },
          "origin": {
            "type": "string",
            "description": "race, stage or authority"
          },
          "check": {
            "type": [
              "object",
              "null"
            ],
            "description": "Latest link check"
          }
        }
      }
    },
    "meta": {
      "type": "object",
      "description": "What this answer was built from; cite dataset_version",
      "properties": {
        "dataset_version": {
          "type": "string",
          "description": "Dataset version"
        },
        "built_at": {
          "type": "string",
          "description": "When the dataset was built"
        },
        "generated_at": {
          "type": "string",
          "description": "When this answer was generated"
        },
        "licence": {
          "type": "string",
          "description": "Licence and required credit"
        },
        "docs": {
          "type": "string",
          "description": "Documentation URL"
        }
      },
      "required": [
        "dataset_version",
        "licence"
      ]
    }
  },
  "required": [
    "result",
    "meta"
  ]
}
🟡submit_correction(claim, evidence, election, race)

Report a mistake or a missing election, with a URL that proves it (ideally the official authority page). The report is public and is checked like any other claim; it never changes the data by itself. Returns the report id; follow it at https://electionindex.org/corrections.

Input Schema

{
  "type": "object",
  "properties": {
    "claim": {
      "type": "string",
      "description": "What is wrong and what is right, 10 to 2000 characters"
    },
    "evidence": {
      "type": "string",
      "description": "http(s) URL of the page that proves it"
    },
    "election": {
      "type": "string",
      "description": "Election id, if the report is about a listed election"
    },
    "race": {
      "type": "string",
      "description": "Race id within that election, if the report is about one race"
    }
  },
  "required": [
    "claim",
    "evidence"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "result": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "Report id"
        },
        "at": {
          "type": "string",
          "description": "Filed at (ISO)"
        },
        "status": {
          "type": "string",
          "description": "open until checked"
        },
        "claim": {
          "type": "string",
          "description": "The report"
        },
        "evidence": {
          "type": "string",
          "description": "Evidence URL"
        },
        "url": {
          "type": "string",
          "description": "Where to follow the report"
        }
      },
      "required": [
        "id",
        "status",
        "url"
      ]
    },
    "meta": {
      "type": "object",
      "description": "What this answer was built from; cite dataset_version",
      "properties": {
        "dataset_version": {
          "type": "string",
          "description": "Dataset version"
        },
        "built_at": {
          "type": "string",
          "description": "When the dataset was built"
        },
        "generated_at": {
          "type": "string",
          "description": "When this answer was generated"
        },
        "licence": {
          "type": "string",
          "description": "Licence and required credit"
        },
        "docs": {
          "type": "string",
          "description": "Documentation URL"
        }
      },
      "required": [
        "dataset_version",
        "licence"
      ]
    }
  },
  "required": [
    "result",
    "meta"
  ]
}
🟢dataset_health

Coverage, stale records, races still lacking a results page, and publisher-gate warnings, as counts with the first 20 of each (full report at /v1/health). Use to judge how far to trust an answer.

Input Schema

{
  "type": "object",
  "properties": {}
}

Output Schema

{
  "type": "object",
  "properties": {
    "result": {
      "type": "object",
      "properties": {
        "elections": {
          "type": "integer",
          "description": "Profiled elections"
        },
        "races": {
          "type": "integer",
          "description": "Races"
        },
        "authorities": {
          "type": "integer",
          "description": "Counting authorities"
        },
        "discovered_unprofiled": {
          "type": "integer",
          "description": "Found, not yet profiled"
        },
        "races_with_resolvable_results_source": {
          "type": "integer",
          "description": "Races with a page that can answer a results question"
        },
        "races_without": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "First 20 races lacking one"
        },
        "races_without_total": {
          "type": "integer",
          "description": "All races lacking one"
        },
        "stale": {
          "type": "array",
          "items": {
            "type": "object"
          },
          "description": "First 20 stale records"
        },
        "stale_total": {
          "type": "integer",
          "description": "All stale records"
        },
        "links_checked": {
          "type": "integer",
          "description": "Links checked by the Auditor"
        },
        "warnings": {
          "type": "array",
          "items": {
            "type": "object"
          },
          "description": "First 20 publisher-gate warnings"
        },
        "warnings_total": {
          "type": "integer",
          "description": "All publisher-gate warnings"
        },
        "warnings_by_level": {
          "type": "object",
          "description": "Warning count per level"
        },
        "full_report": {
          "type": "string",
          "description": "URL of the full report with every warning"
        }
      },
      "required": [
        "elections",
        "races"
      ]
    },
    "meta": {
      "type": "object",
      "description": "What this answer was built from; cite dataset_version",
      "properties": {
        "dataset_version": {
          "type": "string",
          "description": "Dataset version"
        },
        "built_at": {
          "type": "string",
          "description": "When the dataset was built"
        },
        "generated_at": {
          "type": "string",
          "description": "When this answer was generated"
        },
        "licence": {
          "type": "string",
          "description": "Licence and required credit"
        },
        "docs": {
          "type": "string",
          "description": "Documentation URL"
        }
      },
      "required": [
        "dataset_version",
        "licence"
      ]
    }
  },
  "required": [
    "result",
    "meta"
  ]
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded8 tools