LeyChile MCP

LeyChile MCP

MCP server that connects AI to the Chilean legislation system (Ley Chile) for retrieving legal norms, citations, and intertemporal analysis.

Category
访问服务器

README

⚖️ LeyChile MCP

Servidor MCP (Model Context Protocol) que conecta a Claude — u otra IA compatible — en vivo y directamente con Ley Chile, el sistema de legislación de la Biblioteca del Congreso Nacional de Chile (BCN).

Convierte el ordenamiento jurídico chileno en herramientas de nivel forense, pensadas para el estudio y la práctica de estudiantes de Derecho, abogados litigantes y jueces: buscar normas, leer el texto vigente, citar con precisión incisos/numerales/letras, controlar la vigencia intertemporal, comparar versiones, aislar transitorios, mapear especialidad y vías procesales, y razonar con prompts jurídicos guiados.

CI Python License

⚠️ Herramienta no oficial, sin afiliación con la BCN. Los textos provienen de Ley Chile. No constituye asesoría jurídica: verifique siempre contra la fuente oficial. Es una ayuda metodológica; el criterio jurídico es del profesional.


¿Por qué este servidor?

A diferencia de un volcado estático y parcial, LeyChile MCP consulta a BCN en cada llamada, por lo que entrega la versión consolidada y vigente de cada norma, con cobertura completa del ordenamiento (leyes, decretos, DFL, códigos, resoluciones). Está en español, con citas verificables y enlace oficial.

Arquitectura en 3 capas (honesta)

La API de BCN entrega datos, no juicios jurídicos. Para no “alucinar derecho”, el servidor separa:

Capa Qué es Fuente de verdad
A — Datos Recuperación y parsing determinista del XML de BCN obtxml (BCN, en vivo)
B — Conocimiento Catálogos curados y verificados (códigos, especialidad, reenvíos procesales) Tablas mantenidas + verificación de vigencia en vivo
C — Razonamiento Prompts que guían el análisis usando A+B El modelo, citando A/B

Así, los datos los aporta BCN; el método lo aportan los prompts; y toda conclusión queda anclada a normas citadas.


Características destacadas

  • 🔎 Búsqueda por palabra clave o materia, con filtro por tipo.
  • 📄 Texto consolidado y vigente de cualquier norma (por idNorma o N° de ley).
  • 🧷 Segmentación forense: extrae el inciso, numeral o letra exactos (p. ej. “art. 254 inciso segundo del CPC”, “art. 434 N° 4”).
  • 🕰️ Vigencia intertemporal: cómo estaba redactado un artículo a una fecha dada, versión histórica exacta (idVersion), línea de tiempo y comparación de versiones.
  • ⚖️ Alerta de ultraactividad procesal: avisa cuando, en normas adjetivas, los plazos o actuaciones ya iniciados podrían regirse por la ley antigua.
  • 📘 Texto refundido e instrumento fijador; vacancia legal (publicada pero no vigente).
  • 🧩 Transitorios, definiciones legales y anexos (p. ej. sentencias del Tribunal Constitucional) aislados.
  • 🔗 Modificaciones desde notas marginales e Historia de la Ley con las leyes modificatorias.
  • 🗂️ Índice sistemático anti-desborde para códigos extensos y categorías temáticas de BCN.
  • 🧠 Capa de conocimiento: resolución de códigos por nombre, mapa de especialidad (arts. 4° y 13 CC) y reenvíos sustantivo↔adjetivo con verificación de vigencia de la vía procesal.
  • 💬 6 prompts jurídicos: antinomías, ratio legis, derogación orgánica, vigencia intertemporal, minuta de alegato y mapa normativo del caso.
  • 📌 Citas en texto libre: pega «art. 1698 inc. 1° del Código Civil» y obtén el texto exacto (leychile_citar).
  • 🔦 Buscar dentro de una norma (leychile_buscar_en_norma) y concordancias/remisiones de un artículo (leychile_concordancias_articulo).
  • 🏷️ Leyes por nombre popular: «Ley Karin», «Ley Emilia», etc. (leychile_resolver_ley_por_nombre).
  • 🛡️ Resiliencia: User-Agent de navegador (anti-403), failover de hosts BCN, caché diaria, reintentos, plegado de acentos.
  • 🔌 Transporte stdio (local) y streamable-HTTP (servicio).

