Skip to main content
Glama

eurlex_case_law

Read-onlyIdempotent

Find CJEU judgments, orders, and Advocate General opinions by title, CELEX, ECLI, or related legal act CELEX, with filters for court, type, language, and date.

Instructions

Finds Court of Justice of the EU (CJEU) case law — judgments (JUDG), orders (ORDER), and Advocate General opinions (OPIN_AG) of the Court of Justice and the General Court. Look up rulings four ways (at least one required, combinable): query=title/party substring (e.g. "Schrems"), celex_id=a sector-6 CELEX (e.g. "62012CJ0131"), ecli=a European Case Law Identifier (e.g. "ECLI:EU:C:2014:317"), or related_celex=a legal act's CELEX (e.g. "32016R0679") to get the case law interpreting that act. Narrow with court (COURT_JUSTICE/GENERAL_COURT), type, language, and date_from/date_to. Unlike eurlex_search (which searches legislation by title), this tool is scoped to case law and understands ECLIs and act-to-case-law relations. Each hit returns celex, ecli, title, date, type, and eurlex_url.

Input Schema

NameRequiredDescriptionDefault
ecliNoEuropean Case Law Identifier, e.g. "ECLI:EU:C:2014:317" (Google Spain).
typeNoProcedure type filter: JUDG=judgment, ORDER=court order, OPIN_AG=Advocate General opinion, any=all case-law document types (incl. procedural notices).any
courtNoCourt filter: COURT_JUSTICE=Court of Justice, GENERAL_COURT=General Court, any=both.any
limitNoMaximum number of results
queryNoTitle substring to search for among case law, e.g. "Schrems" or a party name. Matched as a contiguous phrase, case-insensitive. Note: CJEU titles begin with a boilerplate prefix ("Judgment of the Court …"); party names appear after it.
date_toNoFilter up to this judgment date, format YYYY-MM-DD
celex_idNoSector-6 CELEX identifier of a specific ruling, e.g. "62012CJ0131" (Google Spain).
languageNoLanguage of the title, as a Cellar 3-letter code (any of the 24 official EU languages, e.g. DEU, ENG, FRA, POL, SPA). A ruling with no title in this language yields no result.ENG
date_fromNoFilter from this judgment date onward, format YYYY-MM-DD
related_celexNoCELEX of a legal act (e.g. "32016R0679" for the GDPR); returns the case law that interprets that act.

Output Schema

NameRequiredDescriptionDefault
totalYesNumber of entries in `results`
resultsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv2.4.4
    • removedInput schema / additionalProperties
      Removed value: -false
    • addedOutput schema / properties / total / maximum
      Added value: +9007199254740991
    • addedOutput schema / properties / total / minimum
      Added value: +-9007199254740991
  2. Changed2 schema fields changedv2.4.2
    • removedInput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
    • removedOutput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
  3. Changed1 schema field changedv2.3.0
    • changedInput schema / properties / language / default
      Previous value: -"DEU"New value: +"ENG"
  4. First observedv2.2.0

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, openWorld), so the bar is lower. The description still adds real behavioral context: the boilerplate title prefix that affects query matching, and that a ruling without a title in the requested language yields no result. It stops short of discussing pagination or rate limits, so a 4 rather than 5.

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?

Dense but front-loaded — the scope statement comes first, then the four lookup modes, then filters and differentiation. It is longer than typical, but each sentence carries selection-relevant information; the return-field listing is the only mildly redundant part given an output schema exists.

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

Completeness5/5

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

For a 10-parameter search tool with an output schema and full annotation coverage, the description supplies everything needed to call it correctly: required-input semantics, combinability, filter interactions, and sibling differentiation. Nothing an agent needs for correct invocation is missing.

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

Parameters4/5

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

With 100% schema coverage the baseline is 3, but the description adds meaning beyond the schema: it explains query as case-insensitive contiguous phrase matching and warns that party names follow a boilerplate prefix, and clarifies related_celex as act-to-case-law traversal. These are genuine disambiguations not present in the schema text.

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

Purpose5/5

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

States a specific verb and resource ('Finds CJEU case law') and enumerates the document types it covers (JUDG, ORDER, OPIN_AG) across two courts. It explicitly distinguishes itself from eurlex_search, so an agent can route between them without opening either schema.

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

Usage Guidelines5/5

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

Gives explicit lookup modes ('four ways (at least one required, combinable)') with concrete examples for each, plus how to narrow with court/type/language/date filters. It also names the sibling alternative and the condition that selects it ('searches legislation by title' vs. case law).

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