mpc-legifrance
mcp-legifrance
Serveur MCP HTTP Streamable donnant accès à l'intégralité de l'API Légifrance (PISTE / DILA) depuis n'importe quel client MCP : Claude Desktop, Claude Code, applications Tauri/Electron, ou tout LLM compatible MCP.
62 outils couvrant les codes, lois, décrets, Journal Officiel, conventions collectives, jurisprudence, questions parlementaires, circulaires, et plus.
Aperçu

Prérequis
Python 3.11+
Un compte sur piste.gouv.fr avec accès à l'API Légifrance (gratuit)
Obtenir les identifiants API Légifrance
L'API Légifrance est exposée via la plateforme PISTE (Plateforme d'Intermédiation des Services pour la Transformation de l'État), gérée par la DILA.
1. Créer un compte PISTE
Rendez-vous sur https://piste.gouv.fr et cliquez sur S'inscrire. L'inscription est gratuite et ouverte à tous (particuliers, entreprises, collectivités).
2. Créer une application
Une fois connecté :
Allez dans Mes applications → Nouvelle application
Donnez un nom à votre application (ex:
mcp-legifrance)Sélectionnez l'environnement Sandbox pour commencer (accès immédiat, données réelles en lecture seule)
3. Souscrire à l'API Légifrance
Dans le catalogue, recherchez Légifrance
Cliquez sur Souscrire → choisissez votre application
La souscription est automatiquement approuvée pour l'environnement Sandbox
4. Récupérer les identifiants
Dans votre application PISTE, copiez :
Client ID (
LEGIFRANCE_CLIENT_ID)Client Secret (
LEGIFRANCE_CLIENT_SECRET)
Note : L'environnement Sandbox et l'environnement Production utilisent les mêmes données. La différence porte uniquement sur les quotas. Pour un usage intensif, faites une demande d'accès Production depuis PISTE.
Installation
git clone https://github.com/ktulu-analog/mcp-legifrance.git
cd mcp-legifrance
python -m venv .venv
source .venv/bin/activate # Windows : .venv\Scripts\activate
pip install -r requirements.txtConfiguration
Copiez .env.example en .env et renseignez vos identifiants :
cp .env.example .envLEGIFRANCE_CLIENT_ID=votre_client_id
LEGIFRANCE_CLIENT_SECRET=votre_client_secretOu exportez-les directement dans votre shell :
export LEGIFRANCE_CLIENT_ID=votre_client_id
export LEGIFRANCE_CLIENT_SECRET=votre_client_secretDémarrage
python server.pyOptions disponibles :
--host Adresse d'écoute (défaut : 0.0.0.0)
--port Port d'écoute (défaut : 6502)
--path Chemin MCP (défaut : /mcp)Exemple sur un port personnalisé :
python server.py --port 8080Le serveur est accessible à http://localhost:6502/mcp.
Intégration avec un client MCP
Claude Desktop
Dans claude_desktop_config.json :
{
"mcpServers": {
"legifrance": {
"url": "http://localhost:6502/mcp"
}
}
}Claude Code
claude mcp add legifrance --url http://localhost:6502/mcpAutre client HTTP Streamable
Tout client supportant la spec MCP 2025-03-26 HTTP Streamable peut se connecter à http://localhost:6502/mcp.
Outils disponibles
Journal Officiel (JORF)
Outil | Description |
| Derniers numéros du JO parus |
| Sommaire d'un JO par date ou identifiant |
| Contenu complet d'un texte du JO (par CID) |
| Contenu d'une section d'un texte du JO |
| Texte du JO par numéro NOR |
| Texte du JO par identifiant ELI ou alias |
| Dates sans parution du JO |
Codes législatifs (LEGI)
Outil | Description |
| Liste de tous les codes disponibles |
| Table des matières d'un code |
| Contenu complet d'un code |
| Code par ancien identifiant |
| Contenu d'un article par identifiant |
| Article par numéro dans un code |
| Article par identifiant ELI |
| Historique des versions d'un article |
| Tous les articles portant le même numéro |
| Texte de loi ou décret par identifiant |
| Section d'un texte LEGI |
| Tables annuelles LEGI |
| Années sans table annuelle |
| Historique complet d'un texte |
| Versions d'un élément de texte |
| Vérifie si un texte a des versions |
| Version canonique d'un article |
| Version canonique d'un texte |
| Version la plus proche d'une date |
Lois et décrets (LODA)
Outil | Description |
| Liste paginée des textes LODA |
| Liens de concordance d'un texte |
| Liens relatifs d'un texte |
| Liens Service-Public.fr |
| Vérifie l'existence de liens Service-Public |
Conventions collectives (KALI)
Outil | Description |
| Liste des conventions collectives |
| Convention par numéro IDCC |
| Conteneur d'une convention |
| Texte d'une convention |
| Article d'une convention |
| Section d'une convention |
Jurisprudence (CASS, CETAT, CONSTIT, JURITEXT…)
Outil | Description |
| Décision de justice par identifiant |
| Plan de classement jurisprudentiel |
| Décision par ancien identifiant |
Dossiers et débats parlementaires
Outil | Description |
| Dossier législatif par identifiant |
| Débat parlementaire par identifiant |
| Liste des législatures |
| Dossiers législatifs paginés |
| Débats parlementaires paginés |
| Questions parlementaires paginées |
| Section par CID |
Documents administratifs (CIRC, ACCO, CNIL, BOCC…)
Outil | Description |
| Circulaire par identifiant |
| Accord d'entreprise par identifiant |
| Délibération CNIL par identifiant |
| Délibération CNIL par ancien identifiant |
| Bulletins BOCC paginés |
| Textes d'un bulletin BOCC |
| Bulletins et textes BOCC combinés |
| Métadonnées PDF d'un bulletin BOCC |
| Documents administratifs paginés |
| Bulletins BODMR paginés |
Recherche et utilitaires
Outil | Description |
| Recherche plein texte tous fonds |
| Suggestions de textes |
| Suggestions d'accords |
| Suggestions plan de classement |
| Identifiant de version du serveur |
Licence
GNU Affero General Public License v3.0 — © 2026 Pierre COUGET
Disclaimer
Ce projet n'est pas un projet officiel. C'est la traduction de l'API LEGIFRANCE en serveur MCP pour mes propres besoins initialement. Mais autant que ça serve à d'autres.
Latest Blog Posts
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/Ktulu-Analog/mcp-legifrance'
If you have feedback or need assistance with the MCP directory API, please join our Discord server