# André — Analyse électorale française MCP server

Résultats des élections françaises 1999-2026 par bureau de vote, socio-démo INSEE et cartes.

## Links
- Registry page: https://www.getdrio.com/mcp/vote-andre-elections
- Repository: https://github.com/joelgombin/andre-mcp
- Website: https://andre.vote

## Install
- Endpoint: https://mcp.andre.vote/mcp
- Auth: Not captured

## Setup notes
- Remote endpoint: https://mcp.andre.vote/mcp

## Tools
- query_elections (Résultats électoraux) - Requête les données électorales françaises (1999-2026).

        Niveaux territoriaux : NATIONAL (aucun filtre), RÉGIONAL (region_code),
        DÉPARTEMENTAL (departement_code), COMMUNAL (commune_code).

        Actions de base : list_elections, query_results, list_bureaux, query_bureau,
        query_by_bureau, rank_bureaux, list_circonscriptions, query_circonscription,
        list_cantons, query_canton, search_candidate, query_candidatures, etc.

        Actions « panel » (1 appel = analyse complète, évite les boucles) :
        - compare_elections : compare deux scrutins pour un territoire
          (election_id + compare_to_election + commune_code|departement_code,
          candidate_name optionnel).
        - query_all_circonscriptions : vainqueur de CHAQUE circonscription d'un
          territoire en un appel (election_id + commune_code|departement_code,
          législatives uniquement).
        - vote_reserve : score d'une famille + abstention par bureau de vote sur
          les scrutins récents comparables (commune_code + famille).
        - select_communes : sélectionne/classe des communes par critères géo +
          population + électoraux (region_code/departement_code/epci/commune_codes,
          population_min/max, commune_metric, condition, sort_by, limit, order ;
          commune_metric/condition nécessitent election_id).
        - cross_election_panel : évolution d'un sujet (famille ou nuance_code) par
          commune sur N scrutins (elections=ids séparés par des virgules + scope
          commune_code/departement_code/region_code/commune_codes).
        - bureau_breakdown : pivot par bureau (top_n nuances/blocs + participation,
          with_sociodem optionnel) pour commune_code + election_id.
         Endpoint: https://mcp.andre.vote/mcp
- query_admin (Divisions administratives) - Requête les divisions administratives françaises.

        Actions : search_commune, get_commune, search_postal,
        list_epci, get_epci, list_cantons, list_departements, list_regions.
         Endpoint: https://mcp.andre.vote/mcp
- query_elus (Élus de la République) - Requête les élus de la République française (base BRÉF).

        Actions : search_elu, list_mandate_types, list_elus.
         Endpoint: https://mcp.andre.vote/mcp
- query_sociodem (Données socio-démographiques) - Requête les données socio-démographiques au niveau bureau de vote.

        Données INSEE RP 2022 + Filosofi 2021, interpolées IRIS→BDV.
        Actions : list_variables, profile, indices, rank, compare.
         Endpoint: https://mcp.andre.vote/mcp
- query_dlp (Profil social des candidats municipaux) - Requête les données DLP (composition sociale des candidats municipaux 2020).

        ~546 000 candidats dans ~10 000 communes (≥1 000 hab.).
        Classes : CDOM (dominant), CMOY (moyen), CSUB (subalterne), RET (retraité), AUTRES.
        Actions : summary, composition, parite, listes, candidats, professions, sortants.
         Endpoint: https://mcp.andre.vote/mcp
