André MCP — Analyse électorale française

MCP serverDev tools

This community-built addition gives your AI access to French election results from 1999 to 2026, broken down by individual voting precinct. Your AI can pair those results with socio-demographic data from INSEE, the French national statistics office, and work with maps of the results. That makes it easy to ask questions about how France has voted, precinct by precinct.

Use André MCP — Analyse électorale française in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add André MCP — Analyse électorale française and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use André MCP to query elections

Details

Available today. Use it from your connected AI after setup.

After adding it, ask your AI about a French election or a specific voting precinct. You can also ask it to connect the results with population data or show them on a map.

André MCP — Analyse électorale françaiseStart free

What your AI can do with it

  • Look up election results by voting precinct for 1999 to 2026
  • Compare results between precincts or between elections
  • Combine voting results with INSEE socio-demographic data
  • Show results on maps
  • Describe how a precinct's population makeup relates to how it voted

Install André MCP — Analyse électorale française

The server’s own address, for the clients that take one directly. Or connect Ahel once and every client you use reads it from one address, with the account kept on Ahel rather than in each client’s config.

  • Claude Code

    claude mcp add --transport http --scope user andr-mcp-analyse-lectorale-fran 'https://mcp.andre.vote/mcp'

    Run it once in your project, then open /mcp to approve any sign-in the server asks for.

  • Claude Desktop

    https://mcp.andre.vote/mcp

    Add a custom connector in Settings, paste this address, and approve the sign-in.

  • Cursor

    cursor://anysphere.cursor-deeplink/mcp/install?name=andr-mcp-analyse-lectorale-fran&config=eyJ1cmwiOiJodHRwczovL21jcC5hbmRyZS52b3RlL21jcCJ9

    Open the link and Cursor adds the server at that address.

  • ChatGPT

    https://mcp.andre.vote/mcp

    In Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.

  • Codex

    codex mcp add andr-mcp-analyse-lectorale-fran --url 'https://mcp.andre.vote/mcp'

    Run it once, then sign in with codex mcp login andr-mcp-analyse-lectorale-fran if the server asks for an account.

From the project's README

As published by joelgombin/andre-mcp in README.md.

Serveur MCP (Model Context Protocol) donnant accès aux résultats de 55 élections françaises (1999-2026) au niveau du bureau de vote, croisés avec les données socio-démographiques de l'INSEE, la base des élus de la République et les découpages administratifs officiels.

Serveur hébergé, prêt à l'emploi : https://mcp.andre.vote/mcp Aucune installation, aucun téléchargement de données, aucune authentification.

Ce dépôt contient le code du serveur MCP, publié sous licence MIT. Il est un miroir automatique de andre-mcp/ dans le monorepo André, qui reste la source de vérité : les contributions passent par des issues ici, pas par des commits directs (ils seraient écrasés au prochain miroitage).

Connexion

Claude Code

claude mcp add --transport http andre https://mcp.andre.vote/mcp

Claude Desktop, Cursor, VS Code…

{
  "mcpServers": {
    "andre": {
      "type": "http",
      "url": "https://mcp.andre.vote/mcp"
    }
  }
}

Emplacement du fichier pour Claude Desktop :

  • macOS : ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows : %APPDATA%\Claude\claude_desktop_config.json

Pour les clients qui ne gèrent pas encore le transport HTTP :

{
  "mcpServers": {
    "andre": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://mcp.andre.vote/mcp"]
    }
  }
}

Limite d'appels d'outils sur Claude.ai / Claude Desktop

Claude impose une limite d'environ 15-20 appels d'outils par tour de conversation. Les analyses approfondies (résultats T1+T2, bureaux de vote, croisement socio-démographique…) peuvent l'atteindre. Cliquez Continuer pour reprendre. Pour des analyses complètes sans interruption, andre.vote n'a pas cette contrainte.

Outils

OutilDescription
query_electionsRésultats électoraux (55 élections, 1999-2026)
query_adminDivisions administratives (communes, EPCI, cantons, départements)
query_elusÉlus de la République (base BRÉF, Zenodo)
query_sociodemDonnées socio-démographiques INSEE au niveau bureau de vote
query_sqlRequêtes SQL directes sur la base DuckDB (lecture seule)
query_dlpComposition sociale des candidats municipaux 2020
generate_mapCartes électorales multi-couches
visualizeVisualisations Plotly (bar, line, scatter…)
simulate_fusionsSimulation de fusions de listes municipales
export_dataExport CSV/JSON/TSV
create_data_tableTableaux de données formatés

Tous les outils portent un title et une annotation readOnlyHint / destructiveHint. Aucun outil n'est destructif : le serveur est en lecture seule sur des données publiques.

