Skip to main content
Glama

Election Index

Resolution sources

resolution_sources
Read-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. A results page whose HTML shows no count once one is due (figures_in_html false) is not resolvable. Sources a settlement oracle has answered from come first (oracle_reads). For our own copy of the count, see secondary_source in check_question.

Input Schema

NameRequiredDescriptionDefault
raceNoRace id, e.g. "president"; optional when the election has one race
electionYesElection id, e.g. "brazil-general-2026"; list ids with upcoming_elections
resolvable_onlyNoOnly sources that can answer a results question (race_results, feed); default false

Output Schema

NameRequiredDescriptionDefault
metaYesWhat this answer was built from; cite dataset_version
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedOutput schema / properties / meta / properties / doi
      Added value: +{
      +  "description": "Zenodo concept DOI: the latest archived release",
      +  "type": "string"
      +}
  2. Changed1 schema field changed
    • addedOutput schema / properties / meta / properties / copyright
      Added value: +{
      +  "description": "Rights holder",
      +  "type": "string"
      +}
  3. Changed2 schema fields changed
    • addedOutput schema / properties / result / items / properties / figures_in_html
      Added value: +{
      +  "description": "For a results page: whether its own HTML shows a count (false: figures load by script or the page only links on; null: not read)",
      +  "type": [
      +    "boolean",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / result / items / properties / oracle_reads
      Added value: +{
      +  "description": "Settlement-oracle lab reads of this URL: right, wrong, unread, lab, at",
      +  "type": [
      +    "object",
      +    "null"
      +  ]
      +}
  4. First observed

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint and openWorldHint; the description adds substantial behavior beyond that — result ordering ("Sources a settlement oracle has answered from come first (oracle_reads)"), the meaning of the classification buckets, and a concrete non-resolvability condition. These are exactly the traits an agent needs to interpret the returned list rather than just knowing the call is a safe read.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four short sentences, each carrying distinct information, with the core definition front-loaded and the sibling cross-reference last. The density of internal jargon (emb_home, figures_in_html, oracle_reads) makes it slightly harder to parse on first read, but nothing is redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a three-parameter read tool with an output schema already present, the description covers everything an agent needs: what is returned, how it is classified, what ordering to expect, and how to judge resolvability. Return-value structure is correctly left to the output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description earns more by explaining the underlying concept that resolvable_only filters on: what "resolvable" means and why a results page can fail it. It also contextualizes race/election ids through the sibling upcoming_elections pointer, though it does not restate the race-optionality rule itself.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific resource and scope — "Every known source URL for a race" — and immediately gives the classification taxonomy (race_results, feed, results_index, emb_home, directory, media). It also explicitly routes the agent elsewhere for a related but different need ("For our own copy of the count, see secondary_source in check_question"), so it is distinguishable from siblings like check_question without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states precisely which sources can answer a results question ("Only race_results and feed"), rules out a whole class ("homepages never can"), and gives a negative resolvability rule tied to figures_in_html. It also names the alternative tool for the adjacent task, giving both when-to-use and when-to-look-elsewhere guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources