MCP-CENDOJ
MCP server para el CENDOJ 🇪🇸 — Acceso automatizado a resoluciones judiciales de España, filtros avanzados de jurisprudencia y lectura de sentencias mediante Model Context Protocol y API REST
Documentation
MCP-CENDOJ: Servidor MCP y API para el Buscador de Jurisprudencia
Este proyecto proporciona una API REST (FastAPI) y un Servidor MCP (Model Context Protocol) para buscar y consultar sentencias y resoluciones judiciales del CENDOJ (Centro de Documentación Judicial de España).
Dado que el CENDOJ no dispone de una API pública y protege sus búsquedas con Javascript interactivo y validaciones de autocompletado, este servicio utiliza Playwright para simular búsquedas reales de forma automatizada y robusta, devolviendo resultados limpios en formato JSON y abstrayendo la descarga y extracción de texto de los PDFs de sentencias.
CaracterÃsticas
- Buscador Automatizado (Playwright): Automatiza la navegación, la aceptación del Aviso Legal, la simulación de escritura secuencial para activar el buscador y la selección de la sugerencia del CENDOJ para evitar las limitaciones de búsqueda.
- API REST con FastAPI:
- Servidor MCP (Model Context Protocol):
- Compatibilidad con Windows: Parcheado para evitar problemas con la polÃtica del bucle de eventos (`NotImplementedError` en subprocess) en entornos Windows.
Requisitos Previos
- Python 3.10 o superior instalado.
- Navegador Chromium de Playwright instalado en el sistema.
Instalación y Configuración (Rápida)
Para facilitar la configuración en Windows, hemos incluido scripts que automatizan todo el proceso:
1. Ejecutar configuración automática:
Haz doble clic en el archivo `setup.bat` (o ejecútalo desde tu consola). Este script se encargará de:
2. Registrar en Clientes MCP (Automático):
Una vez finalizado el setup, ejecuta la utilidad de instalación automática para vincular el servidor MCP con tus clientes locales:
.venv\Scripts\python.exe install_mcp.pyEste comando detectará la ruta absoluta de tu repositorio y registrará automáticamente el servidor CENDOJ en las configuraciones globales de:
Instalación y Configuración Manual (Alternativa)
Si no deseas utilizar los scripts de automatización, puedes inicializar el proyecto manualmente siguiendo estos pasos:
1. Crear el entorno virtual de Python:
python -m venv .venv2. Activar el entorno virtual:
.venv\Scripts\Activate.ps1source .venv/bin/activate3. Instalar dependencias:
pip install --upgrade pip
pip install -r requirements.txt4. Instalar el navegador Chromium para Playwright:
playwright install chromium5. Crear el archivo de configuración `.env`:
Crea un archivo llamado `.env` en la raÃz del proyecto y escribe la siguiente lÃnea:
CENDOJ_HEADLESS=trueGuÃa de Ejecución
El script `run.py` es el punto de entrada unificado:
1. Ejecutar como API REST y Servidor SSE (FastAPI)
Para levantar el servidor web:
.venv\Scripts\python.exe run.py apiEl servidor se iniciará en http://localhost:8000.
- Documentación Interactiva (Swagger/OpenAPI): Visita http://localhost:8000/docs para interactuar directamente con la API REST.
- Endpoint de MCP SSE: Accesible en http://localhost:8000/mcp/sse.
2. Ejecutar como Servidor MCP Stdio (Consola/Entrada Estándar)
Para iniciar el servidor MCP utilizando la entrada y salida estándar (ideal para integrar en herramientas de escritorio locales):
.venv\Scripts\python.exe run.py mcpIntegración Manual con Clientes MCP (Opcional)
Si prefieres realizar el registro de manera manual en lugar de usar `install_mcp.py`:
Claude Desktop
Para conectar este servidor MCP con Claude Desktop, edita tu archivo de configuración `claude_desktop_config.json` (usualmente en `%APPDATA%\Claude\claude_desktop_config.json` en Windows) y añade la configuración del servidor:
{
"mcpServers": {
"cendoj-jurisprudencia": {
"command": "c:/workspace-github/MCP-CENDOJ/.venv/Scripts/python.exe",
"args": ["c:/workspace-github/MCP-CENDOJ/run.py", "mcp"],
"env": {
"CENDOJ_HEADLESS": "true"
}
}
}
}Cursor
Para utilizar el servidor en Cursor:
1. Ve a Settings > Features > MCP.
2. Haz clic en + Add New MCP Server.
3. Configura los siguientes valores:
GuÃa de Prompts en Lenguaje Natural (CENDOJ MCP)
Esta guÃa muestra cómo puedes hablarle al asistente en lenguaje natural y conversacional (como si hablaras con un colega o un abogado), y cómo la IA se encarga de traducir tu petición en consultas técnicas para el buscador del CENDOJ.
💬 Ejemplos Prácticos de Interacción Conversacional
1. Consultar dudas sobre accidentes en situaciones modernas
2. Investigar fallos en una zona geográfica especÃfica
3. Analizar la doctrina del Tribunal Supremo sobre temas familiares
4. Reclamaciones contra administraciones locales
5. Resumir y explicar sentencias de gran repercusión
Pruebas y Verificación
El proyecto incluye scripts en el directorio temporal o de scratchpad para pruebas de desarrollo rápidas:
- Prueba de Scraper Directo: `test_scraper.py` busca un término e intenta descargar el primer PDF.
- Prueba de API REST e Integración SSE: `test_api.py` verifica el estado, realiza una consulta y ejecuta la descarga del PDF a través del servidor FastAPI en ejecución.
- Prueba de Cliente MCP Stdio: `test_mcp_stdio_client.py` inicia el servidor MCP en un subproceso y realiza las llamadas JSON-RPC oficiales simulando un cliente real.
Descargo de Responsabilidad y Términos de Uso
> [!WARNING]
> LEER ATENTAMENTE ANTES DE UTILIZAR LA HERRAMIENTA
>
> Este software es una utilidad de automatización de código abierto provista únicamente con fines educativos, de investigación académica y para consultas individuales de carácter privado.
1. Cumplimiento de las Normativas del CENDOJ y CGPJ
El sitio web del portal del CENDOJ (Centro de Documentación Judicial del Consejo General del Poder Judicial de España) establece términos de acceso especÃficos. Al utilizar este software, el usuario asume toda la responsabilidad de cumplir con dichas polÃticas:
- Uso Particular: El acceso al buscador del CENDOJ está restringido únicamente a consultas individuales y particulares de carácter no mercantil.
- Prohibición de Descarga Masiva y Fines Comerciales: De acuerdo con las directrices del CGPJ, está terminantemente prohibido el uso de herramientas automáticas para la extracción masiva de jurisprudencia (*web scraping* masivo) y la explotación comercial de su base de datos. Si requieres reutilizar los datos con fines comerciales o masivos, debes solicitar una licencia de reutilización formal directamente ante el CENDOJ.
- Frecuencia de Consultas: Se recomienda encarecidamente utilizar esta herramienta con moderación y pausas razonables para no saturar los servidores públicos del CENDOJ ni infringir sus lÃmites razonables de servicio.
2. Protección de Datos Personales (RGPD / LOPDGDD)
Las sentencias publicadas por el CENDOJ han sido previamente sometidas a un proceso de anonimización/seudonimización. El Reglamento General de Protección de Datos (RGPD) y la Ley Orgánica 3/2018 (LOPDGDD) prohÃben estrictamente el uso de estas informaciones para la reidentificación de personas fÃsicas implicadas en los procedimientos judiciales. El usuario final es el único responsable legal del tratamiento que dé a los textos extraÃdos por este software.
3. Exención de Responsabilidad Legal
Los desarrolladores y contribuidores de este proyecto:
- No se hacen responsables del uso indebido, fraudulento o ilegal que el usuario final pueda hacer de esta API o servidor MCP.
- No asumen ninguna responsabilidad ante posibles bloqueos de direcciones IP, acciones legales, apercibimientos judiciales o cualquier medida que el CGPJ pudiera adoptar contra el usuario final como consecuencia del uso de este software.
- Proporcionan la herramienta "tal cual" (*as is*), sin garantÃas de ningún tipo respecto a su continuidad, disponibilidad técnica o exactitud de los resultados devueltos si la web del CENDOJ modifica su estructura o diseño.
Frequently asked questions
What is MCP-CENDOJ?
MCP-CENDOJ is MCP server para el CENDOJ 🇪🇸 — Acceso automatizado a resoluciones judiciales de España, filtros avanzados de jurisprudencia y lectura de sentencias mediante Model Context Protocol y API REST
How do I install MCP-CENDOJ?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is MCP-CENDOJ open source?
Yes — it is hosted on GitHub at https://github.com/ComputingVictor/MCP-CENDOJ and has 7 stars.
Related MCP tools
An AI Gateway, registry, and proxy that sits in front of any MCP, A2A, or REST/gRPC APIs, exposing a unified endpoint with centralized discovery, guardrails and management. Optimizes Agent & Tool calling, and supports plugins.
AI-powered OSINT agent with interactive REPL, MCP server, and CLI. 19 tools. Works with Claude, GPT-4, or local models. For authorized security research only.
Open-source coding agent memory. Records issues, attempts, fixes and decisions, then warns your agent before it repeats an approach that already failed. Native MCP server for Claude Code, Cursor, Antigravity and Codex. 100% local, no cloud, no telemetry. MIT.
Automate browser based workflows with AI
Fast and Accurate Code Search for Agents. Uses 99% fewer tokens than grep+read
Transparent and Efficient Financial Analysis
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP