Prototipo · Versión preliminar: todos los servidores del registro oficial, sincronizados cada 30 minutos. Las reseñas y las cuentas llegarán en una etapa posterior.
PopNx MCPServidores MCP para quienes usan IA · explicados con palabras sencillas

Lebanese Legislation

de taktekhqversión 2.0.0i★ –iSe ejecuta en la nube
Nombre en el registrocom.lebaneselegislation/mcp

Instalar

Resumen

Descripción del creador (original en inglés)

Search and read Lebanese laws, articles, court rulings and Gazette issues. Verbatim texts only.

Los tres pilares de PopNx MCP

Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.

Qué puedes hacer con él

Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.

  • Conexión: Se ejecuta en la nube
  • Transporte: Streamable HTTP
  • Categoría: Derecho y datos públicos

Instalación

Elige la app de IA que usas y copia la configuración.

Antes de instalar

Necesitas

¿Qué app usas?

Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.

Funciona en Claude para web, escritorio y móvil:

  1. Abre Settings → Connectors
  2. Presiona Add custom connector
  3. Pega la dirección de abajo y presiona Add
  4. Si te pide iniciar sesión, inicia sesión en el servicio del creador
SettingsConnectors1+ Add2https://…3
https://lebaneselegislation.com/mcp

Ejecuta esto en tu terminal

claude mcp add --transport http lebaneselegislation https://lebaneselegislation.com/mcp

Abrir en Cursor

O copia la configuración tú

Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json

{
  "mcpServers": {
    "lebaneselegislation": {
      "url": "https://lebaneselegislation.com/mcp"
    }
  }
}

Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.

Abrir en VS Code

O copia la configuración tú

Pégalo en .vscode/mcp.json de tu proyecto

{
  "servers": {
    "lebaneselegislation": {
      "type": "http",
      "url": "https://lebaneselegislation.com/mcp"
    }
  }
}

Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.

ChatGPT solo se conecta a servidores en internet:

  1. Abre ChatGPT en la web → Settings → Connectors (Apps)
  2. Presiona Create o Add (en algunos planes primero hay que activar Developer mode en Advanced)
  3. Pega la dirección de abajo, ponle un nombre y guarda
  4. Si te pide iniciar sesión, inicia sesión en el servicio del creador
SettingsConnectors1+ Create2https://…3
https://lebaneselegislation.com/mcp

Los nombres de los menús pueden variar un poco según el plan y con el tiempo.

Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.

Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.

Qué puede hacer