Instalación

Requisitos: Python 3.10+.

git clone https://github.com/IanGuiloff/leychile-mcp.git
cd leychile-mcp
pip install -e .

Esto deja disponible el comando leychile-mcp.

Uso en Claude Desktop

Edita el archivo de configuración (%APPDATA%\Claude\claude_desktop_config.json en Windows; ~/Library/Application Support/Claude/claude_desktop_config.json en macOS) y agrega:

{
  "mcpServers": {
    "leychile": { "command": "leychile-mcp" }
  }
}

Reinicia Claude Desktop: aparecerán las herramientas leychile_*. (Ver examples/claude_desktop_config.json para la variante sin instalar.)

Uso en Claude Code

claude mcp add leychile -- leychile-mcp

Publicarlo como servicio (HTTP / Docker)

leychile-mcp --transport http --host 0.0.0.0 --port 8000   # endpoint: http://host:8000/mcp
# o con Docker:
docker build -t leychile-mcp . && docker run -p 8000:8000 leychile-mcp

Ejemplos (en lenguaje natural a la IA)

  • “Tráeme el inciso segundo del artículo 254 del Código de Procedimiento Civil.”
  • “Resuelve la cita: art. 19 N° 12 de la Constitución.”
  • “Busca ‘fuero maternal’ dentro del Código del Trabajo.”
  • “¿A qué artículos y leyes remite el art. 23 de la Ley 19.628?”
  • “¿Qué ley es la ‘Ley Karin’?”
  • “¿Cómo estaba redactado el artículo 17 de la Ley 19.628 el 1 de enero de 2005?”
  • Compara el artículo 17 de la Ley 19.628 entre 2010 y hoy.”
  • “Dame los artículos transitorios del Código del Trabajo.”
  • “¿Qué leyes especiales priman en materia de consumo? ¿Siguen vigentes?”
  • “¿Cuál es la vía procesal para una acción reivindicatoria?”
  • “Arma una minuta de alegato sobre término de contrato de arrendamiento urbano.”

Herramientas y prompts

28 herramientas (búsqueda, texto, fragmentos, vigencia, versiones, transitorios, modificaciones, definiciones, anexos, categorías, códigos, especialidad, vía procesal, Historia de la Ley) y 6 prompts jurídicos. Referencia completa en docs/HERRAMIENTAS.md.

Todas las herramientas aceptan response_format = markdown (por defecto) o json. Las de texto aceptan formato_texto = limpio (quita notas marginales) u original.


Cómo funciona

Usa el servicio abierto obtxml de Ley Chile:

  • Búsqueda: obtxml?opt=61&cadena=…&cantidad=…
  • Norma consolidada: obtxml?opt=7&idNorma=… (&idVersion=YYYY-MM-DD para texto histórico exacto)
  • Recientes: opt=3 · Categorías: opt=30 · Normas por categoría: opt=6

El XML se parsea preservando la jerarquía oficial (Libros/Títulos/Capítulos/Párrafos/Artículos) y la fecha de versión por artículo, base del control intertemporal.

Documentación de la fuente: Servicios web de Ley Chile · Esquema XML


Desarrollo

pip install -e ".[dev]"
pytest -q

Estructura del paquete: client.py (HTTP), parser.py (XML), segmenter.py (incisos/numerales/letras), timeline.py (vigencia intertemporal), catalog.py (capa B), prompts.py (capa C), formatting.py (salida + citas), service.py (orquestación), server.py (FastMCP).


Limitaciones

  • Depende de la disponibilidad del servicio de BCN (con reintentos, failover y caché).
  • numero_ley resuelve leyes; para otros tipos use id_norma o búsqueda.
  • La línea de tiempo se deriva del historial observable del texto vigente; para precisión absoluta a una fecha, contraste con la versión oficial.
  • leychile_historia_ley entrega enlaces a la tramitación (no descarga los PDF).
  • Las capas B y C son apoyo metodológico curado, no dictan derecho.

Créditos y datos

Datos: servicio público Ley Chile de la Biblioteca del Congreso Nacional de Chile (BCN). Proyecto creado y mantenido por Ian Guiloff.

Licencia

MIT © 2026 Ian Guiloff.

推荐服务器

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 模型以安全和受控的方式获取实时的网络信息。

官方
精选