@pipeworx/eur-lex

Connect: https://gateway.pipeworx.io/eur-lex/mcp · Install: one-click buttons

Tools: 8

The Regulations and Directives themselves, article by article, plus the judgments interpreting them.

Auth

None. Everything here is keyless.

Two halves

Legislationcompliance_index, search_legislation, get_metadata, list_articles, get_article, get_document. Named acts resolve by alias, so get_article({celex: "GDPR", article: "17"}) returns the right to erasure without anyone knowing that GDPR is 32016R0679.

Case lawcjeu_search, cjeu_judgment. The Court of Justice and the General Court.

cjeu_search({query: "data protection"})
  → 62023CJ0097  Court of Justice  Judgment  2026-02-10
    WhatsApp Ireland Ltd v European Data Protection Board

cjeu_judgment({case_number: "C-97/23"})
  → 87,178 characters of the Grand Chamber judgment

Caveats worth passing on

  • An Official Journal notice is not a judgment. 62023CA0097 is a paragraph-long summary of the ruling in 62023CJ0097. Both match a title search for the same case, so notices are excluded unless you pass include_notices: true.
  • A case number does not say what the court produced. “C-97/23” might be a judgment, an order, or an Advocate General’s opinion. cjeu_judgment tries them in that order, and if it ends up returning something other than the judgment it sets substituted: true and says so — an AG’s opinion is a recommendation to the Court, not the Court’s ruling.
  • Old cases may have no English judgment. English became an EU language in 1973, so for a 1964 case the judgment often has no English expression even though a later-translated AG opinion does. That is the main way substituted shows up in practice.
  • Two-digit years mean what the court means. 6/64 is 1964 and 97/23 is 2023; a two-digit year above the current one belongs to the last century.
  • Search matches the title, not the full text. CJEU titles name the parties and the subject matter, which is usually enough — but a doctrine discussed only in the reasoning will not be found by title.
  • us-code, court-listener — the US equivalents, statutes and case law
  • ted-eu — EU public procurement notices

Data sources

  • EUR-Lex CELLAR (publications.europa.eu) — document text
  • EU Publications Office SPARQL endpoint — search over CELEX metadata

© European Union, 1998–2026. Reuse authorised under the Commission’s reuse policy; EUR-Lex data is not covered by the Court’s own copyright.

Tools

  • compliance_index — Resolve a common EU regulation name to its CELEX id. Returns the curated map of the EU digital/compliance corpus (GDPR, NIS2, DORA, AI Act, DSA, DMA, eIDAS, Cyber Resilience Act, Data Act, …) with CEL
  • search_legislation — Full-text search of EU legislation titles via the EUR-Lex SPARQL endpoint. Returns CELEX id, English title and document date. Use when the act is not in compliance_index, or to find related/amending a
  • get_metadata — Fetch title, document date, legal type, in-force status hint, and EUR-Lex citation URL for one EU act by CELEX id (e.g. “32016R0679”) or alias (e.g. “GDPR”); does not download full text.
  • list_articles — Table of contents for an act: every Article number and its heading. Use to discover which Article to quote before calling get_article.
  • get_article — Full text of one or more Articles of an act, with a verifiable EUR-Lex citation URL for each. THE article-level grounding tool: quote GDPR Art. 17, AI Act Art. 6, etc. Accepts a single number (“17”),
  • get_document — Plain-text of a whole act (recitals + enacting terms), paged. Use for short acts or to read recitals/definitions; for a specific Article prefer get_article. Returns up to max_chars from offset.
  • cjeu_search — Search EU COURT JUDGMENTS — the case law of the Court of Justice (CJEU) and the General Court — by subject. Returns the case, the court, the date and the CELEX id to read it with. Use for “what has th
  • cjeu_judgment — Get the FULL TEXT of an EU court judgment from its case number — “C-97/23”, “T-144/25” — or its CELEX id. Resolves the case number people actually cite into the document. Use after cjeu_search, or whe

Tools

  • cjeu_judgment — Get the FULL TEXT of an EU court judgment from its case number — C-97/23 , T-144/25 — or its CELEX id. Resolves the case number people actually cite into the document. Use after cjeu_search, or whenev
  • cjeu_search — Search EU COURT JUDGMENTS — the case law of the Court of Justice (CJEU) and the General Court — by subject. Returns the case, the court, the date and the CELEX id to read it with. Use for what has the
  • compliance_index — Resolve a common EU regulation name to its CELEX id. Returns the curated map of the EU digital/compliance corpus (GDPR, NIS2, DORA, AI Act, DSA, DMA, eIDAS, Cyber Resilience Act, Data Act, …) with CEL
  • get_article — Full text of one or more Articles of an act, with a verifiable EUR-Lex citation URL for each. THE article-level grounding tool: quote GDPR Art. 17, AI Act Art. 6, etc. Accepts a single number ( 17 ),
  • get_document — Plain-text of a whole act (recitals + enacting terms), paged. Use for short acts or to read recitals/definitions; for a specific Article prefer get_article. Returns up to max_chars from offset.
  • get_metadata — Fetch title, document date, legal type, in-force status hint, and EUR-Lex citation URL for one EU act by CELEX id (e.g. 32016R0679 ) or alias (e.g. GDPR ); does not download full text.
  • list_articles — Table of contents for an act: every Article number and its heading. Use to discover which Article to quote before calling get_article.
  • search_legislation — Full-text search of EU legislation titles via the EUR-Lex SPARQL endpoint. Returns CELEX id, English title and document date. Use when the act is not in compliance_index, or to find related/amending a

Regenerated from source · build August 14, 2026