Lex API MX

io.github.Julio-PatronPublished by GitHub account Julio-Patronv0.4.2Updated Nov 4, 2026

Legislación federal mexicana vigente con fuente, checksum y vigencia para agentes de IA

Overview

AI-generated overview

Connects an assistant to Mexican federal legislation through Lex API MX, returning articles with official source, validity dates and SHA-256 checksums.

What you can do
  • Resolve a citation or a described legal situation into a verifiable normative package
  • Search federal laws and regulations by terms, norm or subject as of a given date
  • Read a norm's structure index, article numbering and divisions
  • Read a full article by UUID, its conserved versions and history
  • List the norm catalog and slugs, and fetch current norm metadata
  • Check live corpus status and coverage
When to use it
Useful when answering questions about what Mexican federal laws or regulations say, or when a citation must be backed by an official source, validity period and checksum rather than recalled from memory.
Requirements
Runs locally via uvx (Python package lex-api-mx-mcp) over stdio. Requires a Lex API MX account with a confirmed email and an API key in LEX_API_MX_KEY; LEX_API_MX_BASE_URL is optional and defaults to the hosted API. Network access to the Lex API MX service is needed.
Before you install
The API key is sent with every call and is shared between API and MCP use, so treat it as a secret. Quota and permissions follow the account policy; monthly quota is shared across keys and burst limits remain. Text reads are date-scoped, and coverage starts at a baseline date, so older or future texts are not available. The topic map is a limited catalog, not a determination of applicable law.

Installation

In SourceWeft

  1. Open Lex API MX in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

Lex API MX — servidor MCP

Servidor Model Context Protocol que conecta Claude Desktop, Claude Code, Cursor o cualquier agente MCP con la legislación federal mexicana vigente de Lex API MX.

El servidor es un adaptador ligero y de código abierto (MIT): no contiene el corpus. Cada llamada consulta la API de Lex API MX con tu clave y devuelve el paquete normativo tal cual, con cita canónica, vigencia, fuente oficial y checksum SHA-256 del texto. La estructura de una norma llega como un índice compacto (el árbol completo de la Ley Federal del Trabajo pesa más de 1 MB; su índice, unos 15 KB).

Herramientas

HerramientaEndpointPara qué
resolve_legal_citationPOST /api/v1/resolveResolver una cita o situación a un paquete normativo verificable.
search_mexican_lawGET /api/v1/articulos/searchBuscar artículos vigentes por texto, norma o materia.
get_norm_structureGET /api/v1/normas/{slug}/estructuraÍndice de una norma: primer y último artículo, divisiones en orden y números de artículo. El texto (include_text, por páginas de nodos con page) se rige por los permisos y la cuota de la cuenta.
map_legal_topicPOST /api/v1/mapCitas del catálogo limitado de temas, con cobertura y advertencias.
get_legal_articleGET /api/v1/articulos/{id}Artículo completo por UUID, con fuente, vigencia y SHA.
list_legal_normsGET /api/v1/normasCatálogo paginado de normas y sus slugs.
get_legal_normGET /api/v1/normas/{slug}Metadatos actuales de una norma.
get_legal_article_historyGET /api/v1/articulos/{id}/historialVersiones conservadas con fuente, vigencia y SHA.
get_corpus_statusGET /api/v1/corpus/statusEstado público del corpus; no consume cuota.

Las lecturas de texto exigen fecha ("vigente" o YYYY-MM-DD). Búsqueda, resolución, mapa y catálogo reciben jurisdiccion, hoy solo "federal". Las lecturas de metadatos, historial y estado no reciben fecha.

Instalación

Requiere uv y una clave de Lex API MX. El plan gratuito publica sus límites vigentes en Cuenta: crea tu cuenta con tu correo y genera la clave en lexapi.mx/cuenta.

json
{  "mcpServers": {    "lex-api-mx": {      "command": "uvx",      "args": ["lex-api-mx-mcp"],      "env": { "LEX_API_MX_KEY": "tu_clave" }    }  }}
  • Claude Desktop: Settings → Developer → Edit Config y pega el bloque anterior en claude_desktop_config.json; reinicia la aplicación.
  • Claude Code: claude mcp add lex-api-mx --env LEX_API_MX_KEY=tu_clave -- uvx lex-api-mx-mcp
  • Cursor: el mismo bloque en ~/.cursor/mcp.json (global) o .cursor/mcp.json (proyecto).

Pruébalo preguntando: ¿Cuáles son las causas de rescisión de la relación de trabajo sin responsabilidad para el patrón? Cita el artículo exacto.

Variables de entorno

VariableObligatoriaValor por defecto
LEX_API_MX_KEYSí—
LEX_API_MX_BASE_URLNohttps://api.lexapi.mx

