Luxembourg-law-mcp

Luxembourg-law-mcp

Enables AI-powered legal research across 4,551 Luxembourg statutes, 260 case law decisions, and EU law integrations through natural language queries and 13 specialized tools.

Category
Visit Server

README

Luxembourg Law MCP Server

<!-- ANSVAR-CTA-BEGIN -->

▶ Try this MCP instantly via Ansvar Gateway

50 free queries/day · no card required · OAuth signup at ansvar.eu/gateway

One endpoint, one OAuth signup, access from any MCP-compatible client.

Connect

Claude Code (one line):

claude mcp add ansvar --transport http https://gateway.ansvar.eu/mcp

Claude Desktop / Cursor — add to claude_desktop_config.json (or mcp.json):

{
  "mcpServers": {
    "ansvar": {
      "type": "url",
      "url": "https://gateway.ansvar.eu/mcp"
    }
  }
}

Claude.ai — Settings → Connectors → Add custom connector → paste https://gateway.ansvar.eu/mcp

First request opens an OAuth flow at ansvar.eu/gateway. After signup, your client is bound to your account; tier (free / premium / team / company) determines fan-out, quota, and which downstream MCPs are reachable.


Self-host this MCP

You can also clone this repo and build the corpus yourself. The schema, fetcher, and tool implementations all live here. What is not in the repo is the pre-built database — TDM and standards-licensing constraints on the upstream sources mean we host the corpus on Ansvar infrastructure rather than redistribute it as a public artifact.

Build your own: run this repo's ingestion script (entry-point varies per repo — typically scripts/ingest.sh, npm run ingest, or make ingest; check the repo root). <!-- ANSVAR-CTA-END -->

The Legilux (Journal Officiel) alternative for the AI age.

MCP Registry License GitHub stars CI Daily Data Check Database Provisions

Query 4,551 Luxembourg statutes — from the loi du 1er août 2018 (protection des données) and the Code pénal to the Code du travail, la loi sur les sociétés commerciales, and more — directly from Claude, Cursor, or any MCP-compatible client.

If you're building legal tech, compliance tools, or doing Luxembourg legal research, this is your verified reference database.

Built by Ansvar Systems -- Stockholm, Sweden


Why This Exists

Luxembourg legal research is scattered across Legilux, the Journal Officiel du Grand-Duché de Luxembourg, EUR-Lex, and bilateral treaty collections. Whether you're:

  • A lawyer validating citations in a brief, contract, or société anonyme filing
  • A compliance officer checking GDPR obligations or CSSF regulatory requirements
  • A legal tech developer building tools on Luxembourg law
  • A researcher tracing legislative history from projet de loi to loi publiée

...you shouldn't need a dozen browser tabs and manual PDF cross-referencing. Ask Claude. Get the exact provision. With context.

This MCP server makes Luxembourg law searchable, cross-referenceable, and AI-readable.


Example Queries

Once connected, just ask naturally (les requêtes fonctionnent en français ou en anglais):

  • "Que dit l'article 5 de la loi du 1er août 2018 relative à la protection des personnes physiques à l'égard du traitement des données à caractère personnel ?"
  • "Rechercher 'protection des données' dans la législation luxembourgeoise"
  • "La loi du 2 août 2002 relative à la protection des personnes à l'égard du traitement des données à caractère personnel est-elle toujours en vigueur ?"
  • "Quels articles du Code pénal concernent les infractions informatiques ?"
  • "Quelles lois luxembourgeoises transposent la directive NIS2 ?"
  • "Rechercher les dispositions sur le secret professionnel dans le Code du travail"
  • "Validate the citation 'loi du 1er août 2018, art. 62'"
  • "Which Luxembourg laws implement the GDPR?"

What's Included

Category Count Details
Statutes 4,551 lois Comprehensive Luxembourg legislation from Legilux
Provisions 36,014 articles Full-text searchable with FTS5
Premium: Case law 260 judgments Tribunal et Cour d'appel decisions
Premium: Preparatory works 7 documents Projets de loi and exposés des motifs
Premium: Agency guidance 4,938 documents CNPD, CSSF, and ministerial circulars
Database Size ~69 MB Optimized SQLite, portable
Daily Updates Automated Freshness checks against Legilux

Verified data only — every citation is validated against official sources (Legilux / Journal Officiel). Zero LLM-generated content.


Why This Works

Verbatim Source Text (No LLM Processing):

  • All statute text is ingested from Legilux (legilux.public.lu) official sources
  • Provisions are returned unchanged from SQLite FTS5 database rows
  • Zero LLM summarization or paraphrasing — the database contains regulation text, not AI interpretations

