André — Analyse électorale française
Provides capabilities to generate Plotly visualizations (bar, line, scatter, etc.) from electoral data.
Exposes server metrics in Prometheus format for monitoring.
André MCP — Analyse électorale française
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/mcpClaude 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.jsonWindows :
%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.
Related MCP server: mcp-trinv-server
Outils
Outil | Description |
| Résultats électoraux (55 élections, 1999-2026) |
| Divisions administratives (communes, EPCI, cantons, départements) |
| Élus de la République (base BRÉF, Zenodo) |
| Données socio-démographiques INSEE au niveau bureau de vote |
| Requêtes SQL directes sur la base DuckDB (lecture seule) |
| Composition sociale des candidats municipaux 2020 |
| Cartes électorales multi-couches |
| Visualisations Plotly (bar, line, scatter…) |
| Simulation de fusions de listes municipales |
| Export CSV/JSON/TSV |
| Tableaux 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 territoirequery_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 électorauxcross_election_panel— évolution d'une famille ou d'une nuance par commune sur N scrutinsbureau_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 électoralesandre://references/political_colors— couleurs des familles politiquesandre://references/election_dates— dates des 55 électionsandre://references/victory_rules— règles de victoire par type d'électionandre://references/nuances— codes de nuance politiqueandre://references/insee_variables— variables socio-démographiques INSEEandre://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_sociodemQuelles sont les communes les plus abstentionnistes des Bouches-du-Rhône
aux européennes 2024 ?
→ query_sql avec une requête agrégéeDonnées
Exclusivement des sources publiques officielles :
Source | Licence | Contenu |
Licence Ouverte 2.0 | Résultats électoraux, candidatures | |
Licence Ouverte 2.0 | Contours administratifs | |
Licence Ouverte 2.0 | Données socio-démographiques | |
CC BY 4.0 | Élus de la République | |
CC BY 4.0 | Codage 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,LIMITde sécurité injecté sur lesSELECT/WITHsans 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-mcpEn 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).
Maintenance
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/joelgombin/andre-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server