Nothing left outside Cloudflare.
Until 2 November a rented server answered search, AI answers and the scans. Now the static pages and ruling PDFs come from Cloudflare R2, and everything else from one image on Cloudflare Containers. It runs in two copies, so a new version goes live without taking the site down. On 3 November we deleted the old server.
MCP reads what the pages show.
The MCP server at lebaneselegislation.com/mcp used to read a nightly copy of the library stored in Cloudflare D1. It is now the same Go server and PostgreSQL database that answer the site's search, so an assistant reads exactly what the pages show. The ten tools and their answers did not change.
Use :latest.
Every image, -db, -api, -mcp, -all and -vectors, now gets a latest tag from the workflow that builds it, plus a dated tag such as 2026-11-03. The documentation and compose.yaml pull :latest, so docker compose pull is all an update needs. The 0.x version tags stay published but no longer change. We also stopped publishing PostgreSQL dump files: the data is the Parquet dataset on Hugging Face and the database inside the -db image.
A date on every page.
Every law, article and ruling page now says when it last changed on this site, from its amendments, readings and corrections, and says it in its structured data too. That is never the date of the text itself. The API and the MCP tools return the same date as updated_at, and /openapi.json describes the whole API.
Fewer, better pages for search engines.
Pages that add little, such as generated topic summaries, badly scanned rulings and machine English for texts few people read, now ask search engines not to index them. They stay on the site and stay linked. English titles remain search aids, never translations.
One repository.
Older journal entries mention a separate starter repository and pending database releases. Both are gone. Everything, the scraper, the build, the website, the API, the MCP server and the data as text, is in github.com/taktekhq/lebanese-legislation, and the original source pages are in the archive repository next to it.