Swiss Democracy MCP
Swiss popular votes and elections: Swissvotes 1848+, BFS opendata.swiss, SRGSSR Polis 1900+
Connector by malkreide · GitHub account verified by the MCP Registry
Chalk Labs
Need help deploying Swiss Democracy MCP?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.
npx agentmarket install connector/malkreide-swiss-democracy-mcp
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 26, 2026.
- Tools
- 10 read · 0 write · 0 deleteRead-only
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Tools by what they do 10
Read from the source code; the running server may list different tools.
Read 10 · Look things up without changing anything.
democracy_bfs_get_vote_resultsdemocracy_bfs_list_vote_datesdemocracy_get_cantonal_resultsdemocracy_get_party_positionsdemocracy_get_vote_detaildemocracy_list_vote_datesdemocracy_polis_get_votation_detaildemocracy_polis_list_electionsdemocracy_polis_list_votationsdemocracy_search_votes
Network hosts it talks to 7
169.254.169.254· found in codeapi.srgssr.ch· found in codebfs.admin.ch· found in codedeveloper.srgssr.ch· found in codegithub.com· found in codeopendata.swiss· found in codeswissvotes.ch· found in code
Files it touches
/tmp/mcp-audit-skill/checks
Tools (10)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
democracy_bfs_get_vote_resultsBFS-Abstimmungsresultate (opendata.swiss)read-onlyRuft Echtzeit- oder Archiv-Abstimmungsresultate vom BFS ab. <use_case>Resultate auf Gemeinde-/Kantons-/Bundesebene, v.a. am Abstimmungssonntag.</use_case> Nutzt die direkte JSON-URL eines Abstimmungsdatums (aus democracy_bfs_list_vote_dates). Gibt Resultate pro Vorlage auf nationaler, kantonaler oder Gemeindeebene zurück. Am Abstimmungssonntag werden die Daten laufend aktualisiert. Args: params (BfsVoteResultInput): Enthält: - result_url (str): URL aus democracy_bfs_list_vote_dates - level (str): 'national', 'cantonal' oder 'municipality' Returns: str: JSON mit Abst…
democracy_bfs_list_vote_datesBFS-Abstimmungsdaten (opendata.swiss)read-onlyListet alle verfügbaren eidgenössischen Abstimmungsdaten im BFS-Echtzeit-Webservice auf. <use_case>Einstieg in BFS-Echtzeit-/Archivdaten; liefert die Ressourcen-URLs für democracy_bfs_get_vote_results.</use_case> Die Daten werden am Abstimmungssonntag ab 12:00 Uhr laufend aktualisiert. Das Archiv enthält eidgenössische Abstimmungen seit 1981. Returns: str: JSON mit verfügbaren Abstimmungsdaten und deren Ressource-URLs
democracy_get_cantonal_resultsKantonsresultate zu einer Abstimmung (Swissvotes)read-onlyGibt die Abstimmungsresultate aller 26 Kantone für eine eidgenössische Volksabstimmung zurück. <use_case>Kantonsvergleich und Ständemehr-Analyse zu einer Vorlage.</use_case> Inkl. Stimmberechtigte, abgegebene Stimmen, gültige Stimmen, Ja- und Nein-Stimmen, Ja-Prozent und ob der Kanton angenommen hat (für Ständemehr-Zählung). Args: params (VoteDetailInput): Enthält: - vote_number (str): Abstimmungsnummer (anr) Returns: str: JSON mit kantonalen Resultaten (26 Kantone), nationalem Total und Stimmenmehr/Ständemehr-Übersicht
democracy_get_party_positionsParteiparolen zu einer Abstimmung (Swissvotes)read-onlyGibt die Parteiparolen der grossen Schweizer Parteien zu einer Volksabstimmung zurück. <use_case>Analyse von Parteilinien und Kampagnen-Finanzierung zu einer Vorlage.</use_case> Dekodiert die numerischen Parolen-Codes aus Swissvotes in lesbare Labels: 1=Ja, 2=Nein, 3=Stimmfreigabe, 4=Nein zum Gegenentwurf, 5=Ja zum Gegenentwurf, 66=Keine Parole gefasst, 9=Unbekannt. Args: params (VoteDetailInput): Enthält: - vote_number (str): Abstimmungsnummer (anr) Returns: str: JSON mit Parteiparolen und Links zu Ja-/Nein-Komitees
democracy_get_vote_detailAbstimmungsdetails (Swissvotes)read-onlyGibt vollständige Details zu einer eidgenössischen Volksabstimmung zurück. <use_case>Vertiefung zu einer konkreten Vorlage (Parlamentsempfehlungen, Resultat, Beteiligung).</use_case> Inkl. offiziellem Titel, Rechtsform, Parlamentsempfehlungen (NR, SR, Bundesrat), Abstimmungsresultat (national und kantonal), Beteiligung, Finanzierungsdaten und Link zur Swissvotes-Seite. Args: params (VoteDetailInput): Enthält: - vote_number (str): Abstimmungsnummer (anr) aus democracy_search_votes Returns: str: JSON mit vollständigen Vote-Details oder Fehlermeldung
democracy_list_vote_datesAbstimmungsdaten auflisten (Swissvotes)read-onlyListet alle eidgenössischen Abstimmungsdaten auf, an denen Vorlagen zur Abstimmung kamen. <use_case>Orientierung/Navigation vor einer Detailabfrage.</use_case> Gibt für jedes Datum die Anzahl Vorlagen zurück. Nützlich zur Orientierung vor einer Detailabfrage. Args: params (ListDatesInput): Optionaler Zeitraumfilter (year_from, year_to) Returns: str: JSON mit Liste von Abstimmungsdaten und Anzahl Vorlagen pro Datum
democracy_polis_get_votation_detailPolis – Abstimmungsdetail mit Gemeinderesultaten (SRGSSR)read-onlyGibt detaillierte Polis-Daten zu einer Volksabstimmung zurück. <use_case>Gemeindescharfe Detailanalyse einer historischen Abstimmung.</use_case> Optional mit Gemeinde-Resultaten – ideal für Fragen wie «Wie hat die Stadt Zürich bei der AHV-Reform abgestimmt?». Benötigt SRGSSR_CONSUMER_KEY und SRGSSR_CONSUMER_SECRET. Args: params (PolisVotationDetailInput): Enthält: - votation_id (str): Polis-ID aus democracy_polis_list_votations - lang (str): Ausgabesprache - include_municipalities (bool): Gemeinderesultate einschliessen Returns: str: JSON mit Polis-Abstimmun…
democracy_polis_list_electionsPolis – Wahlen seit 1900 (SRGSSR, API-Key nötig)read-onlyRuft historische Wahlen (National-/Ständerat, Regierungsrat) aus Polis ab. <use_case>Wahlanalysen (Kandidierende, Parteistimmen) seit 1900.</use_case> Polis enthält Wahlresultate seit 1900, inkl. Kandidatinnen- und Parteistimmen. Benötigt SRGSSR_CONSUMER_KEY und SRGSSR_CONSUMER_SECRET. Args: params (PolisElectionInput): Enthält: - year_from/year_to (int): Zeitraumfilter - lang (str): Ausgabesprache - limit (int): Max. Resultate Returns: str: JSON mit Wahlliste oder Hinweis zur Registrierung
democracy_polis_list_votationsPolis – Volksabstimmungen seit 1900 (SRGSSR, API-Key nötig)read-onlyRuft historische Volksabstimmungen aus dem SRGSSR Polis-System ab (seit 1900). <use_case>Historische Analysen mit Gemeinde-Granularität.</use_case> Polis enthält Resultate auf Gemeinde-Ebene, was für historische Analysen besonders wertvoll ist. Benötigt SRGSSR_CONSUMER_KEY und SRGSSR_CONSUMER_SECRET. Args: params (PolisListInput): Enthält: - year_from/year_to (int): Zeitraumfilter - lang (str): Sprache ('de', 'fr', 'it', 'rm', 'en') - limit/offset (int): Pagination Returns: str: JSON mit Polis-Abstimmungsliste oder Hinweis zur Registrierung
democracy_search_votesVolksabstimmungen suchen (Swissvotes)read-onlyDurchsucht alle eidgenössischen Volksabstimmungen seit 1848 (Swissvotes-Datenbank). <use_case>Politische/journalistische Recherche: Vorlagen nach Thema, Zeitraum oder Ergebnis finden.</use_case> Filtert nach Stichwort, Zeitraum, Rechtsform, Ergebnis und Politikbereich. Gibt Titel, Datum, Rechtsform, Ja-Anteil, Beteiligung und Bundesratsempfehlung zurück. Args: params (VoteSearchInput): Suchparameter mit optionalen Feldern: - keyword (str): Freitextsuche im Titel (DE/EN) - year_from/year_to (int): Zeitraumfilter - legal_form (str): 'initiative', 'obligatorisch', '…
Signals
- Stars
- 2
- Forks
- 0
- Open issues
- 0
- Weekly downloads
- 46
- Last commit
- Sep 26, 2026 (1 month ago)
- Last release
- Sep 26, 2026 (1 month ago)
- Last package publish
- Sep 26, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026) and the package registry.
Details
- Registry name
io.github.malkreide/swiss-democracy-mcp- Version
- 0.3.0
- Auth
- No auth
- Packages
- pypi swiss-democracy-mcp
- License
- MIT
- Repository
- github.com/malkreide/swiss-democracy-mcp
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
More from malkreide
- 0.647score
Fedlex MCP
malkreide
Swiss federal law, consultations (Fedlex) & TERMDAT terminology (LINDAS) via SPARQL
ConnectorAFreshness: ALocal★ 7↓ 312/wkClaude Code +5 - 0.632score
Swisstopo MCP
malkreide
Swiss federal geodata: geocoding, height, STAC, WMTS, OEREB and more
ConnectorAFreshness: ALocal★ 11↓ 65/wkClaude Code +5 - 0.632score
Zurich Opendata MCP
malkreide
City of Zurich weather, air quality, parking, geodata, Gemeinderat, tourism
ConnectorAFreshness: ALocal★ 8↓ 76/wkClaude Code +5 - 0.621score
Swiss Transport MCP
malkreide
OJP 2.0 journey planning, SIRI-SX disruptions, occupancy, fares, train formation
ConnectorAFreshness: ALocalRead-only★ 8↓ 45/wkClaude Code +5 - 0.610score
Parlament MCP
malkreide
Swiss Federal Parliament Curia Vista OData API
ConnectorAFreshness: ALocalRead-only★ 2↓ 60/wkClaude Code +5 - 0.606score
Swiss Road Mobility MCP
malkreide
GBFS shared mobility, EV charging, DATEX II traffic, Park & Rail
ConnectorAFreshness: ALocalRead-only★ 1↓ 59/wkClaude Code +5
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get Swiss Democracy MCP running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
Swiss Democracy MCP. Agent Mart. https://agentmart.dev/connectors/malkreide-swiss-democracy-mcp (last updated 2026-10-24)