mcp-service-public
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-service-publiccompare taxes and real estate prices in Lyon and Bordeaux"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-service-public
MCP (Model Context Protocol) server for French public data. Provides access to service-public.fr practical sheets, local taxation, DVF property transactions, BOFiP tax doctrine, ABC zoning, collective agreements, company search, school directory, high school results (IVAL), national assessments (6th grade/CE2), Parcoursup training courses, healthcare access (data.ameli.fr), professional integration (InserJeunes), security/delinquency statistics (SSMSI), natural risks (Georisques), Legifrance legal texts (laws, decrees, legal codes, case law), the Official Journal (JORF), CAF social assistance statistics (RSA/APL/AAH) and simulators (property tax, notary fees, income tax).
Installation
Hosted server — no installation required. Connect the following URL to your MCP client:
https://mcp-service-public.nhaultcoeur.workers.dev/mcpClaude.ai (web / mobile)
Open Settings (gear icon)
Section Integrations > MCP
Click Add integration
Paste the URL above
The 23 tools appear automatically
Claude Desktop
Add in claude_desktop_config.json:
{
"mcpServers": {
"service-public": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp-service-public.nhaultcoeur.workers.dev/mcp"]
}
}
}File location:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Restart Claude Desktop after modification.
VS Code / Cursor
Create .vscode/mcp.json at the root of your project:
{
"servers": {
"service-public": {
"type": "sse",
"url": "https://mcp-service-public.nhaultcoeur.workers.dev/mcp"
}
}
}Other MCP clients
Any MCP Streamable HTTP compatible client can connect using the URL above. Refer to your client's documentation for configuration.
Verification
After connection, test with a simple request:
Recherche : renouveler passeportIf the 38 tools are loaded, the server is ready.
Related MCP server: datagouv-mcp
The 38 MCP tools (v1.14.8)
# | Tool | Source | Description |
1 |
| Unified Dispatch | Automatically routes to the correct source based on the query (32 categories) |
2 |
| DILA / service-public.fr | Full-text search in ~5,500 practical fact sheets |
3 |
| DILA / service-public.fr | Full reading of a fact sheet by identifier (F14929, N360...) |
4 |
| API Annuaire | Local public services (town hall, prefecture, CAF...) |
5 |
| DILA / service-public.fr | Navigation in the thematic tree |
6 |
| DGFiP REI | Local tax rates by municipality (TFB, TEOM, CFE...) |
7 |
| BOFiP | 8,983 articles of current tax doctrine |
8 |
| DVF / data.gouv.fr | Median prices, price/m2, breakdown by property type, multi-year trends |
9 |
| REI + DVF | Property tax estimate = estimated VLC x 50% x actual REI rate |
10 |
| Regulated Scale | DMTO + degressive fees + CSI + disbursements |
11 |
| data.gouv.fr | Zone ABC (Pinel, PTZ, rent/resource caps) |
12 |
| REI + DVF + zonage + Education + SSMSI + Georisques | Cross-table of 2 to 5 municipalities (population, taxation, real estate, education, health, safety, natural risks) |
13 |
| Bareme IR 2025 | Progressive income tax, family quotient, tax reduction, CEHR, rental/capital/BIC/BNC income |
14 |
| KALI / data.gouv.fr | Collective agreements by IDCC or keyword |
15 |
| DINUM + KALI | Company profile by SIRET/SIREN/name + applicable agreements |
16 |
| data.education.gouv.fr | Schools, middle schools, high schools by municipality (68,000+ establishments) |
17 |
| DEPP / IVAL | Bac pass rate, added value, access from 2nde to bac, honors |
18 |
| DEPP / data.education.gouv.fr | 6th grade + CE2 scores by department, IPS, level groups, trend |
19 |
| MESR / data.education.gouv.fr | Parcoursup programs by keyword, city, department, field (14,000+ programs, selectivity, admitted profile) |
20 |
| CNAM / data.ameli.fr | Access to care by department: physician numbers/density, GP patient load, underserved areas |
21 |
| DEPP-DARES / data.education.gouv.fr | Professional integration InserJeunes: employment rate 6/12/24 months, further studies, added value by training |
22 |
| SSMSI / data.gouv.fr | Departmental security/delinquency statistics: burglaries, thefts, violence, rate per 1,000 inhabitants |
23 |
| BRGM-MTE / georisques.gouv.fr | Natural and technological risks by municipality + CatNat orders |
24 |
| DILA / API PISTE Legifrance | Legislative and regulatory texts (laws, decrees, orders, ordinances) |
25 |
| DILA / API PISTE Legifrance | Articles in legal codes (Civil Code, Labor Code, Penal Code, Commercial Code...) |
26 |
| DILA / API PISTE Legifrance | Judicial case law (Court of Cassation, Courts of Appeal) |
27 |
| DILA / API PISTE Legifrance | Search in the Official Journal (JORF): laws, decrees, orders, ordinances — filter by type and date range |
28 |
| CNAF / data.caf.fr | CAF beneficiary statistics by municipality or department: RSA, APL/ALS/ALF, AAH, family allowances, activity bonus... |
29 |
| DILA / boamp-datadila.opendatasoft.com | BOAMP public procurement notices: calls for tenders, awards, MAPA, DSP — filter by type/department/buyer/dates |
30 |
| DILA / bodacc-datadila.opendatasoft.com | BODACC legal announcements: registrations, cancellations, transfers, collective proceedings — filter by SIREN/name/type/department |
31 |
| OFGL / data.ofgl.fr | Budget of EPCIs (metropolises, CA, CC, CU): revenue/expenditure, savings, debt, euros/inhabitant — 2017-2024 |
32 |
| data.gouv.fr Tabular / OFGL | Municipal initial budget: total revenue/expenditure, gross/net savings, outstanding debt, euros/inhabitant |
33 |
| data.gouv.fr Tabular | Local authority subsidies >23,000 EUR — filter by beneficiary/grantor/purpose/amount/year |
34 |
| API Recherche Entreprises DINUM | SIRENE companies by NAF + area — active/ceased status, creation and closure dates |
35 |
| France Travail OAuth2 | Active job offers — filter by keywords, municipality, department, contract type, qualification |
36 |
| data.economie.gouv.fr | Real-time fuel prices by department or municipality — stations sorted by ascending price, Diesel/SP95/SP98/E10/E85/LPGc, 24/7 automated (updated every 10 minutes) |
37 |
| data.gouv.fr Tabular / Caisse des Depots | Eligible CPF training courses from the MonCompteFormation catalog — filter by keyword, department, ROME code, level, distance learning |
38 |
| MESR / data.education.gouv.fr | Parcoursup selectivity statistics by program: access rate, last called rank, admitted profile bac G/T/Pro, honors, scholarship holders |
Call Examples
Unified Search (Automatic Dispatch)
{ "name": "rechercher", "arguments": { "query": "prix immobilier a Lyon" } }
{ "name": "rechercher", "arguments": { "query": "renouveler passeport" } }
{ "name": "rechercher", "arguments": { "query": "93140 taxe fonciere" } }
{ "name": "rechercher", "arguments": { "query": "SIRET 41816609600069" } }Company Search
{ "name": "rechercher_entreprise", "arguments": { "siret": "41816609600069" } }
{ "name": "rechercher_entreprise", "arguments": { "nom": "OCTO Technology" } }Simulate Property Tax
{ "name": "simuler_taxe_fonciere", "arguments": { "commune": "Lyon", "surface": 75, "type_bien": "Appartement" } }Simulate Notary Fees
{ "name": "simuler_frais_notaire", "arguments": { "prix": 250000, "type": "ancien", "departement": "75" } }Simulate Income Tax
{ "name": "simuler_impot_revenu", "arguments": { "revenu_net_imposable": 42000 } }
{ "name": "simuler_impot_revenu", "arguments": { "revenu_net_imposable": 80000, "situation": "marie", "nb_enfants": 2 } }
{ "name": "simuler_impot_revenu", "arguments": { "revenu_net_imposable": 50000, "revenus_fonciers": 12000, "regime_foncier": "micro" } }Collective Agreements
{ "name": "rechercher_convention_collective", "arguments": { "query": "boulangerie" } }
{ "name": "rechercher_convention_collective", "arguments": { "idcc": "3248" } }Educational Establishments
{ "name": "rechercher_etablissement_scolaire", "arguments": { "commune": "Lyon", "type": "lycee" } }
{ "name": "rechercher_etablissement_scolaire", "arguments": { "code_postal": "93140", "statut": "public" } }
{ "name": "rechercher_etablissement_scolaire", "arguments": { "nom": "Lacassagne" } }High School Results (IVAL)
{ "name": "consulter_resultats_lycee", "arguments": { "commune": "Lyon" } }
{ "name": "consulter_resultats_lycee", "arguments": { "nom_lycee": "Lacassagne", "type": "gt" } }National Assessments (6th Grade / CE2)
{ "name": "consulter_evaluations_nationales", "arguments": { "code_departement": "93" } }
{ "name": "consulter_evaluations_nationales", "arguments": { "commune": "Lyon", "niveau": "6eme" } }
{ "name": "consulter_evaluations_nationales", "arguments": { "code_postal": "93140", "niveau": "CE2" } }Parcoursup Programs
{ "name": "consulter_parcoursup", "arguments": { "recherche": "informatique", "ville": "Lyon" } }
{ "name": "consulter_parcoursup", "arguments": { "filiere": "BTS", "recherche": "comptabilite" } }
{ "name": "consulter_parcoursup", "arguments": { "departement": "93", "filiere": "Licence" } }Parcoursup Selectivity Statistics
{ "name": "consulter_parcoursup_stats", "arguments": { "formation": "BTS comptabilite" } }
{ "name": "consulter_parcoursup_stats", "arguments": { "formation": "licence informatique", "ville": "Lyon" } }
{ "name": "consulter_parcoursup_stats", "arguments": { "formation": "CPGE scientifique", "filiere": "CPGE", "limit": 5 } }Access to Care
{ "name": "consulter_acces_soins", "arguments": { "commune": "Bondy" } }
{ "name": "consulter_acces_soins", "arguments": { "code_departement": "93" } }Professional Integration (InserJeunes)
{ "name": "consulter_insertion_professionnelle", "arguments": { "ville": "Lyon", "limit": 5 } }
{ "name": "consulter_insertion_professionnelle", "arguments": { "uai": "0691723Y" } }
{ "name": "consulter_insertion_professionnelle", "arguments": { "recherche": "coiffure", "code_departement": "69" } }Security and Delinquency
{ "name": "consulter_securite", "arguments": { "code_departement": "75" } }
{ "name": "consulter_securite", "arguments": { "commune": "Lyon" } }Natural Risks
{ "name": "consulter_risques_naturels", "arguments": { "commune": "Nimes" } }
{ "name": "consulter_risques_naturels", "arguments": { "code_insee": "75056" } }Legal Texts (Legifrance)
{ "name": "rechercher_texte_legal", "arguments": { "recherche": "protection donnees personnelles" } }
{ "name": "rechercher_texte_legal", "arguments": { "recherche": "teletravail", "champ": "TITLE" } }Legal Codes (Legifrance)
{ "name": "rechercher_code_juridique", "arguments": { "recherche": "contrat de travail", "code": "Code du travail" } }
{ "name": "rechercher_code_juridique", "arguments": { "recherche": "legitime defense", "code": "Code penal" } }
{ "name": "rechercher_code_juridique", "arguments": { "recherche": "1242", "code": "Code civil", "champ": "NUM_ARTICLE" } }Case Law (Legifrance)
{ "name": "rechercher_jurisprudence", "arguments": { "recherche": "licenciement abusif" } }
{ "name": "rechercher_jurisprudence", "arguments": { "recherche": "clause abusive", "juridiction": "Cour de cassation", "publie_bulletin": true } }
{ "name": "rechercher_jurisprudence", "arguments": { "recherche": "prejudice moral", "juridiction": "Cours d'appel" } }Official Journal (JORF)
{ "name": "consulter_journal_officiel", "arguments": { "recherche": "teletravail" } }
{ "name": "consulter_journal_officiel", "arguments": { "recherche": "loi finances", "type_texte": "LOI", "date_debut": "2024-01-01", "date_fin": "2024-12-31" } }
{ "name": "consulter_journal_officiel", "arguments": { "recherche": "protection donnees", "type_texte": "DECRET", "limit": 10 } }Social Assistance — CAF Statistics
{ "name": "consulter_aide_sociale", "arguments": { "commune": "Bondy" } }
{ "name": "consulter_aide_sociale", "arguments": { "code_departement": "93" } }
{ "name": "consulter_aide_sociale", "arguments": { "code_postal": "93140", "prestation": "RSA" } }Public Procurement (BOAMP)
{ "name": "rechercher_marche_public", "arguments": { "recherche": "travaux voirie", "departement": "35" } }
{ "name": "rechercher_marche_public", "arguments": { "type_avis": "AAC", "departement": "75" } }
{ "name": "rechercher_marche_public", "arguments": { "acheteur": "Departement du Rhone", "type_avis": "APC" } }Legal Announcements (BODACC)
{ "name": "rechercher_annonce_legale", "arguments": { "siren": "123456789" } }
{ "name": "rechercher_annonce_legale", "arguments": { "nom_entreprise": "SARL Martin" } }
{ "name": "rechercher_annonce_legale", "arguments": { "type_annonce": "procedure_collective", "departement": "69" } }Consult ABC Zoning
{ "name": "consulter_zonage_immobilier", "arguments": { "commune": "Bordeaux" } }Compare Municipalities
{ "name": "comparer_communes", "arguments": { "communes": ["Lyon", "Bordeaux", "Nantes"] } }Local Taxation
{ "name": "consulter_fiscalite_locale", "arguments": { "code_postal": "93140" } }
{ "name": "consulter_fiscalite_locale", "arguments": { "communes": ["PARIS", "LYON", "MARSEILLE"] } }Real Estate Transactions (DVF)
{ "name": "consulter_transactions_immobilieres", "arguments": { "commune": "Bondy", "type_local": "Appartement" } }
{ "name": "consulter_transactions_immobilieres", "arguments": { "commune": "Lyon", "evolution": true } }How It Works
Property Tax Simulator
VLC estimee = Surface ponderee x Tarif ajuste x Coef. entretien
Base imposable = VLC x 50 %
TF estimee = Base imposable x Taux global TFB (REI)Weighted area: living area + comfort equivalents
Adjusted rate: national VLC rate x local DVF price ratio / national price
Maintenance coefficient: according to property age (0.90 to 1.15)
TFB rate: actual rates voted by local authorities (source REI DGFiP)
Notary fees simulator
Frais = DMTO + Emoluments TTC + CSI + DeboursDMTO: 5.81% (old, standard rate) or 6.32% (increased rate 2025); 0.71% (new)
Emoluments: regulated degressive scale (3.87% -> 0.799%) + 20% VAT
CSI: 0.10% of price (minimum 15 EUR)
Debours: ~1,200 EUR (estimate)
Income tax simulator
Quotient familial = Revenu net imposable / Nombre de parts
IR brut = Bareme progressif applique au QF x Nombre de parts
IR net = IR brut - Decote (si applicable) + CEHR (si > 250k/500k)2025 tax brackets (2024 income): 0% / 11% / 30% / 41% / 45%
Supported supplementary income: rental (micro/actual), investment income (PFU/bracket), micro-BIC (50%), micro-BNC (34%).
Company search
Search via the Recherche d'entreprises API (DINUM) by SIRET, SIREN or name. Returns legal form, NAF code, workforce, directors, address, and link to KALI for applicable collective agreements.
Schools
Proxy to the Explore v2.1 API of data.education.gouv.fr (National Education Directory, 68,000+ establishments). Filters: municipality, postal code, type (school/middle school/high school), status (public/private), name. Returns address, contact, teaching tracks, services (catering, boarding, ULIS, SEGPA), sections (European, International, Sports, Arts).
High school results (IVAL)
Proxy to the IVAL GT and Pro datasets from DEPP (data.education.gouv.fr). Parallel GT + Pro queries, sorted by decreasing added value. Indicators: bac success rate, added value, access rate from 2nde to bac, honors rate, enrollment by grade level. Sessions 2012-2024.
Architecture
Cloudflare Workers (plan payant)
+-- Transport : Streamable HTTP (POST /mcp)
+-- D1 SQLite (fiches DILA)
| +-- fiches (~5 500 fiches pratiques)
| +-- fiches_fts (index FTS5, tokenize unicode61)
| +-- themes (304 themes hierarchiques)
| +-- sync_log (historique des synchronisations)
| +-- tool_stats (statistiques d'usage)
+-- Proxy API (temps reel, cache + retry)
| +-- data.economie.gouv.fr -> REI fiscalite locale + BOFiP
| +-- data.gouv.fr -> DVF transactions + Zonage ABC + KALI conventions
| +-- data.education.gouv.fr -> Annuaire etablissements + IVAL lycees + Evaluations nationales + Parcoursup + InserJeunes
| +-- georisques.gouv.fr -> Risques naturels GASPAR + Arretes CatNat
| +-- data.ameli.fr -> Acces aux soins (effectifs, densite, patientele MT)
| +-- api.piste.gouv.fr -> Legifrance (textes legaux, codes juridiques, jurisprudence, JORF)
| +-- data.caf.fr -> Statistiques CAF allocataires (RSA, APL, AAH, AF, prime d'activite)
| +-- boamp-datadila.opendatasoft.com -> Marches publics BOAMP (appels d'offres, attributions, MAPA, DSP)
| +-- bodacc-datadila.opendatasoft.com -> Annonces legales BODACC (immatriculations, radiations, cessions, procedures collectives)
| +-- geo.api.gouv.fr -> Resolution communes
| +-- recherche-entreprises.api.gouv.fr -> Fiche entreprise
| +-- API Annuaire -> services publics locaux
+-- Cron (0 6 * * *) -> sync quotidienne DILAData sources
Source | Type | Data |
DILA (lecomarquage) | Daily ZIP -> D1 | Practical sheets, themes |
API Annuaire | Real-time proxy | Local public services |
data.economie.gouv.fr | Real-time proxy | Local taxation (REI), BOFiP doctrine |
data.gouv.fr | Real-time proxy | DVF transactions, Zonage ABC, KALI collective agreements, SSMSI security/delinquency |
geo.api.gouv.fr | Real-time proxy | Municipality resolution (postal code/INSEE/name) |
recherche-entreprises.api.gouv.fr | Real-time proxy | Companies (SIRET/SIREN/name, directors, IDCC) |
data.education.gouv.fr | Real-time proxy | School directory, IVAL high schools, national assessments 6th grade/CE2, Parcoursup training, professional integration InserJeunes |
georisques.gouv.fr | Real-time proxy (API v1 GASPAR) | Natural and technological risks by municipality, natural disaster orders (CatNat) |
data.ameli.fr | Real-time proxy | Access to care: physician counts/density, MT patient base, first-time installations, underserved areas |
api.piste.gouv.fr (DILA) | Real-time proxy (OAuth2) | Legifrance: legal texts (LODA), legal codes (CODE), case law (JURI/CAPP), Official Journal (JORF) |
data.caf.fr (CNAF) | Real-time proxy | CAF beneficiary statistics by municipality/department: RSA, APL/ALS/ALF, AAH, AF, activity bonus... |
boamp-datadila.opendatasoft.com (DILA) | Real-time proxy (Opendatasoft v2.1) | Public procurement BOAMP: calls for tenders, awards, MAPA, DSP — daily update |
bodacc-datadila.opendatasoft.com (DILA) | Real-time proxy (Opendatasoft v2.1) | Legal announcements BODACC: registrations, removals, transfers, collective proceedings |
data.economie.gouv.fr | Real-time proxy (Opendatasoft v2.1) | Instant fuel prices: service stations, Diesel/SP95/SP98/E10/E85/LPGc prices, updated every 10 minutes |
Endpoints
Method | Path | Description |
POST |
| MCP endpoint (JSON-RPC) |
GET |
| Service health, version, tools, last error |
GET |
| Service description |
GET |
| OpenAPI 3.1 specification (public, dynamically generated) |
GET |
| HTML dashboard with statistics (auth required) |
GET |
| Dashboard JSON API (auth required) |
POST |
| Full DILA sync (auth required) |
GET |
| Status of last syncs (auth required) |
Development
npm install
npm run dev # Serveur local
npx vitest run # Tests unitaires (~600 tests)
npm run typecheck # Verification TypeScript (0 erreurs)
npm run deploy # Deploiement CloudflareTechnical stack
TypeScript / Cloudflare Workers
D1 SQLite + FTS5
Vitest (unit tests)
fflate (ZIP decompression)
fast-xml-parser (XML DILA parsing)
APIs: Annuaire, data.economie.gouv.fr, data.gouv.fr, geo.api.gouv.fr, recherche-entreprises.api.gouv.fr
License
MIT
Contribution
Fork the repo
Create a branch (
git checkout -b feature/mon-outil)Follow the pattern: 1 file = 1 tool in
src/tools/Add import + definition + case in
src/index.tsWrite tests in
src/tools/__tests__/Push to
main-> auto-deploy
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Flicense-qualityDmaintenanceAn MCP server that enables interaction with Datagouv APIs, primarily allowing users to search for up-to-date information about companies registered in France.11
- AlicenseAqualityAmaintenanceAn MCP server that connects AI chatbots directly to data.gouv.fr, France’s national open data platform. It allows users to search, explore, and analyze thousands of public datasets simply by asking questions in natural language.101,579MIT
- Flicense-qualityDmaintenanceMCP server for exploring French public open data via APIs like data.gouv.fr, geo.api.gouv.fr, INSEE Sirene, and Radio France.
- Flicense-qualityDmaintenanceMCP server to query French Open Data from data.gouv.fr
Related MCP Connectors
French public-data MCP: cross-ref health, demographics, business, geo & real-estate.
MCP server for French (BOAMP) + EU (TED) public procurement data via TenderAPI.
France Economy & Finance Open Data (data.economie.gouv.fr) — OpenDataSoft MCP.
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/OneNicolas/mcp-service-public'
If you have feedback or need assistance with the MCP directory API, please join our Discord server