mpc-judilibre

mpc-judilibre

MCP server covering French law via the PISTE platform: 8 tools wrapping the JUDILIBRE API (open data judicial decisions from Cour de cassation, courts of appeal and civil courts).

Category
访问服务器

README

mcp-judilibre

Serveur MCP HTTP Streamable donnant accès à l'API JUDILIBRE (PISTE / Cour de cassation) depuis n'importe quel client MCP : Demeter, Claude Desktop, Claude Code, applications Tauri/Electron, ou tout LLM compatible MCP.

8 outils couvrant la recherche plein texte, la consultation de décisions complètes, l'export par lot (deux modes de pagination), la taxonomie des filtres, les statistiques, l'historique transactionnel et le healthcheck.

JUDILIBRE est le moteur Open Data des décisions de justice françaises, publié par la Cour de cassation. Il couvre la Cour de cassation, les cours d'appel et les tribunaux judiciaires.


Aperçu

mcp-judilibre en action dans Demeter


Prérequis

  • Python 3.11+
  • Un compte sur piste.gouv.fr avec accès à l'API JUDILIBRE (gratuit)

Note : Si vous utilisez déjà mcp-legifrance, les identifiants PISTE sont les mêmes. Il suffit d'ajouter la souscription à l'API JUDILIBRE dans votre application PISTE existante.


Obtenir les identifiants API

L'API JUDILIBRE est exposée via la plateforme PISTE (Plateforme d'Intermédiation des Services pour la Transformation de l'État).

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.