query_elections propose des actions « panel » qui répondent en un seul appel, ce qui limite le risque d'atteindre le plafond d'appels d'outils :

  • compare_elections — compare deux scrutins pour un territoire
  • query_all_circonscriptions — vainqueur de chaque circonscription (législatives)
  • vote_reserve — score d'une famille + abstention par bureau (réserves de voix)
  • select_communes — sélectionne/classe des communes par critères géographiques, démographiques et électoraux
  • cross_election_panel — évolution d'une famille ou d'une nuance par commune sur N scrutins
  • bureau_breakdown — pivot par bureau (top nuances + participation, socio-démo en option)

Resources documentaires

Références consultables automatiquement par le client :

  • andre://references/methodologies — méthodologies d'analyse (réserves, typologies, ACP)
  • andre://references/data_schema — schéma des données électorales
  • andre://references/political_colors — couleurs des familles politiques
  • andre://references/election_dates — dates des 55 élections
  • andre://references/victory_rules — règles de victoire par type d'élection
  • andre://references/nuances — codes de nuance politique
  • andre://references/insee_variables — variables socio-démographiques INSEE
  • andre://skills/electoral-analysis — skill principal (workflows, débogage)

Prompts pré-construits

  • analyser_commune — analyse électorale complète d'une commune
  • reserves_de_voix — identification des réserves pour une force politique
  • carte_electorale — carte thématique d'un département
  • comparer_elections — comparaison temporelle entre deux scrutins
  • resultats_rapides — résultats synthétiques d'une élection

Exemples

Analyse les résultats des législatives 2024 à Marseille
→ query_admin (code 13055) puis query_elections puis query_sociodem
Quelles sont les communes les plus abstentionnistes des Bouches-du-Rhône
aux européennes 2024 ?
→ query_sql avec une requête agrégée

Données

Exclusivement des sources publiques officielles :

SourceLicenceContenu
data.gouv.frLicence Ouverte 2.0Résultats électoraux, candidatures
IGN / EtalabLicence Ouverte 2.0Contours administratifs
INSEELicence Ouverte 2.0Données socio-démographiques
BRÉF (Zenodo)CC BY 4.0Élus de la République
FERDCC BY 4.0Codage politique à trois niveaux

Les données socio-démographiques sont interpolées de l'IRIS vers le bureau de vote via les pondérations de l'Observatoire national des bureaux de vote.

Limites & robustesse

Le serveur expose des données publiques en lecture seule, sans authentification. Garde-fous en place :

  • query_sql — connexion DuckDB en lecture seule, requêtes d'écriture bloquées, LIMIT de sécurité injecté sur les SELECT/WITH sans limite explicite.
  • Garde de concurrence — nombre d'exécutions lourdes simultanées borné, avec une réponse gracieuse « serveur occupé » au-delà.
  • Métriques — séries Prometheus sur /metrics (outil, latence, taux d'erreur, concurrence). Ni les arguments, ni les résultats, ni les identifiants de session ne sont exposés.

Exécution locale

Le serveur démarre et répond à l'introspection (tools/list, resources/list, prompts/list) sans aucune donnée :

pip install .
python -c "from andre_mcp.server import run; run()"

ou via Docker :

docker build -t andre-mcp .
docker run -i --rm andre-mcp

En revanche, les appels d'outils ne fonctionnent pas encore hors du monorepo : le serveur délègue ses requêtes à des scripts (query_elections.py, query_admin.py, generate_map.py…) qui n'ont pas encore été versés dans le paquet, et le jeu de données complet (~1,5 Go) doit être provisionné. Un paquet PyPI autonome est en préparation.

Pour un usage réel, connectez-vous au serveur distant.

Registre

Publié au registre officiel MCP sous le nom vote.andre/elections (namespace vérifié par DNS sur andre.vote). Voir server.json.

Licence

MIT — voir LICENSE.

Les données restent soumises aux licences de leurs producteurs respectifs (Licence Ouverte 2.0, CC BY 4.0).

Tools it offers (11)

What this server listed when Ahel dialed its public endpoint in Oct 2026, with no key and no account of yours. The names are the server’s own.

  • query_elections
  • query_admin
  • query_elus
  • query_sociodem
  • query_dlp
  • generate_map
  • simulate_fusions
  • export_data
  • visualize
  • create_data_table
  • query_sql

Signals

Last commit
Sep 2026
Advanced
Delivery
elections MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
Item type
mcp-server
Key
vote-andre-elections
Source
github.com/joelgombin/andre-mcp
Hosted endpoint
https://mcp.andre.vote/mcp