France Data MCP

France Data MCP

France Data MCP lets AI agents query, cross-reference and automatically enrich multiple French public registries through a unified MCP interface. France Data MCP provides a French territorial intelligence layer designed for multi-source reasoning and agentic orchestration.

Category
Visit Server

README

france-data-mcp

MCP TypeScript qui croise et réconcilie 6 référentiels publics français (INSEE SIRENE, FINESS DREES, RPPS / Annuaire Santé ANS, Annuaire Santé Ameli, IGN, DINUM). Détecte les SIRET fermés invisibles côté DREES, distingue site vs groupe, expose la fraîcheur de chaque source.

License: MIT CI MCP npm smithery badge

🇫🇷 Documentation principale en français. English version →


Installation

Option 1 — URL distante (claude.ai, Claude Code, Cursor)

https://france-data-mcp.vercel.app/mcp

Client Config
claude.ai Settings → Connectors → Add custom connector → URL ci-dessus
Claude Code ~/.claude.jsonmcpServers{ "type": "http", "url": "..." }
Cursor ~/.cursor/mcp.json → même configuration

Option 2 — Wrapper npm stdio (Claude Desktop natif, autres clients)

{
  "mcpServers": {
    "france-data": {
      "command": "npx",
      "args": ["-y", "france-data-mcp"]
    }
  }
}

Le wrapper forwarde stdio → endpoint HTTPS distant. Aucune DB locale à provisionner. Override possible : FRANCE_DATA_MCP_URL=https://mon-miroir.example/mcp.

Détails par client + self-hosting : docs/installation-claude.md.


Pourquoi ce projet

Les APIs officielles (INSEE, FINESS DREES, RPPS ANS, Annuaire Ameli, IGN, DINUM) existent mais sont éclatées, sous-documentées et pleines de pièges : rate limits, formats CSV propriétaires, latence DREES de 1-2 mois, diffusion partielle INSEE, mappings inconsistants Ameli ↔ RPPS.

france-data-mcp est le premier MCP qui croise factuellement ces sources pour répondre à des questions concrètes — cartographie d'offre de soins, étude de marché territoriale, journalisme local, civic-tech.


Périmètre — 6 sources publiques croisées

  • 🗺️ Territoire : geo.api.gouv.fr (DINUM, communes), IGN Géoplateforme (géocodage)
  • 🏥 Santé : FINESS / DREES (~95 K établissements), Annuaire Santé Ameli (~462 K libéraux), RPPS / ANS (~2,2 M PS actifs)
  • 🏢 Entreprises : DINUM Recherche Entreprises + INSEE SIRENE V3.11

Cross-source : réconciliation FINESS ↔ RPPS ↔ SIRENE pour détecter SIRET fermés, rebrandings, raisons sociales périmées.


Outils MCP (25 tools)

🗺️ Territoire (4)

autocomplete_commune · get_commune_by_code · geocode_adresse · reverse_geocode

🏢 Entreprises (3)

entreprises_in_radius · entreprise_by_siren (+ fallback INSEE SIRENE V3.11) · etablissement_by_siret

🏥 Établissements santé FINESS (3)

etablissements_finess_in_radius · etablissements_finess_by_categorie · etablissement_by_finess

24 familles couvrant ~92 % du volume. Source DREES rafraîchie bimestriellement.

👨‍⚕️ Professionnels libéraux Ameli (4)

professionnels_in_radius · professionnels_par_specialite_dept · lister_specialites_ameli · lister_types_ps_ameli

Libéraux conventionnés uniquement (~462 K).

🩺 Tous les PS — RPPS / Annuaire Santé ANS (5)

professionnels_rpps_in_radius · professionnels_rpps_par_dept · rpps_dans_etablissement · rpps_search_by_name (fuzzy) · professionnel_by_rpps (+ fallback FHIR ANS)

~2,2 M PS actifs (libéraux + salariés privés + hospitaliers contractuels + agents publics). Par défaut : Civils uniquement.

🔀 Croisement multi-source (6)

Réconciliation FINESS ↔ RPPS ↔ SIRENE — faits bruts sans interprétation métier.

data_freshness · verifier_site_actif · compare_raison_sociale_finess_vs_rpps · historique_etablissement · reconcilier_finess_sirene · finess_sirene_coverage_in_radius


Garde-fous publics

  • Rate limit : 60 req/min par IP sur tools/call (les méthodes meta restent libres). Au-delà : erreur -32000 avec data.retryAfterSeconds.
  • Logs JSON structurés par requête : ts, method, tool, ip_hash (SHA-256), duration_ms, outcome. Aucune IP en clair, aucun argument tool persisté (RGPD-friendly).
  • Sentry error monitoring sur les 500 internes (tags mcp.method, mcp.tool, mcp.outcome).

Usage intensif : throttler côté client ou self-héberger.


État du projet

V0.8.2 — en production. Référencé sur le registry MCP Anthropic officiel (io.github.cturkieh/france-data-mcp), mcp.so et glama.ai. 30 tools avec annotations MCP + outputSchema (spec 2025-06-18, structuredContent émis), ~95 K FINESS, ~462 K Ameli, ~2,2 M RPPS actifs. 642 tests verts (19 integration tests Supabase requièrent des creds locaux), TypeScript strict, Biome clean. Crons GitHub Actions actifs (FINESS bimensuel, Ameli hebdo, RPPS mensuel). Sentry monitoring live (filtre bot-noise actif). V0.8.2 perf : lister_specialites_medicales passe de 22 s (timeout 57014) à <100 ms via matview pré-agrégée rpps_savoir_faire_stats (~250 rows vs scan 495 K).

V0.8 ajoute 5 tools croisant INSEE Melodi (population de référence) avec RPPS et FINESS : population_par_commune, population_par_departement, densite_professionnels_sante (méthodo DREES, ratio médecins/100k hab. + comparaison nationale), densite_etablissements_sante (labos / pharmacies / EHPAD / hôpitaux par famille FINESS), lister_specialites_medicales (découverte des codes savoir_faire RPPS pour le LLM).

Voir CHANGELOG pour l'historique.

Roadmap

  • [ ] V0.8.1 — Densité commune (RPC count_rpps_by_commune via code postal), panorama_sante_territoire agrégateur, polish docs/installation-claude.md (drift count tools)
  • [ ] V0.9+ — Support DOM-COM widening (code_insee CHAR(5)), INSEE IRIS (démographie infra-communale)

Contribuer

Ouvrir une issue pour discuter avant d'envoyer une PR.


Licence

MIT — voir LICENSE. Les données restent sous leurs licences respectives :

Source Licence Mention obligatoire
FINESS Licence Ouverte (Etalab) « Source : FINESS, ANS/DREES »
Annuaire Santé Ameli Art. L.1461-2 CSP « Source : Annuaire santé Ameli, Assurance Maladie »
DINUM Recherche Entreprises Licence Ouverte « Source : Annuaire des Entreprises, DINUM »
INSEE Licence Ouverte « Source : Insee »
IGN Géoplateforme Licence Ouverte « © IGN/Géoplateforme »
geo.api.gouv.fr Licence Ouverte « Source : geo.api.gouv.fr (Etalab) »

Remerciements

DINUM, Etalab, Atlasanté, ANS, INSEE, IGN pour la qualité de leurs APIs. data.gouv.fr pour l'animation civic-tech. Anthropic pour le protocole MCP.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured