Skip to main content

mcp-leyes-chile

mcp-name: io.github.billibu-n/mcp-leyes-chile

Servidor MCP de leyes chilenas con cita verificable (v0.2.2), fichas notariales curadas y generación de documentos .odt (editable), .pdf y .docx.

No es asesoría legal. Es una herramienta para que una persona llegue a la notaría con el borrador hecho y para que un abogado no presente una cita que no exista.

Qué hace

Tool Para qué
cl_buscar Busca artículos por texto en el corpus local (SQLite FTS5)
cl_articulo Texto literal + cita con vigente_desde, fuente y aviso; acepta vigente_al (AAAA-MM-DD) para la versión histórica
cl_versiones Historial de versiones de una norma (83 en el DL 825)
cl_citar Verifica un lote: ok, faltantes, sin_fuente_verificable
cl_notaria 27 fichas: trámite, arancel y estado por campo (24 generadas del Decreto 587)
cl_documento Genera .odt y deriva .pdf (por defecto), .docx o .md, con marca de BORRADOR y la base legal de la plantilla
cl_cobertura Qué cubre, hasta cuándo, y qué no cubre

Instalación

Desde PyPI:

pip install mcp-leyes-chile
mcp-leyes-chile --ingesta      # ~20 s: 9 normas, 6.246 artículos, 556 versiones
mcp-leyes-chile --selftest     # lista las 7 tools

O desde el código:

python3 -m venv .venv && . .venv/bin/activate
pip install -e .
python -m mcp_leyes --ingesta
python -m mcp_leyes --notaria-generar  # crea fichas desde el arancel (idempotente)
python -m mcp_leyes --smoke            # genera .odt + .pdf de prueba
python -m mcp_leyes                    # sirve por stdio

Configuración en un host MCP (ejemplo):

{"mcpServers": {"leyes-chile": {"command": "python", "args": ["-m", "mcp_leyes"],
  "env": {"MCP_LEYES_DB": "/ruta/a/corpus.db"}}}}

Formulario HTML

python -m mcp_leyes --formulario 8801
# http://127.0.0.1:8801/  -> pregunta los campos -> .odt + .pdf

Publicación

En el registro oficial: io.github.billibu-n/mcp-leyes-chile 0.2.2 (https://registry.modelcontextprotocol.io), paquete PyPI mcp-leyes-chile.

server.json cumple el esquema del registro: registryType: pypi, transport: stdio. Publicar requiere mcp-publisher login github y autorización del dueño.

Qué cambió en 0.2.2

El servidor pasó por una prueba de alto estrés de 41 comprobaciones por el protocolo real (parámetros hostiles, FTS5 roto, concurrencia, documentos en paralelo, lotes de 200). Encontró nueve defectos; esta versión los corrige:

Defecto Antes Ahora
Consulta de 54.000 caracteres 44 s de bloqueo 11 ms (recorte a 24 términos)
Fecha ayer o 2020-13-45 viajaba a LeyChile: 90 s y el texto de otra versión [invalid_arg] local en 1 ms
Centinela 2222-02-02 como fecha respuesta con fecha falsa [invalid_arg] que explica el centinela
cl_citar con una referencia suelta rechazo del protocolo acepta "6369/14" y la clasifica
Formato de cl_documento desconocido caía en silencio a PDF [invalid_arg]
Base legal de la plantilla siempre art. 2116 (mandato) 1793 y 1801 para compraventa, 2116 para poder
Salida .md dejaba {OTORGANTE} sin sustituir sustituye los campos
Dos documentos a la vez se pisaban el mismo .odt carpeta propia por llamada
40 artículos concurrentes 7,2 s 0,15 s (prefiltro en SQL y conexiones cerradas)

Además, esta versión incorpora las correcciones del ejercicio de evaluación de T-105, que hasta ahora solo estaban en el repositorio: fuente con i=None, cita de artículo derogado que decía «vigente», [not_found] sin nombre de norma, documento sin base legal, la Ley 19.496 en el corpus y las claves con sufijo (DEL ART. 2).

Cobertura y límites

  • 9 cuerpos legales: DL 825, Código del Trabajo, Código Civil, Comercio, Penal, Constitución, Ley 19.628, Ley 19.496 y Arancel de notarios.
  • No cubre jurisprudencia, tribunales, SII más allá de las normas, competencia territorial notarial estructurada, precios actuales ni firma de documentos.
  • Los montos del arancel son nominales de 1998: el servidor los muestra y advierte, no calcula el precio final.

Datos y licencias

  • Código: Apache-2.0 (LICENSE).
  • Fuente: LeyChile / BCN. El paquete no redistribuye el corpus: lo descarga en la máquina del usuario. Los términos de LeyChile no se pudieron verificar (2026-11-06).
  • Fichas notariales: CC BY 4.0, con fuente y fecha por campo.

Pruebas

python -m pytest -q                     # 30 tests
python -m eval.estres                   # 41 comprobaciones de estrés por stdio
python -m eval.correr --banco 60        # 66 tareas: exactitud 1.0, 0 alucinaciones
python -m eval.ejercicio                # 10 tareas de razonamiento (22/22)
python -m mcp_leyes --notaria           # 27 fichas, 0 fallos

Metadata

Release files for mcp-leyes-chile 0.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mcp-leyes-chile 0.2.2
File Size Uploaded Provenance Actions
mcp_leyes_chile-0.2.2.tar.gz 36.8 kB Without provenance Details for mcp_leyes_chile-0.2.2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for mcp-leyes-chile 0.2.2
File Interpreter ABI Platform Actions
mcp_leyes_chile-0.2.2-py3-none-any.whl Python 3 none any Details for mcp_leyes_chile-0.2.2-py3-none-any.whl

Total release size: 83.5 kB

Release files / mcp_leyes_chile-0.2.2.tar.gz

Download URL mcp_leyes_chile-0.2.2.tar.gz
Size 36.8 kB
Tags Source
SHA-256 checksum
How to use checksums
69e21e355b7ffe46d71a9afc2bf05644caadb3ebccd748f065aec540dbad6ae5
BLAKE2b-256 checksum
How to use checksums
1e3a97a8c0f9532b862b55c979df24cfc66f982517cf37a70a824c7f8748ebe4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.10

Release files / mcp_leyes_chile-0.2.2-py3-none-any.whl

Download URL mcp_leyes_chile-0.2.2-py3-none-any.whl
Size 46.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b94456b7d4290e0d4a7120dd0baa239cc117fbd11929d27f8ddd3d5fdb07817c
BLAKE2b-256 checksum
How to use checksums
67d1a5e264e719ce08db0355625920099f500b2bfce7a27d792967675a17e4aa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.10

Security for mcp-leyes-chile 0.2.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page