2. Créer une application (ou réutiliser l'existante)

Une fois connecté :

  1. Allez dans Mes applicationsNouvelle application (ou ouvrez votre application existante)
  2. Donnez un nom à votre application (ex: mcp-judilibre)
  3. Sélectionnez l'environnement Sandbox pour commencer

3. Souscrire à l'API JUDILIBRE

  1. Dans le catalogue, recherchez JUDILIBRE
  2. Cliquez sur Souscrire → choisissez votre application
  3. La souscription est automatiquement approuvée pour l'environnement Sandbox

4. Récupérer les identifiants

Dans votre application PISTE, copiez :

  • Client ID (JUDILIBRE_CLIENT_ID)
  • Client Secret (JUDILIBRE_CLIENT_SECRET)

Installation

Installation locale (Python)

git clone https://github.com/ktulu-analog/mcp-judilibre.git
cd mcp-judilibre
python -m venv .venv
source .venv/bin/activate   # Windows : .venv\Scripts\activate
pip install -r requirements.txt

Installation via Docker

git clone https://github.com/ktulu-analog/mcp-judilibre.git
cd mcp-judilibre
docker build -t mcp-judilibre .

Configuration

Copiez .env.example en .env et renseignez vos identifiants :

cp .env.example .env
JUDILIBRE_CLIENT_ID=votre_client_id
JUDILIBRE_CLIENT_SECRET=votre_client_secret

Ou exportez-les directement dans votre shell :

export JUDILIBRE_CLIENT_ID=votre_client_id
export JUDILIBRE_CLIENT_SECRET=votre_client_secret

Démarrage

En local (Python)

python server.py

Options disponibles :

--host   Adresse d'écoute  (défaut : 0.0.0.0)
--port   Port d'écoute     (défaut : 6501)
--path   Chemin MCP        (défaut : /mcp)

Exemple sur un port personnalisé :

python server.py --port 8080

Via Docker

docker run -p 6501:6501 \
  -e JUDILIBRE_CLIENT_ID=votre_client_id \
  -e JUDILIBRE_CLIENT_SECRET=votre_client_secret \
  mcp-judilibre

Le serveur peut tourner sur n'importe quelle machine accessible en réseau. Les clients MCP se connectent alors à http://adresse-du-serveur:6501/mcp — le serveur n'a pas besoin d'être sur la même machine que le client.

Le serveur est accessible à http://localhost:6501/mcp.


Intégration avec un client MCP

Claude Desktop

Dans claude_desktop_config.json :

{
  "mcpServers": {
    "judilibre": {
      "url": "http://localhost:6501/mcp"
    }
  }
}

Pour utiliser les deux serveurs simultanément avec mcp-legifrance :

{
  "mcpServers": {
    "legifrance": {
      "url": "http://localhost:6502/mcp"
    },
    "judilibre": {
      "url": "http://localhost:6501/mcp"
    }
  }
}

Claude Code

claude mcp add judilibre --url http://localhost:6501/mcp

Autre client HTTP Streamable

Tout client supportant la spec MCP 2025-03-26 HTTP Streamable peut se connecter à http://localhost:6501/mcp.


Outils disponibles

Outil Endpoint Description
judilibre_rechercher GET /search Recherche plein texte dans les décisions de justice
judilibre_decision GET /decision Texte intégral et métadonnées d'une décision par ID
judilibre_scan GET /scan Export par lot, pagination par curseur (search_after)
judilibre_export GET /export Export par lot, pagination par numéro de lot (batch)
judilibre_taxonomie GET /taxonomy Référentiel des valeurs valides pour les filtres
judilibre_stats GET /stats Statistiques globales et agrégations de la base
judilibre_historique GET /transactionalhistory Historique des opérations create/update/delete
judilibre_healthcheck GET /healthcheck Vérifie la disponibilité du service API

judilibre_rechercher

Recherche paginée avec filtres : juridiction (cc, ca, tj), chambre, formation, type de décision, solution, niveau de publication, matière, localisation, plage de dates, opérateur logique (or, and, exact).

judilibre_decision

Récupère une décision complète par son ID JUDILIBRE (obtenu via judilibre_rechercher). Retourne le texte pseudonymisé, les zones structurées, les textes appliqués, les rapprochements et les documents associés (communiqués, notes, rapports…).

judilibre_scan

Export par lot pour indexation ou synchronisation d'un corpus. Pagination par curseur via search_after (style keyset). Version abrégée disponible (abrege=True) pour ne pas inclure le texte intégral.

judilibre_export

Export par lot via pagination par numéro de lot entier (lot=0, lot=1…, style offset). Mêmes filtres que judilibre_scan. À privilégier quand on veut accéder directement à un lot précis sans avoir à parcourir les précédents.

judilibre_taxonomie

Liste les valeurs valides des filtres. Exemples :

  • judilibre_taxonomie(id="chamber", contexte="cc") → chambres de la Cour de cassation
  • judilibre_taxonomie(id="solution") → toutes les solutions possibles
  • judilibre_taxonomie(id="jurisdiction") → types de juridictions

judilibre_stats

Statistiques mises à jour quotidiennement. Supporte des agrégations multi-axes (ex: agregations="year,chamber" pour la répartition par année et par chambre).

judilibre_historique

Flux transactionnel depuis une date ISO-8601 donnée. Retourne les opérations created, updated et deleted pour maintenir un index local synchronisé.

judilibre_healthcheck

Vérifie que l'API JUDILIBRE est opérationnelle. Aucun paramètre requis. Utile pour diagnostiquer les problèmes de connectivité.


Utilisation combinée avec mcp-legifrance

mcp-judilibre et mcp-legifrance sont complémentaires :

  • JUDILIBRE → décisions de justice Open Data (Cour de cassation, cours d'appel, tribunaux judiciaires)
  • Légifrance → textes législatifs et réglementaires, jurisprudence administrative (Conseil d'État, Conseil constitutionnel, CNIL…)

Les deux serveurs peuvent tourner simultanément sur des ports différents (6501 et 6502 par défaut) et être déclarés dans le même fichier de configuration MCP.


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 JUDILIBRE en serveur MCP pour mes propres besoins initialement. Mais autant que ça serve à d'autres.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选