- generate_map (Carte électorale) - Génère une carte électorale (PNG) pour une élection.

        Paramètres :
        - election_id : identifiant élection (ex: '2024_legi_t1', '2020_muni_t2')
        - metric : 'family' (famille politique en tête) ou 'nuance' (score d'une nuance)
        - geography : 'bv' (bureau de vote, défaut) ou 'commune' (carte nationale)
        - department : code département (ex: '13'). Requis pour geography='bv' sauf si commune fourni.
        - commune : code commune (ex: '13055' pour Marseille). Centre la carte sur cette commune.
        - nuance : code nuance quand metric='nuance' (ex: 'RN', 'LFI', 'ENS')
        - region : code région pour geography='commune' (ex: '93' pour PACA)

        Exemples :
        - Carte par famille, Bouches-du-Rhône : election_id='2024_legi_t1', department='13'
        - Carte score RN, Marseille : election_id='2024_legi_t1', commune='13055', metric='nuance', nuance='RN'
        - Carte nationale : election_id='2024_euro_t1', geography='commune'
         Endpoint: https://mcp.andre.vote/mcp
- simulate_fusions (Simulation de fusions de listes) - Simule les scénarios de fusion de listes municipales entre T1 et T2.

        Actions : 'status' (classer les listes après T1), 'simulate' (projections T2).
        Uniquement pour les élections municipales.
         Endpoint: https://mcp.andre.vote/mcp
- export_data (Export de données) - Exporte des données électorales vers un fichier téléchargeable (CSV, JSON, TSV).

        Deux modes : data (contenu inline) ou source_path (chemin vers fichier existant).
         Endpoint: https://mcp.andre.vote/mcp
- visualize (Visualisation graphique) - Crée une visualisation Plotly (retourne le spec JSON).

        Deux modes :
        - Spec libre : fournir 'spec' (dict Plotly complet {data, layout})
        - Assisté : fournir chart_type + data + x + y

        Types supportés : bar, line, scatter, histogram, box, violin, heatmap, treemap.
         Endpoint: https://mcp.andre.vote/mcp
- create_data_table (Tableau de données) - Crée un tableau de données formaté à partir de données structurées.

        Utile pour présenter des résultats calculés ou combinés.
        Retourne un tableau texte formaté.
         Endpoint: https://mcp.andre.vote/mcp
- query_sql (Requête SQL (lecture seule)) - Exécute une requête SQL directe sur la base DuckDB (read-only).

        Tables principales :
        - general_results : résultats généraux par bureau de vote
        - candidats_results : résultats par candidat par bureau de vote
        - elections_disponibles : liste des élections (id_election, nb_bureaux, total_inscrits)
        - candidats_avec_nuances : candidats avec famille politique (si nuances enrichies)
        - resultats_par_famille : résultats agrégés par famille politique
        - communes, epci, departements, regions : divisions administratives
        - bv_sociodemographique : données socio-démo par bureau de vote

        ATTENTION — colonnes de general_results (noms avec espaces, à quoter) :
        id_election, id_brut_miom, "Code du département", "Code de la commune" (SANS préfixe dept, ex: '055' pour Marseille),
        "Libellé de la commune", Inscrits, Abstentions, Votants, Blancs, Nuls, Exprimés.

        PRÉFÉRER query_elections pour les analyses standard — query_sql est pour les requêtes ad hoc avancées.

        Exemple :
        SELECT id_election, ROUND(100.0 * SUM(Abstentions) / NULLIF(SUM(Inscrits), 0), 1) as abstention_pct
        FROM general_results WHERE "Code du département" = '13' AND "Code de la commune" = '055'
        GROUP BY id_election ORDER BY id_election DESC LIMIT 5
         Endpoint: https://mcp.andre.vote/mcp

## Resources
- andre://references/methodologies - Méthodologies d'analyse électorale (réserves de voix, typologies, PCA). MIME type: text/plain
- andre://references/data_schema - Schéma des données électorales (3M+ lignes, 1999-2026). MIME type: text/plain
- andre://references/political_colors - Couleurs officielles des familles et nuances politiques (JSON). MIME type: text/plain
- andre://references/election_dates - Dates et métadonnées des 55 élections (1999-2026, JSON). MIME type: text/plain
- andre://references/victory_rules - Règles de victoire par type d'élection. MIME type: text/plain
- andre://references/nuances - ~90 codes de nuance politique du Ministère de l'Intérieur. MIME type: text/plain
- andre://references/insee_variables - Variables socio-démographiques INSEE (RP 2022 + Filosofi 2021). MIME type: text/plain
- andre://skills/electoral-analysis - Skill principal : workflows, debugging, bonnes pratiques. MIME type: text/plain
- andre://references/sql_schema - Schéma SQL DuckDB — tables, vues et colonnes pour les requêtes query_sql.

        IMPORTANT : lire cette resource avant d'écrire des requêtes SQL directes.
        Les noms de colonnes contiennent des espaces et accents (à quoter avec ""). MIME type: text/plain

## Prompts
- analyser_commune - Analyse électorale complète d'une commune. Arguments: commune
- reserves_de_voix - Identification des réserves de voix pour une force politique. Arguments: election, commune, force_politique
- carte_electorale - Génération d'une carte électorale thématique. Arguments: election, departement
- comparer_elections - Comparaison temporelle entre deux élections. Arguments: election1, election2, territoire
- resultats_rapides - Résultats synthétiques d'une élection. Arguments: election

## Metadata
- Owner: vote.andre
- Version: 1.28.1
- Runtime: Streamable Http
- Transports: HTTP
- License: Not captured
- Language: Not captured
- Stars: Not captured
- Updated: Jul 25, 2026
- Source: https://registry.modelcontextprotocol.io
