Skip to main content
Glama

EU Law Lookup API (EUR-Lex): article text, in force, amendments

eu_law_lookup
Read-onlyIdempotent

One call answers "what does Article 50 of the AI Act say today, is it in force, and what amended it?": the article as plain text from the current consolidated version (or the one in force on any date), the act's in-force status and dates, and the acts that amend, correct or repeal it. A second mode lists new acts in the Official Journal L series. Built for AI agents doing legal and compliance work, and for people who want a sourced answer without SPARQL.

Price: $0.005 per act-lookup.

Input Schema

NameRequiredDescriptionDefault
asOfNoYYYY-MM-DD, e.g. "2025-01-01": return the consolidated version that applied on that date
queryNoThe EU act to look up: a short name ("GDPR", "AI Act", "DSA", "NIS2", "DORA", "MiCA", "CSRD"...), a citation ("Regulation
articleNoArticle number, optionally with a paragraph: "5", "6(1)", "4a"; several separated by commas ("5, 6(1)", up to 10)
includeNoAny of "metadata" (always on), "amendments" (amended_by, corrected_by, repealed_by, amends, repeals), "citing" (acts and judgments that cite this act, newest first) and "text"
ojSinceNoSwitches to Official Journal mode: list acts published in the OJ L series from this date (YYYY-MM-DD, e.g. "2026-11-03") until today, newest first, at most 31 days back
keywordsNoOJ mode only: comma-separated words or phrases; an act is kept when its title (in the chosen language) contains any of them, case-insensitive, e.g. "artificial intelligence, data"
languageNoEU language code of the text and titles: BG, CS, DA, DE, EL, EN, ES, ET, FI, FR, GA, HR, HU, IT, LT, LV, MT, NL, PL, PT, RO, SK, SL, SVEN
maxCitingNoWith include "citing": how many citing acts to list, newest first, e.g. 20 (default)
maxResultsNoOJ mode only: the most acts to return, newest first, e.g. 50 (default)
maxTextCharsNoCap on article_text and text, in characters, e.g. 30000 (default)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description adds two pieces of real behavioral context beyond that: the answer is drawn from the consolidated version in force (or as of a given date), and the call costs $0.005 per act-lookup — cost is material for an agent deciding whether to call. It stops short of describing response shape, truncation behavior, or failure modes when an act cannot be resolved.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the concrete question the tool answers, then the second mode, then audience and price — a sensible ordering with little waste. The 'built for AI agents doing legal and compliance work... without SPARQL' sentence is partly positioning filler, though it does signal the tool replaces raw SPARQL access.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 10-parameter tool with no output schema, the description covers both modes, the consolidated-version behavior, and cost, while the schema fully documents every parameter. The main gap is that with no output schema, an agent gets no sense of the response structure (how article text, in-force dates and amendment lists are composed) or how maxTextChars truncation manifests.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so every parameter already carries its own explanation and the baseline is 3. The description's contribution is framing rather than parameter detail — it ties article, asOf, amendments and the OJ mode into a single narrative, but adds no syntax, defaults, or edge-case meaning the schema does not already state.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb-and-resource pair (retrieve article text, in-force status and amendments for an EU act from EUR-Lex) and spells out a second, distinct mode (Official Journal L series listing). It is unmistakably an EU-law tool, which implicitly separates it from national_law_lookup, but it never names or contrasts with that sibling explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The two operating modes are described clearly enough that an agent can infer that supplying ojSince switches to OJ listing, and the framing question ('what does Article 50 of the AI Act say today...') gives a concrete use case. There is, however, no explicit when-not-to-use guidance and no routing advice versus national_law_lookup or us_federal_rules for cross-jurisdiction questions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.