Connect France Data and your agent gets 36 tools, among them autocomplete_commune, centres_sante_by_finess, centres_sante_in_radius. It answers at https://france-data-mcp.vercel.app/mcp over streamable HTTP, and it listed its tools to an anonymous client, so no sign-in was needed for that. Our probes reached it 6 of 6 times since 11 September 2026; the last check, on 21 October 2026, succeeded.
French public-data MCP: cross-ref health, demographics, business, geo & real-estate.
Description as the publisher wrote it.
| Tool | What it does |
|---|---|
autocomplete_commune | Recherche de communes françaises par nom, code postal ou code INSEE. Idéal pour autocomplétion. Source : geo.api.gouv.fr (DINUM/Etalab). Un (au moins) parmi `nom`, `codePostal`, `code` est requis. Alias acceptés : `q`/`query`/`search` → `no Inputs: nom, codePostal, code, limit, boostPopulation |
centres_sante_by_finess | Récupère le détail d'un Centre de Santé (CDS) par son numéro FINESS. Différenciateur métier vs `etablissement_by_finess` : expose **carte_vitale**, **APCV**, et **spécialités exercées sur place** (Annexe A CNAM). Retourne un `LookupResult` Inputs: num_finess, include_freshness |
centres_sante_in_radius | Recherche des Centres de Santé (CDS) dans un rayon géographique (PostGIS ST_DWithin). Source : Annuaire santé Ameli, Assurance Maladie (mention obligatoire L.1461-2 CSP — sync hebdomadaire CNAM). Différenciateur métier vs `etablissements_fi Inputs: lon, lat, radius_km, specialite_codes, accepte_carte_vitale, type_etab_codes |
compare_adresse_cnam_vs_finess | Compare l'adresse d'un centre de santé côté CNAM (Annuaire santé Ameli) vs FINESS DREES pour un même num_finess. Primitive brute SANS interprétation métier — retourne les deux adresses, un `score_dice` (0..1, informatif ; `null` si non comp Inputs: num_finess |
compare_raison_sociale_finess_vs_rpps | Compare la raison sociale FINESS DREES vs RPPS / Annuaire Santé ANS pour un même num_finess. Primitive brute SANS interprétation métier — retourne juste les deux libellés + un statut de comparaison. Le caller décide quoi faire de la diverge Inputs: num_finess |
cout_foncier | Coût du foncier d'une zone (point + rayon) : prix médian au m² RÉSIDENTIEL bâti — maisons + appartements UNIQUEMENT, PAS les locaux commerciaux/professionnels (+ quartiles p25/p75), volume de ventes, période couverte. Source DGFiP DVF (vent Inputs: lat, lon, rayon_km |
data_freshness | Retourne la fraîcheur des dumps de données ingérés côté serveur : FINESS / ANS (flux quotidien, ingéré le 1er et le 15 du mois), Annuaire Santé Ameli (hebdomadaire), RPPS / Annuaire Santé ANS (mensuel), Centres de Santé CNAM (hebdomadaire), |
densite_sante | Densité de santé pour 100 000 habitants — `cible: professionnels` (RPPS) OU `cible: etablissements` (FINESS). Niveau **département** (`code_dept`) OU **commune** (`code_insee` / `nom_commune`). Exactement un scope des trois requis. Croise l Inputs: cible, code_dept, code_insee, nom_commune, famille, profession_code |
dynamique_immobiliere | Dynamique immobilière et potentiel de croissance d'une zone (point + rayon). Combine 3 sources officielles : permis de construire (Sit@del/SDES, maille COMMUNE — logements autorisés/commencés récents → habitants attendus), zones AU du PLU ( Inputs: lat, lon, rayon_km |
enrichir_concurrents | Enquête approfondie sur le top concurrents (V0.23). Pour chaque FINESS : statut actif + taille d'équipe + historique récent (inspect_site), signal M&A — rebranding en cours — (compare raison sociale FINESS vs RPPS), groupe parent (entrepris Inputs: finess, max |
entreprise_by_siren | Récupère le détail d'une entreprise française par son SIREN (9 chiffres) : raison sociale, NAF, finances historiques, dirigeants, établissements. Source : DINUM Recherche Entreprises. **Format de retour** : objet `LookupResult` discriminé p Inputs: siren |
entreprises_in_radius | Recherche d'entreprises françaises avec filtres NAF, code postal, département ou rayon géographique. Couvre tous secteurs (santé via NAF 8690B, 4773Z, 8710A, 8621Z, etc.). Source : DINUM Recherche Entreprises (SIRENE + RNE). Renvoie CA, dir Inputs: naf, q, lon, lat, radiusKm, codePostal |
etablissement_by_finess | Récupère le détail complet d'un établissement de santé par son numéro FINESS (9 chiffres) : raison sociale, catégorie + famille, adresse complète (voie + CP + ville + code INSEE + département), coordonnées GPS, téléphone. Retourne un objet Inputs: num_finess, include_freshness |
etablissement_by_siret | Récupère le détail d'un établissement par son SIRET (14 chiffres) via l'API SIRENE INSEE V3.11 : raison sociale de l'unité légale, enseigne commerciale, NAF de l'établissement, dates de création/fermeture, statut administratif actif/fermé, Inputs: siret |
etablissements_finess_by_categorie | Liste des établissements FINESS par famille, avec filtre département ou commune optionnel. Pas de rayon — pour énumération exhaustive d'une zone administrative. 24 familles disponibles : mco, ssr, sld, had, psychiatrie, dialyse, ambulatoire Inputs: categorie, departement, code_insee, nom_commune, limit, include_freshness |
etablissements_finess_in_radius | Recherche d'établissements de santé FINESS dans un rayon géographique (PostGIS ST_DWithin). Filtrable par familles. 24 valeurs disponibles : mco, ssr, sld, had, psychiatrie, dialyse, ambulatoire, labo, imagerie, pharmacie, msp_cpts, ehpad, Inputs: lon, lat, radius_km, familles, limit, include_freshness |
finess_sirene_coverage_in_radius | Compare la couverture du référentiel FINESS DREES (sites physiques agréés LBM/pharmacie/etc.) au référentiel SIRENE DINUM (SIRET physiques actifs au NAF cible) dans un rayon géographique. Métrique : ratio sites FINESS / SIRET SIRENE. Utile Inputs: lon, lat, radius_km, naf, familles, max_unites_legales |
geocode_adresse | Géocode une adresse française en coordonnées GPS. Source : IGN Géoplateforme (data.geopf.fr). Précision au numéro de rue. Le champ `score` (0-1) qualifie la fiabilité du match : >= 0.8 fiable, < 0.5 = match douteux (souvent un fallback rue/ Inputs: adresse, codePostal, codeCommune |
get_commune_by_code | Récupère une commune par son code INSEE. Retourne un objet `LookupResult` discriminé par `found`. `found: true` → champs commune à plat (nom, codesPostaux, centre…). `found: false` → `{ found: false, key, lookupStatus: 'not_found', message Inputs: code |
historique_etablissement | Reconstitue la timeline complète d'un établissement de santé (ouvertures, fermetures, changements de NAF/enseigne) en croisant FINESS DREES ↔ resolver SIRET (RPPS + DINUM) ↔ SIRENE INSEE V3.11. Lit les `periodesEtablissement` complètes pour Inputs: num_finess |
inspect_site | Vue 360 d'un établissement de santé en 1 appel (V0.10). Pendant naturel de `panorama_sante_territoire` côté **site** : agrège en parallèle (a) identification FINESS DREES (raison sociale, adresse, téléphone), (b) statut administratif SIRENE Inputs: num_finess, rpps_limit, historique_detail |
lister_nomenclature | Découverte des nomenclatures de codes du serveur (tool unique paramétré par `referentiel`) — à appeler avant de filtrer un autre tool plutôt que deviner les codes. ⚠️ Les 3 nomenclatures sont DISTINCTES : un même nombre y désigne des choses Inputs: referentiel, limit, include_freshness, include_specialites, profession_code |
panorama_implantation_complet | Étude d'implantation labo en 1 appel (V0.23). Géocode l'adresse cible puis agrège EN PARALLÈLE 7 sections : `territoire` (densités PS commune vs national + établissements), `demande` (profil démographique du BASSIN — rayon — via profil_iris Inputs: adresse, point, code_insee, rayon_km |
panorama_sante_territoire | Panorama santé d'une commune française en 1 appel (V0.9). Agrège en parallèle : population (INSEE Melodi), densités médecins + infirmiers + pharmaciens avec comparaison nationale (méthodo DREES), nombre d'établissements FINESS par famille ( Inputs: code_insee, nom_commune, departement, finess_familles |
population | Population d'une COMMUNE (code INSEE 5 car.), d'un DÉPARTEMENT (2-3 car.) OU d'un IRIS infracommunal (9 car.) — granularité auto-détectée par la longueur du `code`. Retourne un `LookupResult` discriminé par `found`. - IRIS (9 car., ex `7511 Inputs: code |
professionnel_by_rpps | Récupère la fiche complète d'un PS par identifiant national (`rpps_id` / IDNPS, 11 ou 12 chiffres — IDs émis depuis 2020 ont un préfixe `"81"` = 12 chars ; anciens IDs = 11 chars). Renvoie N entrées quand le PS exerce sur plusieurs sites (1 Inputs: rpps_id, include_freshness |
professionnels_in_radius | Recherche de professionnels de santé libéraux conventionnés dans un rayon géographique. Précision géo HYBRIDE depuis le géocodage BAN (Chantier C) : ~77 % des PS sont géolocalisés à l'adresse précise (rue/bâtiment, `distance_km` exacte au m Inputs: lon, lat, radius_km, specialite_codes, type_ps_codes, limit |
professionnels_par_specialite_dept | Liste des professionnels de santé libéraux conventionnés d'un département, avec filtres optionnels par spécialité ou type de PS. Pour énumération administrative — pas de rayon. Codes type_ps Ameli présents en base (3) : '1' médecins, '2' au Inputs: departement, specialite_code, type_ps_code, limit, offset, dedupe_by_ps |
professionnels_rpps_in_radius | Trouve les PS dans un rayon via RPPS (Annuaire Santé ANS — **tous statuts** : libéraux + salariés + mixtes + remplaçants ; vs `professionnels_in_radius` Ameli = libéraux conventionnés seuls). **Param critique `precise_only`** — Défaut `fals Inputs: center, radius_km, profession_codes, savoir_faire_codes, mode_exercice_codes, include_etudiants |
professionnels_rpps_par_dept | Liste tous les PS d'un département via RPPS (libéraux + salariés). Pour les libéraux conventionnés uniquement, préférer `professionnels_par_specialite_dept` (Ameli). Re-paginer via `offset` tant que `truncated=true`. Chaque résultat géoloca Inputs: departement, profession_code, savoir_faire_code, mode_exercice_code, include_etudiants, include_agents_publics |
profil_iris | Profil démographique au grain QUARTIER (IRIS) — la « demande » d'un territoire (âge, CSP, familles, revenu), à croiser avec l'offre de soins pour l'aide à l'implantation. Source : INSEE RP 2022 + FILOSOFI 2021 (tables ingérées, géo 01/01/20 Inputs: lat, lon, code_iris, rayon_km |
reconcilier_finess_sirene | Croise FINESS DREES ↔ SIRENE INSEE V3.11 et calcule un score de cohérence (Sørensen-Dice sur bigrammes) pour chaque SIRET candidat. Utile pour confirmer/infirmer un appariement num_finess ↔ SIRET avant prospection ou cross-check qualité. Lo Inputs: num_finess |
reverse_geocode | Géocodage inverse : à partir de coordonnées GPS, retrouve l'adresse la plus proche. Source : IGN Géoplateforme. Couverture France métropolitaine + DOM uniquement : des coordonnées hors zone (ex. New York) ou en pleine mer renvoient `null` ( Inputs: lon, lat |
rpps_dans_etablissement | Liste les PS rattachés à un établissement FINESS (`num_finess` 9 chiffres). Pivot RPPS↔FINESS — répond à "qui travaille dans ce labo / hôpital / clinique ?". Le `mode_exercice` distingue les libéraux exerçant sur place (vacations) des salar Inputs: num_finess, include_etudiants, include_agents_publics, limit, include_freshness |
rpps_search_by_name | Trouve un PS par identité (matching trigram tolérant aux accents/typos). Usage : "Dr Martin à Paris" → `nom: "Martin", departement: "75"`. Nom obligatoire ; `prenom` et `departement` affinent. Tri par `match_score` ∈ [0..1] décroissant (sco Inputs: nom, prenom, departement, include_etudiants, include_agents_publics, limit |
verifier_site_actif | Vérifie si un établissement de santé FINESS est encore en activité en croisant FINESS DREES ↔ RPPS (pivot SIRET) ↔ DINUM (liste complète des SIRET du SIREN, incluant les fermés). Détecte les SIRET fermés encore listés actifs côté FINESS (DR Inputs: num_finess |
Every block below points at https://france-data-mcp.vercel.app/mcp. Pick your client and copy.
claude mcp add --transport http france-data https://france-data-mcp.vercel.app/mcp
{
"mcpServers": {
"france-data": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://france-data-mcp.vercel.app/mcp"]
}
}
}{
"mcpServers": {
"france-data": {
"url": "https://france-data-mcp.vercel.app/mcp"
}
}
}{
"servers": {
"france-data": {
"type": "http",
"url": "https://france-data-mcp.vercel.app/mcp"
}
}
}{
"context_servers": {
"france-data": {
"url": "https://france-data-mcp.vercel.app/mcp"
}
}
}{
"mcpServers": {
"france-data": {
"serverUrl": "https://france-data-mcp.vercel.app/mcp"
}
}
}{
"mcpServers": {
"france-data": {
"url": "https://france-data-mcp.vercel.app/mcp"
}
}
}name: France Data
version: 0.0.1
schema: v1
mcpServers:
- name: France Data
type: streamable-http
url: https://france-data-mcp.vercel.app/mcp{
"mcpServers": {
"france-data": {
"httpUrl": "https://france-data-mcp.vercel.app/mcp"
}
}
}{
"mcpServers": {
"france-data": {
"type": "http",
"url": "https://france-data-mcp.vercel.app/mcp"
}
}
}{
"mcpServers": {
"france-data": {
"url": "https://france-data-mcp.vercel.app/mcp"
}
}
}goose://extension?url=https%3A%2F%2Ffrance-data-mcp.vercel.app%2Fmcp&type=streamable_http&id=france-data&name=France%20Data
It answered our last check on 21 October 2026 in 96 ms. Over 6 checks since 11 September 2026 it answered 6. Status here comes from Neuronto's own probes, not from the publisher.
36, as returned by the server's own tools/list on 13 September 2026: autocomplete_commune, centres_sante_by_finess, centres_sante_in_radius, compare_adresse_cnam_vs_finess, compare_raison_sociale_finess_vs_rpps, cout_foncier, data_freshness, densite_sante, and 28 more.
It answered our last check on 21 October 2026 in 96 ms. Over 6 checks since 11 September 2026 it answered 6.
Put the server under mcpServers in ~/.cursor/mcp.json with the URL https://france-data-mcp.vercel.app/mcp. The exact JSON is above, with the same setup for Claude Code, Claude Desktop, VS Code, Windsurf, Zed, Gemini CLI and the rest.
It listed its tools to an anonymous client, so reading the tool list needs no key. Individual tools can still ask for credentials in their own inputs.
Publisher: io.github.cturkieh. Endpoint host: france-data-mcp.vercel.app. ARD identifier: urn:air:io.github.cturkieh:mcp:france-data-mcp.
First indexed 10 September 2026. The tools are exactly what the server returned; nothing on this page
is inferred from its name. Ranking in Neuronto search is never for sale.