Using Swiss Vote

Add https://vote.rxtx.io/mcp as a remote MCP connector in Claude or ChatGPT, with authentication set to None. It uses Streamable HTTP.

Three read-only tools

  1. find_locations: search a municipality by name, postcode or BFS number; resolve ambiguous matches before continuing.
  2. get_upcoming_votes: pass a canton code or municipality ID to get its upcoming ballot together with federal proposals. Without a location, only federal proposals are returned.
  3. get_vote_details: pass a proposal ID from the ballot to read an official explanation. Chapter 0 is returned by default, along with a chapter index. Read additional chapters for the full arguments.

Dates, languages and coverage

The default date is the earliest published referendum for the selected location on or after today in Europe/Zurich. An optional YYYY-MM-DD date can select another published upcoming ballot. Choose de, fr, it or rm; if a translation is absent, the actual fallback language is labelled.

Municipalities are identified by BFS number, not postcode. The bundled place directory may need updating after municipal mergers. Missing, unsupported or unavailable municipal coverage is reported explicitly and does not prove that no local vote exists. Elections and municipal assemblies are excluded.

Sources

Data comes from the public JSON feeds used by VoteInfo, at app-static.voteinfo-app.ch/v5/. Responses carry source links and retrieval timestamps. These app feeds may change; upstream failures are reported and partial results labelled. Official recommendations and arguments remain attributed to their authors.

This service reads information only. It cannot cast votes, access a voting register or infer political preferences.