Skip to main content
Glama

find_legal_resources

Read-only

Find the laws, regulations, standards, frameworks and guidance that TCLP content refers to.

This is not a general legal database: it holds only the instruments that TCLP
clauses, guides and glossary terms cite.

Status "stub": identity confirmed, metadata minimal; a null or empty field means
not yet recorded, not that it does not apply.
On a stub, `nature` may be an unreviewed inference, and is often null. Do not
fill in missing fields from your own knowledge, and do not state an
instrument's legal effect.

A filter on nature, sector or bindingness excludes works where that field is
not recorded. Most works do not record these yet, so an empty result does not
mean that TCLP content cites no such instrument; prefer `query` or
`jurisdiction`.

Args:
    query: Case-insensitive substring match on name and aliases (e.g. "CSRD"),
        at most 200 characters. An exact name or alias match ranks first.
    nature: Any of "legislation", "regulation", "standard", "framework", "guidance".
    jurisdiction: Jurisdiction slugs, matched exactly: lower-case letters,
        digits and hyphens (e.g. "european-union"). Get valid values from
        `taxonomy_facets(scope="legal_resource")`.
    sector: Sector slugs, matched exactly: lower-case letters, digits and
        hyphens. Get valid values from `taxonomy_facets(scope="legal_resource")`.
    bindingness: Any of "binding", "comply_or_explain", "voluntary", "depends".
        Each list filter takes at most 20 values.
    limit: Maximum results (1–100, default 20).
    offset: Result offset for paging (0–10000, default 0).

Returns:
    JSON with "meta" (total_available, limit, offset) and "results" (one entry
    per instrument, with `work_id` for `get_legal_resource` and `citing_count`).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo
queryNo
natureNo
offsetNo
sectorNo
bindingnessNo
jurisdictionNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
metaYes
resultsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed9 schema fields changed
    • changedInput schema / properties / bindingness / anyOf
      Previous value: -[
      -  {
      -    "items": {
      -      "enum": [
      -        "binding",
      -        "comply_or_explain",
      -        "voluntary",
      -        "depends"
      -      ],
      -      "type": "string"
      -    },
      -    "type": "array"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "items": {
      +      "enum": [
      +        "binding",
      +        "comply_or_explain",
      +        "voluntary",
      +        "depends"
      +      ],
      +      "type": "string"
      +    },
      +    "maxItems": 20,
      +    "type": "array"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • changedInput schema / properties / jurisdiction / anyOf
      Previous value: -[
      -  {
      -    "items": {
      -      "type": "string"
      -    },
      -    "type": "array"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "items": {
      +      "maxLength": 64,
      +      "pattern": "^[a-z0-9-]+$",
      +      "type": "string"
      +    },
      +    "maxItems": 20,
      +    "type": "array"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / limit / maximum
      Added value: +100
    • addedInput schema / properties / limit / minimum
      Added value: +1
    • changedInput schema / properties / nature / anyOf
      Previous value: -[
      -  {
      -    "items": {
      -      "enum": [
      -        "legislation",
      -        "regulation",
      -        "standard",
      -        "framework",
      -        "guidance"
      -      ],
      -      "type": "string"
      -    },
      -    "type": "array"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "items": {
      +      "enum": [
      +        "legislation",
      +        "regulation",
      +        "standard",
      +        "framework",
      +        "guidance"
      +      ],
      +      "type": "string"
      +    },
      +    "maxItems": 20,
      +    "type": "array"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / offset / maximum
      Added value: +10000
    • addedInput schema / properties / offset / minimum
      Added value: +0
    • changedInput schema / properties / query / anyOf
      Previous value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "maxLength": 200,
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • changedInput schema / properties / sector / anyOf
      Previous value: -[
      -  {
      -    "items": {
      -      "type": "string"
      -    },
      -    "type": "array"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "items": {
      +      "maxLength": 64,
      +      "pattern": "^[a-z0-9-]+$",
      +      "type": "string"
      +    },
      +    "maxItems": 20,
      +    "type": "array"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  2. Added

TDQS

A4.9/5.0
Behavior5/5

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

Annotations only declare readOnlyHint/openWorldHint/destructiveHint=false; the description goes far beyond by explaining stub records, that null/empty means 'not yet recorded' rather than 'not applicable', that `nature` on a stub may be unreviewed inference, and that filters silently exclude works with unrecorded fields. It also instructs the agent not to fabricate missing fields or assert legal effect.

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-loads scope, then caveats, then args, then returns – a clean progression with no filler. Minor redundancy: the query length cap and the nature/bindingness enums restate constraints already present in the schema, and the Returns section is somewhat unnecessary 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 7-parameter, zero-required, open-world search tool, everything an agent needs is present: scope limits, record-maturity semantics, filter pitfalls with a workaround, valid-value sources, and pagination/return shape. Nothing material is left to inference.

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

Parameters5/5

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

With 0% schema description coverage, the description carries the full burden and does so: query is a case-insensitive substring on name and aliases with exact-match ranking and a 200-char cap, jurisdiction/sector are exact-match slugs with a source for valid values, bindingness enumerates its four values, and limit/offset ranges are stated.

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 (find) and resource (laws, regulations, standards, frameworks, guidance cited by TCLP content), and explicitly scopes it against the obvious misinterpretation ("not a general legal database"). It also points at the sibling get_legal_resource via work_id, so an agent can distinguish it without inspecting schemas.

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 when-to-use guidance and alternatives: use taxonomy_facets to obtain valid jurisdiction/sector slugs, prefer `query` or `jurisdiction` when a field-based filter returns empty, and use get_legal_resource for a full record. It even warns that an empty filtered result is not evidence of absence.

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