Home

Run it yourself

The whole library on your own machine.

The website, the JSON API and the MCP server are open source. One image runs all three, with the whole database inside it. Nothing leaves your machine.

What you need

  • Docker with Compose, on Linux, macOS or Windows.
  • 4 GB of free memory.
  • 30 GB of free disk.

Start it

git clone https://github.com/taktekhq/lebanese-legislation.git
cd lebanese-legislation
./setup
docker compose --profile all up -d all

./setup writes private local passwords to .env. The first start copies the databases baked into the image to an empty volume. Later starts reuse it.

Open it

  • Website: http://localhost:8080
  • JSON API: http://localhost:8080/api/v1/
  • MCP: http://localhost:8080/mcp

Prefer separate services? This starts the database, the API on port 8000 and the MCP server on port 8001 instead:

docker compose up -d --wait db api mcp

Point an MCP client at the local address instead of the public one. For Claude Code:

claude mcp add --transport http lebanese-legislation-local http://localhost:8080/mcp

Exact and citation search need no AI key. For search by meaning, add your own GEMINI_API_KEY to the .env file that ./setup creates.

The images

Every image has a latest tag that follows the newest build, so you never need to change a version number. The data is baked into the database and all-in-one images (about 2.8 GB to download, Linux AMD64). The API and MCP images are small and run on Linux AMD64 and ARM64. Dated tags such as 2026-11-03 stay published if you need a fixed copy.

More