JusticeLibre
🌐 Site officiel : https://justicelibre.org 📡 Endpoint MCP :
https://justicelibre.org/mcp(Streamable HTTP, sans clé)
L'accès libre à la jurisprudence française et européenne. Alternative open source à Doctrine, Lexis et Légifrance.
Serveur Model Context Protocol (MCP) qui expose ~3,3 M décisions de justice + ~1,5 M articles de loi consolidés + ~700 k textes annexes (KALI/JORF/CNIL) de la France, de l'UE et du Conseil de l'Europe — gratuit, sans authentification, indexé sur Google.
| Source | Volume | Couverture |
|---|---|---|
| Cour de cassation + cours d'appel + Conseil constitutionnel | 1 169 102 | DILA bulks + Judilibre PISTE |
| Conseil d'État + 9 CAA + 40 TA (JADE bulk) | 552 576 | DILA bulk |
| Open data justice administrative (CE/CAA/TA récents) | 985 996 | API justice-administrative.fr |
| ArianeWeb (Conseil d'État) | 70 396 | scrape Sinequa |
| Cour Européenne des Droits de l'Homme | 76 051 | HUDOC (FR + fallback EN) |
| Cour de Justice de l'Union Européenne | 44 270 | EUR-Lex / Cellar |
| INCA (jurisprudence judiciaire ancienne) | 382 480 | DILA bulk |
| TOTAL décisions | ~3,28 M | |
| Articles de loi en vigueur (LEGI) | 1 481 309 | DILA bulk |
| Conventions collectives (KALI) | 286 732 | DILA bulk |
| JO (textes non codifiés) | 409 564 | DILA bulk |
| Délibérations CNIL | 8 126 | DILA bulk |
Pourquoi JusticeLibre
Les outils juridiques propriétaires (Pappers Justice, Doctrine.fr, Lexis 360, Dalloz) coûtent 50-200 €/mois et ferment l'accès au droit derrière un paywall. L'open data juridique français existe (loi 2016 République Numérique, loi 2019 réforme de la justice) mais reste techniquement inaccessible :
- Légifrance n'expose que ~25% de la jurisprudence en open data, fragmenté
- Judilibre nécessite OAuth2 PISTE (frictionnel, oublie ChatGPT/Claude classique)
- Les bulks DILA arrivent en ZIPs XML bruts de plusieurs Go, inutilisables sans pipeline ETL
- Les TAs ne sont diffusés que par une API Elasticsearch non documentée
JusticeLibre rend cette donnée immédiatement utilisable par tout LLM ou humain :
- ✅ Aucune clé, aucun compte : utilisable depuis Claude.ai, ChatGPT, Cursor, Zed, Continue immédiatement
- ✅ Couverture unique : Cour de cassation + Conseil d'État + Conseil constitutionnel + 9 CAA + 40 TA + CEDH + CJUE + délibérations CNIL
- ✅ Articles de loi avec versions historiques : "quel était l'article 1382 CC en 1992 ?" → texte napoléonien, pas la réforme 2016
- ✅ Indexable Google : ~3 M URLs SSR exposées (sitemap), pas un SPA bot-blind
- ✅ Open source MIT : auto-hébergeable
Comparaison
| JusticeLibre | Pappers Justice | OpenLegi | mcp-juridique.fr | Doctrine.fr | |
|---|---|---|---|---|---|
| Gratuit | ✅ | ❌ payant | partiel | ❌ payant | ❌ 50€/mois |
| Sans inscription | ✅ | ❌ | ❌ | ❌ | ❌ |
| Cour EDH | ✅ 76k décisions | ❌ | ❌ | ❌ | ⚠️ partiel |
| CJUE | ✅ 44k arrêts | ❌ | ❌ | ❌ | ⚠️ partiel |
| Conseil constit. | ✅ 7k décisions + tool dédié | ⚠️ | ❌ | ⚠️ | ✅ |
| 40 TA en parallèle | ✅ fan-out | ⚠️ partiel | ❌ | ❌ | ✅ |
| 9 CAA en parallèle | ✅ fan-out | ⚠️ | ❌ | ❌ | ✅ |
| CNIL délibérations | ✅ 26k | ❌ | ❌ | ⚠️ | ❌ |
| Articles loi versionnés | ✅ 1.5M | ⚠️ | ⚠️ Légifrance brut | ⚠️ | ✅ |
| BM25 pertinence | ✅ | ⚠️ | ⚠️ | ⚠️ | ✅ |
| Open source | ✅ MIT | ❌ | ⚠️ | ❌ | ❌ |
| MCP natif | ✅ Streamable HTTP | ✅ | ✅ | ✅ | ❌ (REST seul) |
| Indexable Google | ✅ 3M SSR pages | ❌ SPA | ❌ | ❌ | ❌ |
Outils MCP exposés (29)
Recherche fédérée
| Outil | Description |
|---|---|
search_all | Fan-out parallèle sur toutes les sources, ranking BM25 + bonus autorité (CE +20%, Cass +15%, CEDH +15%, CAA +10%) |
about_justicelibre | Présentation des tools, hiérarchie d'autorité, workflow recommandé |
Jurisprudence judiciaire (PISTE Judilibre + bulk DILA)
| Outil | Description |
|---|---|
search_judiciaire_libre | 1.17M décisions (Cass + CA + Conseil constit.) - bulk DILA, sans auth |
get_decision_judiciaire_libre | Texte intégral via JURITEXT/CONSTEXT id |
search_judiciaire | Live PISTE Judilibre (besoin OAuth) |
get_decision_judiciaire | Texte via PISTE |
search_cc | Conseil constitutionnel dédié (7112 décisions, filtre par nature : QPC/DC/L/SEN/AN/PDR) |
get_cc_decision | Décision CC par numéro (ex: "2023-1048 QPC") |
Jurisprudence administrative (CE + 9 CAA + 40 TA)
| Outil | Description |
|---|---|
search_admin | BM25 pondéré sur 552k décisions admin bulk JADE |
get_admin_decision | Lookup par numéro de requête (avec désambiguïsation par juridiction) |
get_ce_decision | CE spécifique avec fallback ArianeWeb |
search_conseil_etat | ~270k CE via Sinequa (moteur sémantique natif) |
get_decision_text | Texte intégral via DCE/DTA/DCAA id |
search_admin_recent / _all_caa / _all_ta | Tri date desc pour l'actualité |
list_juridictions | 51 codes juridiction (CE, CAA13...78, TA06...109) |
Jurisprudence européenne
| Outil | Description |
|---|---|
search_cedh | 76k décisions Cour EDH avec sémantique ECHR |
get_decision_cedh | Texte via itemid (ex: "001-249914") |
search_cjue | 44k arrêts CJUE + Tribunal UE |
get_decision_cjue | Via CELEX ou ECLI |
Articles de loi (killer feature)
| Outil | Description |
|---|---|
get_law_article | Article à une date donnée. Ex: ("CC","1128","1992-05-15") -> texte napoléonien ; ("CC","1128","2024-01-01") -> texte post-réforme |
get_law_versions | Timeline complète des versions d'un article |
search_legi | BM25 sur 1.5M articles consolidés (22 codes + Constitution + lois non codifiées) |
search_decisions_citing | Cross-référence inverse : "quelles décisions citent l'article X ?" |
resolve_law_number | Numéro loi/ord/décret -> LEGITEXT/JORFTEXT |
build_source_url | URL Légifrance canonique pour un identifier |
Droit positif complémentaire
| Outil | Description |
|---|---|
search_jorf | 1.24M textes JO (lois, décrets, arrêtés, circulaires depuis 1990) |
search_kali | 335k conventions collectives + accords de branche |
search_cnil | 26k délibérations CNIL (RGPD, données personnelles) |
Quick start
Claude Desktop / Claude.ai
Dans Settings -> Connectors -> Add custom connector :
URL : https://justicelibre.org/mcp
Auth : aucune
ChatGPT / Cursor / Zed / Continue
Ajoute le serveur MCP https://justicelibre.org/mcp à ta config (cf doc de chaque client).
Auto-hébergement
git clone https://github.com/Dahliyaal/justicelibre.git
cd justicelibre
pip install -r requirements.txt
# Mode stdio (Claude Desktop)
python3 server.py
# Mode Streamable HTTP (Claude.ai web, OpenAI connectors)
python3 server.py http # listen 0.0.0.0:8765
Exemples d'usage
Contentieux QPC
# Toutes les QPC sur l'article 8 DDHC ces 2 dernières années
search_cc(query="proportionnalité", nature="QPC",
date_min="2024-01-01", date_max="2026-01-01")
Recours CEDH
# Décisions CEDH France sur la garde à vue
search_cedh(query="garde à vue France")
# Texte intégral
get_decision_cedh(itemid="001-249914")
Recherche jurisprudence administrative ciblée
# Tous les TA + CAA en parallèle sur "harcèlement institutionnel"
search_admin(query="harcèlement institutionnel université",
sort="relevance", limit=30)
# TA Lyon spécifique
get_admin_decision(numero="2200433", juridiction="Tribunal Administratif de Lyon")
Article de loi à une date précise
# L. 262-8 CASF en vigueur au 1er janvier 2023
get_law_article(code="CASF", num="L262-8", date="2023-01-01")
# Toutes les versions historiques
get_law_versions(code="CC", num="1128")
Architecture
+---------------------+
| Client MCP |
| (Claude/ChatGPT/.) |
+----------+----------+
| Streamable HTTP
v
+--------------------------------+
| justicelibre.org/mcp |
| (FastMCP + nginx + cloudflare)|
+--+-------+--------+--------+---+
| | | |
+------------+ | | +------------+
v v v v
+--------------+ +--------------+ +--------------+ +--------------+
| Bulks DILA | | ArianeWeb | | HUDOC API | | InforCuria |
| (SQLite + | | (Sinequa CE) | | (CEDH) | | (CJUE) |
| FTS5 BM25) | | | | | | |
+--------------+ +--------------+ +--------------+ +--------------+
~2.4M ~270k 76k 44k
- Bulks XML DILA téléchargés en local sur al-uzza (Hetzner) avec parsers Python
- Index FTS5 SQLite par fond (jade.db, legi.db, jorf.db, kali.db, cnil.db)
- Fallback live API pour la fraîcheur
- Indexation Google : 3M+ URLs SSR via sitemap (vs SPA bot-blind chez les concurrents)
Sources de données
| Source | Volume | Auth | URL |
|---|---|---|---|
| DILA bulks (CASS/CAPP/CONSTIT/JADE/JORF/KALI/CNIL/LEGI) | ~6 M docs | Aucune | echanges.dila.gouv.fr |
| ArianeWeb Conseil d'État | ~270k | Aucune | conseil-etat.fr |
| opendata.justice-administrative.fr | ~1.5M | Aucune | opendata.justice-administrative.fr |
| HUDOC Cour EDH | 76k | Aucune | hudoc.echr.coe.int |
| InforCuria CJUE | 44k | Aucune | curia.europa.eu |
| PISTE Judilibre (optionnel) | toutes nouvelles décisions | OAuth2 | piste.gouv.fr |
Données sous Licence Ouverte 2.0 (Etalab) - réutilisation libre avec mention de la source.
Limites légales respectées
JusticeLibre respecte strictement :
- Article 226-18, 226-24, 226-31 Code pénal : interdiction de profiler les magistrats (jamais de stats par juge dans les outils exposés)
- Loi 78-17 Informatique et Libertés : pseudonymisation respectée (ne pas ré-identifier les personnes anonymisées par DILA)
- Licence Ouverte 2.0 : mention de source et date sur chaque page
Status & roadmap
- V1 : 6 tools sur opendata.justice-administrative.fr (avril 2026)
- V2 : +CEDH, CJUE, Légifrance/PISTE codes consolidés
- V3 : Killer features articles loi + cross-référence décisions citant
- V4 : Bulks DILA en MCP (BM25 admin, judiciaire libre, CC, CNIL, JORF, KALI)
- V5 : Thésaurus FR (495 entrées) + search_all unifié + bonus autorité
- V6 : SSR + sitemap (~3M URLs indexables Google), citations cliquables Légifrance dated, source attribution
- Crawl complet TAs opendata (~1,5M en cours)
- LLM extraction citations contextuelles ("même code", "présent code")
- Embeddings BGE-M3 sur tout le corpus pour recherche sémantique
Communauté
- Issues / suggestions : GitHub Issues
- MCP Registry : PulseMCP
- Built by : @Dahliyaal - projet né d'un usage personnel sur 8 fronts contentieux en parallèle (MDPH, RSA, Barreau, etc.). Outil né d'un besoin réel, pas d'un wrapper Légifrance pondu pour le SEO.
Contribuer
Tout PR bienvenue : nouveaux scrapers, fixes, traductions, exemples d'usage, intégrations clients MCP.
git clone https://github.com/Dahliyaal/justicelibre.git
cd justicelibre
bash tests/run_all.sh # tests
Licence
MIT - Logiciel libre. Données sous Licence Ouverte 2.0 (Etalab).