Skip to main content
Glama

Rekvira: EU regulation pinpoints for compliance AI

Search one regulation

search_regulation
Read-onlyIdempotent

Search held regulation text. Returns pinpoints and excerpts, not summaries. Requires regulation id (e.g. eu-ai-act) and query string. limit, detail (compact|full) and max_chars bound the response. Then read_unit on the best pinpoints; verify_citation if checking someone else's cite.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
as_ofNoOptional date YYYY-MM-DD: answer with the wording in force on that date (default today). Amended provisions say which act gave them their wording
kindsNoOptional filter: recital, article, paragraph, annex, section
limitNoMost rows to return (default 10 on searches, max 50)
queryNoSearch terms in English (required)
detailNocompact (default: ~400-char excerpt around the match) | full (whole unit text)
max_charsNoCap on the response size in characters (default 8000)
regulationNoRegulation id from list_regulations (required)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / as_of
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Optional date YYYY-MM-DD: answer with the wording in force on that date (default today). Amended provisions say which act gave them their wording",
      +  "title": "As Of"
      +}
  2. Changed3 schema fields changed
    • addedInput schema / properties / detail
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "compact (default: ~400-char excerpt around the match) | full (whole unit text)",
      +  "title": "Detail"
      +}
    • addedInput schema / properties / limit
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Most rows to return (default 10 on searches, max 50)",
      +  "title": "Limit"
      +}
    • addedInput schema / properties / max_chars
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Cap on the response size in characters (default 8000)",
      +  "title": "Max Chars"
      +}
  3. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive. The description adds meaningful behavioral context: results are excerpts/pinpoints rather than summaries, and limit/detail/max_chars bound the response. This goes beyond the structured annotations without contradicting them.

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

Conciseness5/5

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

Four compact sentences each earn their place: purpose, output type, required inputs, optional bounds, and next-step routing. Information is front-loaded and no words are wasted.

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?

With no output schema, the description sufficiently explains the return shape (pinpoints and excerpts) and how to continue (read_unit, verify_citation). The schema covers all parameters at 100% and annotations cover safety, so nothing needed to invoke the tool correctly 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?

Schema coverage is 100%, so the baseline is 3; the description adds value by identifying query and regulation as essential even though the schema marks zero parameters required, and by grouping limit, detail, and max_chars as response controls.

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?

The description states a specific action ('Search held regulation text'), identifies the resource (a single regulation), and defines the return type ('pinpoints and excerpts, not summaries'). The singular scope is reinforced by 'Requires regulation id', distinguishing it from the plural sibling search_regulations.

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

Usage Guidelines4/5

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

It gives clear use conditions ('Requires regulation id ... and query string') and routes downstream actions ('read_unit on the best pinpoints; verify_citation if checking someone else's cite'). It doesn't explicitly name search_regulations as the alternative for cross-regulation searches, but the singular scope and required id make the usage context clear.

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.

Resources