Skip to main content
Glama

Rekvira: EU regulation pinpoints for compliance AI

Search all regulations

search_regulations
Read-onlyIdempotent

Search all loaded regulation modules in one call, ranked by relevance across them. Use when the question names more than one act or you do not know which act holds the answer. limit, detail (compact|full) and max_chars bound the response; per_regulation_min gives each act a share of the page. Each hit carries its regulation id — then read_unit per regulation.

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)
regulationsNoOptional subset of regulation ids; default = all loaded corpus
per_regulation_minNoOptional: at least this many rows from each act with matches

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. Changed4 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"
      +}
    • addedInput schema / properties / per_regulation_min
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Optional: at least this many rows from each act with matches",
      +  "title": "Per Regulation Min"
      +}
  3. First observed

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the description's job is to add context. It adds value by explaining result ranking, response bounds via limit/max_chars, detail modes (compact/full), and per_regulation_min page sharing, plus noting each hit carries a regulation id. This is useful behavioral disclosure that goes beyond the 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?

Three sentences, zero fluff. The core purpose is front-loaded, usage guidance follows naturally, and response-shaping parameters are summarized succinctly. Every sentence earns its place, making it easy to scan and understand.

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 tool with 8 parameters and no output schema, the description covers purpose, usage, result shaping, and even next steps (read_unit per regulation). It gives an agent everything needed to invoke correctly and interpret results, exceeding what is typically expected for a search tool.

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 enriches the schema by clarifying how parameters shape the response: it explains limit, detail, max_chars bound the output, and per_regulation_min gives each act a share of the page. This is more than the schema's individual descriptions, helping the agent tune calls effectively, so a 4 is warranted.

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 opens with a precise verb and resource: 'Search all loaded regulation modules in one call, ranked by relevance across them.' It explicitly differentiates from the singular search_regulation by stating it covers multiple acts and provides a clear scope. The agent can immediately understand what this tool does and how it differs from siblings.

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?

Explicit usage instruction is given: 'Use when the question names more than one act or you do not know which act holds the answer.' This directly tells the agent when to select this tool, and it even suggests the follow-up action (read_unit per regulation). No inference is required.

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