Smart Context Management:

  • Search returns ranked provisions with BM25 scoring (safe for context)
  • Provision retrieval gives exact text by loi date/number + article
  • Cross-references help navigate without loading everything at once

Technical Architecture:

Legilux API → Parse → SQLite → FTS5 snippet() → MCP response
                ↑                     ↑
         Provision parser       Verbatim database query

Traditional Research vs. This MCP

Traditional Approach This MCP Server
Search Legilux by date de publication Search by plain French: "protection données consentement"
Navigate multi-chapter statutes manually Get the exact provision with context
Manual cross-referencing between lois build_legal_stance aggregates across sources
"Cette loi est-elle toujours en vigueur ?" → check manually check_currency tool → answer in seconds
Find EU basis → dig through EUR-Lex get_eu_basis → linked EU directives instantly
No API, no integration MCP protocol → AI-native

Traditional: Search Legilux → Download PDF → Ctrl+F → Cross-reference with Journal Officiel → Check EUR-Lex → Repeat

This MCP: "Quel est le fondement européen de l'article 5 de la loi du 1er août 2018 ?" → Done.


Available Tools (13)

Core Legal Research Tools (8)

Tool Description
search_legislation FTS5 full-text search across 36,014 provisions with BM25 ranking. Supports quoted phrases, boolean operators, prefix wildcards
get_provision Retrieve specific provision by statute reference + article number
check_currency Check if a statute is in force, amended, or repealed
validate_citation Validate citation against database — zero-hallucination check
build_legal_stance Aggregate citations from multiple statutes for a legal topic
format_citation Format citations per Luxembourg conventions (full/short/pinpoint)
list_sources List all available statutes with metadata, coverage scope, and data provenance
about Server info, capabilities, dataset statistics, and coverage summary

EU Law Integration Tools (5)

Tool Description
get_eu_basis Get EU directives/regulations underlying a Luxembourg statute
get_luxembourg_implementations Find Luxembourg laws implementing a specific EU act
search_eu_implementations Search EU documents with Luxembourg implementation counts
get_provision_eu_basis Get EU law references for a specific provision
validate_eu_compliance Check implementation status of Luxembourg statutes against EU directives

EU Law Integration

Luxembourg is an EU member state and EU founding member. Every major Luxembourg statute in data protection, financial regulation, and telecommunications has a direct EU basis. The EU bridge tools give you full bi-directional lookup.

Metric Value
EU Member State Yes — founding member
EU References Cross-references linking Luxembourg statutes to EU law
Directives transposed GDPR, NIS2, DORA, AI Act, eIDAS, AML directives, and more
EUR-Lex Integration Automated metadata fetching
CSSF supervision Financial sector EU regulatory framework fully covered

Key Luxembourg EU Implementations

  • Loi du 1er août 2018 — GDPR transposition and national data protection supplement
  • Loi du 22 janvier 2021 — Cybersecurity law (NIS Directive transposition)
  • Loi du 16 mai 2011 — AML/CFT (successive AMLD transpositions)
  • Loi du 5 avril 1993 — Financial sector (MiFID basis, extensively amended)

See EU_INTEGRATION_GUIDE.md for detailed documentation.


Data Sources & Freshness

All content is sourced from authoritative Luxembourg legal databases:

  • Legilux — Journal Officiel du Grand-Duché de Luxembourg (official statute publication)
  • EUR-Lex — Official EU law database (metadata only)

Data Provenance

Field Value
Authority Service Central de Législation, Grand-Duché de Luxembourg
Retrieval method Legilux official database
Languages French (primary legislative language); German and Luxembourgish also official
License Luxembourgish-Loi-2001-Art-10-Permitted-Acts (permitted-acts exception under Loi du 18 avril 2001 Art. 10(8°))
Coverage 4,551 statutes, 36,014 provisions
Last ingested 2026-02-28

Automated Freshness Checks (Daily)

A daily GitHub Actions workflow monitors Legilux for changes:

Check Method
Statute amendments Legilux date comparison across 4,551 statutes
New statutes Journal Officiel publication monitoring
Repealed statutes Status change detection
EU reference staleness Git commit timestamps — flagged if >90 days old

Verified data only — every citation is validated against official sources. Zero LLM-generated content.


Security

This project uses multiple layers of automated security scanning:

Scanner What It Does Schedule
CodeQL Static analysis for security vulnerabilities Weekly + PRs
Semgrep SAST scanning (OWASP top 10, secrets, TypeScript) Every push
Gitleaks Secret detection across git history Every push
Trivy CVE scanning on filesystem and npm dependencies Daily
Docker Security Container image scanning + SBOM generation Daily
Socket.dev Supply chain attack detection PRs
OSSF Scorecard OpenSSF best practices scoring Weekly
Dependabot Automated dependency updates Weekly

See SECURITY.md for the full policy and vulnerability reporting.


Important Disclaimers

Legal Advice

THIS TOOL IS NOT LEGAL ADVICE

Statute text is sourced from official Legilux publications. However:

  • This is a research tool, not a substitute for professional legal counsel
  • Court case coverage is limited — do not rely solely on this for case law research
  • Verify critical citations against primary sources (Legilux, Journal Officiel) for court filings
  • EU cross-references are extracted from statute text and EUR-Lex metadata, not a complete implementation mapping
  • Multilingual jurisdiction — Luxembourg law exists in French, German, and Luxembourgish. This database covers French-language legislative texts. Verify against official Legilux publications for other language versions

Before using professionally, read: DISCLAIMER.md | PRIVACY.md

Client Confidentiality

Queries go through the Claude API. For privileged or confidential matters, use on-premise deployment. See PRIVACY.md for guidance consistent with Barreau de Luxembourg / Ordre des Avocats du Barreau de Luxembourg professional conduct standards.


Development

Setup

git clone https://github.com/Ansvar-Systems/Luxembourg-law-mcp
cd Luxembourg-law-mcp
npm install
npm run build
npm test

Running Locally

npm run dev                                       # Start MCP server
npx @anthropic/mcp-inspector node dist/index.js   # Test with MCP Inspector

Data Management

npm run ingest           # Ingest statutes from Legilux
npm run build:db         # Rebuild SQLite database
npm run drift:detect     # Run drift detection against anchors
npm run check-updates    # Check for amendments

Performance

  • Search Speed: <100ms for most FTS5 queries
  • Database Size: ~69 MB (efficient, portable)
  • Reliability: 100% ingestion success rate across 4,551 statutes

More Ansvar MCPs

Full fleet at ansvar.eu/gateway.

Contributing

Contributions welcome! See CONTRIBUTING.md for guidelines.

Priority areas:

  • Court case law expansion (Tribunal administratif, Cour administrative, Cour d'appel)
  • CSSF circular and regulation coverage
  • German-language text version ingestion
  • Historical statute versions and amendment tracking
  • EU Regulations MCP integration for full directive text

Roadmap

  • [x] Core statute database with FTS5 search (4,551 statutes, 36,014 provisions)

  • [x] EU law integration with bi-directional lookup

  • [x] Premium dataset (260 case law, 7 preparatory works, 4,938 agency guidance documents)

  • [x] Vercel Streamable HTTP deployment

  • [ ] Court case law expansion

  • [ ] German-language statute coverage

  • [ ] Historical statute versions (amendment tracking)

  • [ ] CSSF and CNPD guidance documents


Citation

If you use this MCP server in academic research:

@software{luxembourg_law_mcp_2026,
  author = {Ansvar Systems AB},
  title = {Luxembourg Law MCP Server: AI-Powered Legal Research Tool},
  year = {2026},
  url = {https://github.com/Ansvar-Systems/Luxembourg-law-mcp},
  note = {4,551 Luxembourg statutes with 36,014 provisions and EU law cross-references}
}

License

Apache License 2.0. See LICENSE for details.

Data Licenses

  • Statutes & Legislation: Luxembourgish-Loi-2001-Art-10-Permitted-Acts — Luxembourg copyright permitted-acts exception under Loi du 18 avril 2001 sur les droits d'auteur, Art. 10(8°), which authorises reproductions and communications to the public of official texts of a legislative, administrative or judicial nature. This is a permitted-acts exception, NOT a statutory public-domain carve-out: copyright subsists on the underlying texts and Art. 10(8°) authorises specific acts of reuse. Under ADR-030 Luxembourg sits at AMBER until the scope of permitted commercial redistribution by third-party reusers is fully clarified. Verified 2026-05-17.
  • EU Metadata: EUR-Lex (EU public domain)

About Ansvar Systems

We build AI-accelerated compliance and legal research tools for the European market. Luxembourg's unique position as an EU financial and legal hub — hosting major banks, investment funds, and EU institutions — makes it a key jurisdiction for our compliance suite.

So we're open-sourcing it. Navigating 4,551 statutes across a trilingual legal system shouldn't require a law degree.

ansvar.eu -- Stockholm, Sweden


<p align="center"> <sub>Built with care in Stockholm, Sweden</sub> </p>

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured