Servidor MCP no oficial de solo lectura para la consulta pública de causas del Poder Judicial de Chile.
Proyecto independiente, sin relación alguna con el Poder Judicial de Chile ni con la Corporación Administrativa del Poder Judicial.
Solo consulta información pública. No permite el ingreso de escritos ni ninguna operación de escritura, y no existe código para hacerlo, ni siquiera desactivado.
Consulta cualquier causa civil pública y devuelve sus actuaciones del ministro de fe con la fecha real de diligencia, que es la que corre los plazos procesales.
Ese dato no viene en el ebook que entrega la Oficina Judicial Virtual, y en la interfaz web aparece en un formato que se presta a confusión:
Fec. Trámite: 31/03/2026 (27/03/2026)
registro diligencia
Las dos fechas comparten una celda y sólo la del paréntesis corre plazos. Acá salen como campos separados y en ISO 8601.
| Qué hace | Por qué importa |
|---|---|
| Separa las dos fechas | fecha_diligencia y fecha_registro como campos distintos, en vez de un texto con paréntesis que hay que interpretar |
| Recorre todos los cuadernos | La interfaz muestra uno a la vez. En una causa ejecutiva, el de apremio contiene el requerimiento de pago y el embargo |
| Marca las contradicciones | Si el paréntesis y el Diligencia: de la descripción no coinciden, lo informa en vez de elegir una |
Ejemplo con una causa real
C-1156-2026 del 2º Juzgado Civil de Concepción, seis actuaciones en dos cuadernos:
| Cuaderno | Folio | Trámite | Diligencia | Registro |
|---|---|---|---|---|
| Principal | 9 | NOTIFICACIÓN DE DEMANDA (Exitosa) | 27/03/2026 17:40 | 31/03/2026 |
| Apremio | 2 | Requerimiento de Pago (Ficto) | 30/03/2026 10:31 | 31/03/2026 |
| Apremio | 3 | EMBARGO (Exitosa) | 31/03/2026 10:34 | 01/04/2026 |
Leer sólo el cuaderno que la web abre por defecto habría devuelto las tres del principal y ninguna del apremio.
PolyForm Strict 1.0.0 permite ejecutar el software con fines no comerciales, y nada más.
Si facturas a tus clientes necesitas permiso escrito, aunque uses la herramienta sólo para tus propias causas. También para modificarla o distribuirla.
Se pide abriendo un issue y se otorga caso a caso, sin costo. La licencia restrictiva existe para saber quién usa esto y para qué, no para cobrar.
Dos aclaraciones que suelen hacer falta:
- No es open source en sentido estricto, porque restringe modificación, distribución y uso comercial. El término correcto es source-available. Que GitHub permita forkear no otorga derecho a redistribuir: eso lo define la licencia, no el botón.
- Los pull requests sí son bienvenidos. El acuerdo de contribución te da el permiso para modificar que la licencia por sí sola no otorga, y conservas la propiedad de tu aporte. La idea es que se contribuya al proyecto, no que cualquiera publique su versión.
El razonamiento completo, con las familias de licencia que se descartaron y por qué, está en la página de licencia.
No hace falta clonar: uvx descarga y ejecuta. Requiere uv y
Python 3.13 o superior.
Reemplaza tu@correo.cl por tu correo real en cualquiera de las formas de abajo. Ese dato
viaja en el User-Agent para que el Poder Judicial pueda identificar a quien consulta, y sin
él el servidor no arranca.
Claude Code
claude mcp add mcp-pjud-cl -e MCP_PJUD_CONTACTO=tu@correo.cl \
-- uvx --from git+https://github.com/notluquis/mcp-pjud-cl@stable mcp-pjudCursor y VS Code
Los botones dejan el correo como marcador. Edítalo en la configuración del editor, o el servidor falla con un mensaje que te lo recuerda.
Claude Desktop, Codex y cualquier otro cliente
{
"mcpServers": {
"mcp-pjud-cl": {
"command": "uvx",
"args": ["--from", "git+https://github.com/notluquis/mcp-pjud-cl@stable", "mcp-pjud"],
"env": { "MCP_PJUD_CONTACTO": "tu@correo.cl" }
}
}
}El transporte es stdio: no abre puertos ni escucha en la red.
@stable apunta siempre a la última versión publicada, así que se actualiza sola al instalar.
Si prefieres quedarte en una versión concreta, cambia esa referencia por la etiqueta, por
ejemplo @v0.19.3. Sin ninguna referencia se sigue la rama principal, que trae cambios sin
publicar: no es lo recomendado.
| Herramienta | Qué hace |
|---|---|
listar_cortes |
Las Cortes de Apelaciones con su código |
listar_tribunales |
Los tribunales de una corte con su código, que las búsquedas exigen |
buscar_causa_por_rit |
Busca por rol, en las seis competencias |
buscar_causa_por_nombre |
Busca por nombre de una persona natural |
buscar_causa_por_rut_juridica |
Busca por RUT de una empresa |
buscar_causa_por_fecha |
Busca por fecha de ingreso |
obtener_actuaciones_receptor |
Actuaciones del ministro de fe con su fecha real de diligencia |
obtener_georreferencia |
Dónde y cuándo el ministro de fe registró que practicó una diligencia, con hora |
obtener_anexos_escrito |
Los documentos que un escrito acompañó, que son otro canal distinto del de la resolución |
listar_audios_audiencia |
Qué audios de audiencia tiene la causa y con qué enlace se bajan. No los trae |
obtener_documento |
El archivo de una actuación: resolución, escrito, certificado o el expediente entero |
obtener_detalle_causa |
Todos los paneles que la competencia publique, de una sola cadena y recorriendo todos los cuadernos. La referencia enumera cuáles |
buscar_jurisprudencia |
Busca sentencias en el buscador de fallos |
obtener_texto_sentencia |
El texto completo de una sentencia |
Todas anotadas como readOnlyHint y destructiveHint: false en el protocolo. No hay ninguna
que escriba: por qué.
Referencia completa de campos
y ejemplos resueltos.
- Una consulta cada 5 segundos en régimen sostenido, con una ráfaga de hasta 4 al inicio para que una pregunta se responda de una vez. Ninguno de los dos es configurable hacia abajo. Es la cláusula CUARTA de las condiciones de uso de la Oficina Judicial Virtual, que prohíbe sobrecargar el portal, implementada en código.
- Detención total ante 403, 429 o captcha. Sin reintento, sin rotación de IP, sin evasión.
- Sin persistencia. Se consulta y se devuelve.
- Bitácora de peticiones en memoria, para acreditar uso razonable.
Perder el acceso mientras corren plazos en un litigio activo es peor que no obtener el dato. Ese criterio manda sobre cualquier ganancia de velocidad.
- Sólo competencia civil verificada. Las otras seis se rechazan en vez de adivinar sus parámetros.
- Las causas reservadas no aparecen. Un resultado vacío no prueba que la causa no exista.
- Una búsqueda muy amplia levanta excepción en vez de devolver una lista recortada. Acota la consulta o sube el tope de páginas.
cortesin valor por defecto a propósito: fijarla produce falsos negativos.- Si la plataforma cambia, el parser levanta excepción en vez de devolver vacío. Una lista vacía se leería como "no hubo actuaciones", y así se pierden plazos.
mcp-pjud-cl.readthedocs.io, organizada por tarea:
| Página | Para qué |
|---|---|
| Cómo se usa | Cómo leer cada campo y qué no hace. Sin código |
| Instalación y operación | Arquitectura y controles, para quien administra los sistemas |
| Ejemplos | Casos resueltos de punta a punta, incluidos los modos de falla |
| Herramientas | Parámetros y campos de respuesta |
| Cumplimiento | Condiciones de uso, robots.txt, Ley 21.719 |
| Licencia | Qué se eligió, qué se descartó y qué cuesta |
| Hoja de ruta | Qué está probado contra el sistema real y qué no |
En el repositorio: cómo contribuir · acuerdo de contribución · uso aceptable · seguridad · soporte · código de conducta · cambios · instrucciones para agentes de IA
git clone https://github.com/notluquis/mcp-pjud-cl && cd mcp-pjud-cl
uv sync --all-groups
uv run pytest # sin red
uv run ruff check .Los tests corren contra HTML real guardado en tests/fixtures/, anonimizado. Ninguno consulta
al Poder Judicial.
main exige pull request. Antes de proponer cambios, lee
cómo contribuir.
Esto acerca la fuente oficial. No reemplaza la revisión de un abogado ni la lectura del expediente.