Nombres y descripciones de las herramientas tal como los informó el servidor el 7 nov 2026. Los escribió el creador, no nosotros; los mostramos como texto sin formato.

  • search_legislation

    When calculated_current is present, use its text_ar for current monetary amounts and cite its authority.url. Identify this as calculated under the authority, never as verbatim published wording. The article text_ar and source fields remain published wording. Search Lebanese legis

  • get_law

    Get a law, decree or similar text's metadata (kind, number, date, status), its table of contents (the chapters: id, parent_id, depth, heading), its articles in order (number, and the section_id of the chapter each sits under) and the texts it amended or was amended by (amended_by

  • get_article

    When calculated_current is present, use its text_ar for current monetary amounts and cite its authority.url. Identify this as calculated under the authority, never as verbatim published wording. The article text_ar and source fields remain published wording. Get one article's ver

  • get_law_texts

    When calculated_current is present, use its text_ar for current monetary amounts and cite its authority.url. Identify this as calculated under the authority, never as verbatim published wording. The article text_ar and source fields remain published wording. Get the verbatim text

  • get_ruling

    Get one court ruling (judgment) by id: court, number, date, panel, and its verbatim text when the Centre holds it as typed text. When available, pages returns the scanned judgment's machine reading, with low_confidence: true on hard-to-read pages where errors are expected. pdf_ur

  • get_gazette_issue

    Get one Official Gazette issue by id: its number, publication date, and the laws, decrees and decisions it published. Not legal advice.

  • get_links

    Get the graph edges into or out of one item: a law, an article, a ruling, an opinion, a research study or a Gazette issue. Use this to walk citations and amendments directly, instead of only what get_law and get_article attach automatically. For a law key ("law/ ") the default sc

  • list_legislation

    List laws, decrees and decisions by date, newest first: for "everything published since January 2025" call with since "2025-01". The date is the publication date: the Official Gazette date, else the issue date (each entry's date, with gazette_number, gazette_date and gazette_issu

  • list_gazette_issues

    List Official Gazette issues by publication date, newest first, with the number of texts each carries (text_count) and where the issue comes from: source "centre" (the Lebanese University's Centre, whose issues stop about a year back) or "scans" (issues seen in Gazette scans, ids

  • possibly_affected

    Get the general repeals that may touch a law: earlier texts with a "all provisions contrary to this law are repealed" clause pointing at it. A list to check, never a finding that anything was actually repealed. Not legal advice.

Revisiones básicasi

Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 8 nov 2026

  • ✓ Superada

    El creador coincide con el repo

    El nombre en el registro se verificó con el dominio lebaneselegislation.com (el registro comprueba quién es dueño del dominio)

  • … Aún sin revisar

    Sigue en mantenimiento

    Todavía no hemos leído este repo en GitHub

  • … Aún sin revisar

    Tiene licencia

    Todavía no hemos leído este repo en GitHub

  • ✓ Superada

    El endpoint responde

    Respondió en 597 ms (HTTP 200)

  • – No aplica

    Inicio de sesión con OAuth

    No hace falta iniciar sesión

  • ✓ Superada

    Sin instrucciones ocultas en las descripciones de herramientas

    Leímos 10 descripciones de herramientas y no encontramos instrucciones ocultas para la IA

Comparado con otros en Derecho y datos públicosi

  • Más estrellas que el 0% de los otros 1757 servidores de esta categoría
  • Publicado en el registro más recientemente que el 96% de los otros 1757 servidores de esta categoría
  • Revisiones básicas iguales o mejores que el 100% de los otros 1757 servidores de esta categoría

Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.

Preguntas frecuentes

¿Es seguro Lebanese Legislation?

Superó 3 de 3 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.

¿Qué claves o códigos necesita?

El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.

¿Se ejecuta en mi computadora o en la nube?

Se ejecuta en la nube del creador. Te conectas por internet sin instalar nada, pero lo que envías pasa por los servidores del creador.

¿Sigue en mantenimiento?

El repo de GitHub cambió por última vez –, y la última versión (2.0.0) llegó al registro anteayer.

¿Qué apps pueden usarlo?

Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. Se conecta por URL, así que también funcionan las apps que aceptan servidores MCP remotos, como ChatGPT en modo desarrollador.

¿Qué puedo usar en su lugar?

En la misma categoría: sanctions.io MCP by usefulapi, Worldbank MCP, Uk Parliament MCP

Alternativas

Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.

Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi

sanctions.io MCP by usefulapi

Screen names against sanctions, PEP and watchlists; list screening sources in sanctions.io.

de m190InicialActualizado hoy

Se ejecuta en la nube✓ usefulapi.io

Worldbank MCP

World Bank Open Data: indicator catalogue sea MCP: real tools for real work.

de mrfentmenMuy nuevo↓ 91/semActualizado hoy

Se ejecuta en tu computadora

Uk Parliament MCP

UK Parliament open data: find MPs and Lords, read member profiles, and search bills with their

de mrfentmenMuy nuevo↓ 140/semActualizado hoy

Se ejecuta en tu computadora

README del creador

Abrir el README

Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.

Lebanese Legislation

Every Lebanese law, one search away.

The open code and data behind LebaneseLegislation.com : laws, decrees, court rulings and the Official Gazette, in Arabic and French, with search, a JSON API and an MCP server for AI assistants.

التشريع اللبناني: القوانين والمراسيم والأحكام القضائية والجريدة الرسمية، بالعربية والفرنسية، كبيانات مفتوحة وواجهة برمجية وخادم MCP لمساعدي الذكاء الاصطناعي.

Website · AI and MCP · API · Data on Hugging Face · Journal · Students

Why

The texts of Lebanese law are public, but hard to read online. LebaneseLegislation.com puts every law, decree, ruling and Gazette issue on its own page, links each article to the texts that amend it and the rulings that apply it, and gives developers and AI assistants the same data through an API, an MCP server and open downloads. Every page links back to its source at the Lebanese University's Centre for Research and Studies in Legal Informatics.

Start in one minute

Read and search at lebaneselegislation.com. Questions get a short answer written only from the library's own texts, with a link to each source.

Connect your AI assistant. The MCP server is free, needs no key, and returns the texts word for word:

claude mcp add --transport http lebanese-legislation https://lebaneselegislation.com/mcp

Claude, ChatGPT, Cursor and Gemini setup: lebaneselegislation.com/ai and docs/mcp.md.

Call the API. No key, JSON, described by /openapi.json:

curl -G 'https://lebaneselegislation.com/api/v1/search/' --data-urlencode 'q=قانون العمل'

Load the data. One Parquet file per table on Hugging Face:

from datasets import load_dataset

articles = load_dataset("taktekhq/lebanese-legislation", "legislation_article", split="train")

Run the whole site yourself. One image holds the database, the website, the API and the MCP server:

git clone https://github.com/taktekhq/lebanese-legislation.git && cd lebanese-legislation

./setup && docker compose --profile all up -d all # then open http://localhost:8080

Where everything is

You wantGo to
Read the lawsLebaneseLegislation.com
Connect an AI assistantThe free MCP server at https://lebaneselegislation.com/mcp. Setup
The data as tablesParquet files on Hugging Face
The data as a PostgreSQL databaseThe -db or -all image, with the databases baked from data/
Semantic search vectorsvectors/vectors.parquet, embedded with gemini-embedding-001 in 768 dimensions. Read with DuckDB
The original court scansCourt scans on Hugging Face
Every source page as it was servedArchive dataset on Hugging Face and its repository
What changed and whyThe project journal and docs/changes.md
Get paid to study with it (students in Lebanon)The student program

Data lives on Hugging Face. Code and Docker images live here. Each GitHub release is a code version, never a data download.

How it runs

flowchart LR

UL[Lebanese University source pages] -->|scraper| A[archive/] A -->|build-db| D[data/ tables as text] D -->|data workflow| HF[Hugging Face Parquet + vectors] D -->|static-site workflow| R2[(Cloudflare R2 static pages)] D -->|data workflow| IMG[-db and -all images] IMG -->|origin workflow| C[Cloudflare Container PostgreSQL + Go server] R2 --> W{Worker} C --> W W --> U[Readers, AI assistants, API clients]

Cloudflare serves the static pages and ruling PDFs from R2 through the Worker in workers/static-site. Search, /api/v1/, filters, scans and /mcp go through workers/origin to a blue/green Cloudflare Container running the -all image. static-site.yml renders data/ with cmd/static-export, only the pages that changed: a data change renders the pages its rows touch, a template, string or topic guide change the pages that used it, and a Go change every page. It starts on every push to main that touches the site, and a catch-up check after each deploy reruns a failed one. Changed pages go to IndexNow. vectors.yml embeds new passages, publishes the vectors and loads Cloudflare Vectorize. See architecture and static export.

AI crawlers are welcome. robots.txt lets every named AI crawler (GPTBot, ClaudeBot, PerplexityBot, ShapBot and others) read the pages, search, the API and the MCP server. Every client gets the same limit on dynamic paths: 30 requests per 10 seconds from one address.

Update the data yourself

Run scripts/nightly.sh on your own machine to scrape, rebuild, check and export the data, then open a data-only pull request. Use --dry-run to do the work locally without pushing or opening a PR. GitHub Actions cannot run it.

You need Bash, flock, Git, rsync, curl, Python 3, Go, PostgreSQL and an authenticated GitHub CLI. Set LEBLEG_DSN to a dedicated rebuild database; LEBLEG_STORE, LEBLEG_DATA and LEBLEG_LOCK_FILE override local paths. LEBLEG_REPO selects the target repository. Maintainers merge the PR, then the workflows publish everything. See Update the data for requirements, every step, configuration and a nightly user systemd timer.

Production and development

The same image, ghcr.io/taktekhq/lebanese-legislation-all, runs in both. It holds PostgreSQL with the data, the API (/api/v1/), the MCP server (/mcp) and the website server.

ProductionDevelopment
Static pagesbuilt by static-site.yml into Cloudflare R2, served by the Worker in workers/static-siterendered on request by the -all image
API, MCP, searchthe Worker passes them to -all (Cloudflare Containers, blue/green, workers/origin)-all directly
Run itorigin.yml deploys itdocker compose --profile all up all, then open http://localhost:8080

In development every page is rendered on request, which is slower than production but needs nothing besides the image. To get the exact static copy production serves, run static-export against the database: see docs/static-export.md.

Run the services locally

git clone https://github.com/taktekhq/lebanese-legislation.git

cd lebanese-legislation ./setup docker compose --profile all up -d all

You need Docker Compose, 8 GB of free memory and 30 GB of free disk. ./setup writes private local passwords to .env. The image already holds both databases. The first start copies them into an empty volume; later starts reuse it.

Then open the website at http://localhost:8080, the API at http://localhost:8080/api/v1/, or point an MCP client at http://localhost:8080/mcp.

To run the database, API and MCP as separate services instead, use docker compose up -d --wait db api mcp: the API answers on http://localhost:8000/api/v1/ and MCP on http://localhost:8001/mcp. Every image is pulled as :latest, so a docker compose pull is all an update needs. Exact and citation search need no AI key. For search by meaning, configure your own Gemini key and Vectorize index, or load the public vectors into pgvector in lebleg_search. See loading vectors.

Images

All names use the prefix ghcr.io/taktekhq/lebanese-legislation.

ImageHoldsUsed by
-dbPostgreSQL 18.6, pgvector, both databases baked from data/, chunk text and hashes without embeddingsCompose, database users, the static render and the base of -all
-apiStandalone API server, unchanged Dockerfile and amd64/arm64 supportCompose and API users with a separate database
-mcpStandalone MCP server, unchanged Dockerfile and amd64/arm64 supportCompose and MCP clients with a separate database
-all-db plus the Go server for dynamic pages, /api/v1/, /mcp and badgesCompose, Cloudflare Containers and self-hosted sites
-vectorsvectorize-sync, export-vectors and DuckDB; downloads the Hugging Face vectors at runtimeThe vectors workflow and users loading Vectorize or pgvector

Each image is built by the workflow that produces its inputs: the checks workflow publishes -api, -mcp and -all after a push to main, data publishes -db and -all after a data change, and vectors publishes -vectors. images.yml is a manual button to rebuild one. Every image gets a latest tag and a UTC date tag, so use :latest unless you need a fixed copy. Static pages are published directly to R2. Publishin

Solo se muestra el principio; lee el resto en el repo

Pregunta a PopNx