Errores

Los errores de la API llegan al modelo como errores de herramienta legibles y con la acción para la siguiente llamada: clave inválida (401), permiso faltante o condiciones anteriores (403), saldo anterior agotado (402: no reintentar y avisar al responsable para revisar y activar voluntariamente acceso gratuito en Cuenta), norma inexistente o fecha anterior a la cobertura (404: qué slug o qué fecha usar) y límite de peticiones (429). Ante un 429 con espera de 30 segundos o menos, el servidor reintenta solo hasta dos veces.

Código fuente

github.com/Julio-Patron/lexapi-mx (licencia MIT). También está en el MCP Registry como io.github.Julio-Patron/lex-api-mx.

Lectura gratuita

API y MCP requieren la misma clave de una cuenta con correo confirmado. La política activa de Cuenta determina cuota y permisos; la lectura incluida no exige créditos. La cuota mensual se comparte entre claves por cuenta y mes UTC. monthly_quota_exceeded indica cuándo se renueva; no se resuelve comprando créditos. Se mantienen límites de texto, resultados, tamaño y concurrencia.

El MCP incluye búsqueda, estructura, resolve, map_legal_topic, get_legal_article, list_legal_norms, get_legal_norm, get_legal_article_history y get_corpus_status. El mapa conserva un catálogo limitado de temas y citas; no determina todo el marco aplicable a un caso. Revisa coverage, articles_missing y warnings. Las ocho lecturas normativas aceptan idempotency_key: conserva identificador y parámetros para el mismo reintento; una petición distinta es otro evento. No se eliminan límites de ráfagas por reintentar. get_corpus_status consulta el estado público y no consume cuota.

La API y el MCP son gratuitos; no se venden planes ni recargas. Confirma tu correo y entra en Cuenta para recibir tu primera clave. Las cuentas anteriores pueden aceptar allí los límites gratuitos, conservando saldos e historial.

Source: packages/lex-mcp-server/README.md at commit 88b7fe1

Tools

9

search_mexican_law

Busca por términos artículos de leyes y reglamentos federales mexicanos con el texto que regía en `fecha`. Úsala cuando necesites el fundamento legal de un tema y no conozcas el artículo exacto; si ya tienes la cita (norma y número), usa resolve_legal_citation. La búsqueda es por términos, no semántica: escribe palabras clave, no una pregunta completa. Prioriza coincidencias de todos los términos en una disposición; después incluye coincidencias parciales mediante OR. Busca en el artículo y sus fracciones, incisos y apartados, sin distinguir acentos. Las frases entre comillas, OR explícito y exclusiones con - no se amplían. Cada resultado es el artículo completo con su cita canónica, su vigencia (`valid_from`, `valid_to`), el URL de la fuente oficial y el checksum SHA-256. Si `data` llega vacío, revisa `meta.coverage.status` y reformula con sinónimos jurídicos antes de concluir que no hay fundamento.

Parametersfecharequiredlimitnormaqueryrequiredmateriajurisdiccionrequiredidempotency_key

get_norm_structure

Devuelve el índice de una norma federal mexicana en `fecha`: sus divisiones y los números de sus artículos. Úsala para conocer la numeración de una norma antes de citarla, para comprobar si un artículo existe cuando resolve_legal_citation no lo encuentra y para ubicar un artículo en su título o capítulo. `resumen` trae el primer y el último artículo y el número de nodos por tipo; en `indice`, cada división tiene su `etiqueta` y su `contenido` en orden, donde cada texto suelto es el número de un artículo. Las fracciones e incisos se cuentan pero no se listan. Con include_text=True, `textos` trae los nodos de la página pedida, en el orden del documento, con su texto, su vigencia, su fuente y su checksum.

Parameterspagefecharequirednormarequiredinclude_textidempotency_key

get_legal_article

Lee un artículo completo por el UUID devuelto por la API, con sus componentes y SHA exacto.

Parametersfecharequiredarticle_idrequiredidempotency_key

get_legal_article_history

Consulta las versiones conservadas de un artículo con fuente, SHA y vigencia. La historia es prospectiva desde el baseline; no completa periodos sin cobertura.

Parametersarticle_idrequiredidempotency_key

get_corpus_status

Estado vivo del corpus y monitor, con fecha UTC y alcance declarado por la API.

Takes no parameters.

Version history

8
  1. v0.4.2LatestNov 4, 2026
  2. v0.4.1Nov 3, 2026
  3. v0.4.0Nov 3, 2026
  4. v0.3.1Oct 15, 2026
  5. v0.3.0Oct 13, 2026
  6. v0.2.1Oct 12, 2026
  7. v0.2.0Oct 11, 2026
  8. v0.1.2Oct 11, 2026

Score

80% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts
  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.