Lexiara
Server Details
Provenance-backed EU and UK legislation for AI agents, addressable to the individual provision.
- Status
- Healthy
- Uptime
- 99.8% over 42 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 31 tools
The set spans many distinct legal-research facets, but several families overlap: search vs search_legislation, define_term/work_glossary/concept_family/list_concepts, and the ingestion-status/result/list trio. Descriptions differentiate them well, but an agent can still misselect among near-synonymous retrieval and definition tools.
All tool names use snake_case, which is consistent. However, the verb pattern is not uniform: many are verb-led (get_*, list_*, define_term) while others are noun-led (concept_family, provision_context, work_glossary, term_languages), so the set is mostly consistent with minor deviations.
31 tools is heavy for the apparent scope. While many cover genuinely distinct legal-research capabilities, the count exceeds the 25+ threshold and several families could be consolidated or tiered.
The surface covers search, provision retrieval, history, definitions, transposition, guidance, coverage, ingestion lifecycle, follows, updates and multilingual terms, leaving no obvious dead ends. Minor gaps remain for write operations on follows and saved views, which are intentionally exposed only via HTTP.
Available Tools
31 toolsconcept_familyEvery meaning the corpus gives one defined termARead-onlyIdempotentInspect
One defined term across the whole corpus: each distinct WORDING with the publisher's own text and the instruments that write it, every instrument that borrows it (with the chain of acts it passes through), the instruments that cite a defining provision, and the term's labels in the act's other authentic EU languages. Ask this when a term is defined differently in different instruments ('producer' under WEEE, the Batteries Regulation and the PPWR) and the answer depends on which. Each instrument carries pivotWhy: why the term matters in THAT act ('carries 38 duties · 6 other definitions build on it').
Meanings are separated on facts only: identical words are grouped, different words are listed apart, and a borrowing is attached to what the borrowing act names. Never state that two different wordings mean the same thing on the strength of this tool. A query by a borrower's own label (an alias) returns the family it borrows into.
The definitions and defining instruments are free. The borrowing chains and citations are Lexiara Nexus data requiring an API key on a signed-in account; without one the arrays are empty and gated says how many were withheld.
| Name | Required | Description | Default |
|---|---|---|---|
| term | Yes | The defined term, e.g. 'producer'. Matched exactly (case-insensitive). |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover safety (readOnly, idempotent, no destruction), and the description goes well beyond them: it discloses the authentication/gating model (definitions free; borrowing chains and citations need an API key on a signed-in account, else arrays empty and `gated` reports withheld counts), the `pivotWhy` per-instrument field, and the fundamental semantic rule that meanings are separated on facts only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the resource scope in the first sentence, then layers usage, semantic constraints, and gating. Dense and largely earned, though the middle paragraph is lengthy and could be tightened without losing substance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be enumerated, yet the description still names key response fields (`pivotWhy`, `gated`) and explains what happens when the key is absent. For a one-parameter lookup tool, nothing an agent needs to invoke it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single `term` parameter, so the baseline is already 3. The description adds meaning the schema lacks: exact case-insensitive matching behavior, and that an alias (a borrower's own label) still resolves to the family it borrows into.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a precise scope: one defined term across the whole corpus, returning each distinct wording, its defining instruments, borrowing chains, cited defining provisions, and other-language labels. This is distinguishable from siblings like define_term or term_languages, and the concrete example ('producer' under WEEE vs Batteries Regulation vs PPWR) pins down what 'family' means.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit trigger condition: ask this when a term is defined differently across instruments and the answer depends on which. It also clarifies the alias-query routing behavior. It does not, however, name sibling alternatives (e.g. define_term) to say when NOT to use this tool, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
define_termWhere the law defines a phraseARead-onlyIdempotentInspect
The definition of a term of art, and the provision that gives it. Ask this BEFORE search_legislation whenever the question is what a phrase means ('durable medium', 'taxable person'): search returns provisions that USE a phrase, this returns the law that DEFINES it, verbatim. A term defined by several instruments returns several rows — the scope of each definition is the instrument carrying it, so check the work before applying one.
The definition text is always free. Only the adoption resolution (adopts, which act a borrowed definition comes from) is Lexiara Nexus data requiring an API key on a signed-in account.
| Name | Required | Description | Default |
|---|---|---|---|
| term | Yes | The phrase, e.g. 'durable medium'. Matched exactly (case-insensitive). | |
| work | No | ELI or official number of the borrowing/defining instrument; scopes the term to that instrument. | |
| limit | No | Maximum definitions, default 8. | |
| jurisdiction | No | ISO country filter, e.g. 'UK', 'FR', 'EU'. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive behavior. The description adds useful context beyond that: definition text is free, the adoption resolution requires authentication/API key, and multiple instruments can return multiple rows whose scope is tied to the carrying instrument.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Every sentence earns its place: purpose, usage guidance, multi-definition caveat, and access requirements are all included without redundancy. The most important differentiation is front-loaded in the second sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is complete for a read-only lookup tool: it explains when to use it, what it returns, how scope works, and what authentication limitations exist. The presence of an output schema covers return-format details, so nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter is already documented in the schema. The description adds some meaningful context about the 'work' parameter through the scoping caveat, but it does not substantially add parameter-level semantics beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states what the tool does: it returns the verbatim definition of a term of art and the provision that gives it. It explicitly distinguishes itself from search_legislation, which returns provisions that use a phrase rather than define it, so an agent can select it confidently.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit when-to-use guidance: ask this tool BEFORE search_legislation whenever the question is what a phrase means. It also names the sibling alternative, explains the difference, and warns about multi-instrument definitions with scope caveats.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
explore_role_requirementsExplore requirements by legal roleARead-onlyIdempotentInspect
Research source-bound EU role requirements with exact passages, act-specific definitions, conditions, unknown facts and EN/FR/DE/IT official source availability. Select multiple roles and an optional activity, product, Spain or France, and date. Country links carry their relationship type and review state. Informative national text appears only as a separate research lead, not verified country coverage. An absent link is a coverage gap, never proof that national law is absent. This is a bounded research aid, not a compliance verdict. Uses the ordinary signed-in Nexus allowance.
| Name | Required | Description | Default |
|---|---|---|---|
| asAt | No | YYYY-MM-DD; only source-supported dates are shown. | |
| term | No | Optional actor label or exact phrase in a candidate quotation. Discovery only; shared labels do not equate legal definitions or establish applicability. | |
| work | No | Optional legislation ELI; scope candidates and legal roles to this act. | |
| roles | No | Comma-separated scoped role keys, e.g. crd:trader,gpsr:manufacturer. Omit to see all current candidates. | |
| country | No | ES or FR for national connections. | |
| product | No | Product from the response catalogue, e.g. consumer-goods. | |
| activity | No | Activity from the response catalogue, e.g. selling-online. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare read-only/idempotent/closed-world safety. The description adds substantial context beyond that: what a country link carries (relationship type and review state), that informative national text is surfaced only as a separate research lead, the coverage-gap semantics ('an absent link is a coverage gap, never proof that national law is absent'), and the auth/cost profile ('ordinary signed-in Nexus allowance').
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the core purpose and keeps each subsequent sentence to a distinct, load-bearing point (output contents, link semantics, coverage-gap rule, scope limit). It is dense and slightly long, but no sentence is pure filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 optional parameters, an output schema, and rich annotations, the description covers the behavioral and interpretive context an agent needs. Minor gap: it doesn't hint at how to compose valid role keys or what an empty result implies beyond the coverage-gap note, but the schema handles the mechanics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 7 parameters, including the comma-separated role-key format and date format. The description restates which inputs are available (roles, activity, product, Spain/France, date) without adding syntax or constraint detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Research source-bound EU role requirements') and enumerates what it returns: exact passages, act-specific definitions, conditions, unknown facts, and EN/FR/DE/IT source availability. It is clearly distinct from generic siblings like define_term or search, though it never names an alternative tool explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives usage context (select multiple roles, optional activity/product/country/date) and a boundary ('bounded research aid, not a compliance verdict'), which implies when to reach for it. However, it never contrasts itself with the many sibling research tools (define_term, find_national_implementations, guidance_for_provision), leaving the agent to infer the choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fetchFetch a Lexiara provisionARead-onlyIdempotentInspect
Retrieve one search result by its opaque id, including provision text, canonical URL, authority status and source provenance. metadata.structure provides parent/child addresses; an empty container text does not mean the law is absent. Use child apiHref links or lookup_provision with sourceLang to traverse. Use ids returned by search without editing them.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Opaque identifier returned by the search tool. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | |
| url | Yes | Absolute canonical Lexiara URL. |
| text | Yes | |
| title | Yes | |
| metadata | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive/closed-world, so the safety profile is covered. The description adds genuinely useful behavior: an empty container text does not mean the law is absent, and metadata.structure carries parent/child addresses. Missing rate/timeout or error behavior keeps it short of 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences, front-loaded with purpose and return scope before the traversal and id-handling caveats. Nothing is padding, though the sentences are dense and the traversal note could be trimmed slightly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return-value documentation is not required, yet the description still orients the agent on structure and empty-container semantics. Traversal guidance and input provenance complete the picture for a single-parameter read tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema already calls the id opaque and search-returned, so baseline is 3. The description goes further by warning against editing the id, adding a usage constraint the schema does not encode.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Retrieve one search result by its opaque id') and enumerates the returned content (provision text, canonical URL, authority status, provenance), which distinguishes it from the sibling `search` and from `lookup_provision`. An agent can tell what this tool does without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It names the alternative route ('Use child apiHref links or lookup_provision with sourceLang to traverse') and constrains input provenance ('ids returned by search without editing them'). That gives clear context and a fallback path, though it never states an explicit when-not-to-use condition for this tool versus lookup_provision.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_national_implementationsArticle-level national implementationsARead-onlyIdempotentInspect
National provisions implementing one EU provision, with method and confidence per link. DERIVED data, not published by any authority: treat links not marked method='human' as leads to verify, and say so when citing. Check evidenceStatus: a current national consolidated reading aid may be informative rather than authoritative, and older links may be stale.
Lexiara Nexus data requires an API key on a signed-in account. The free plan carries a monthly Nexus allowance; the legislative text itself is always free.
| Name | Required | Description | Default |
|---|---|---|---|
| eId | Yes | Provision identifier: 'sec_4' (section 4), 'art_2__para_1' (article 2(1)), 'sch_9' (Schedule 9). Use search or history endpoints to discover eIds. | |
| work | Yes | ELI of the EU instrument, e.g. the VAT Directive. | |
| jurisdiction | No | ISO country filter, e.g. 'UK', 'FR', 'EU'. | |
| minConfidence | No | Drop links below this confidence (0-1). |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnly/idempotent/non-destructive, so the bar is lower, yet the description adds real context beyond them: the data is DERIVED and not authority-published, non-'human' links need verification, evidenceStatus can be informative-not-authoritative or stale, and an API key with a monthly allowance is required. That is meaningful behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Core behavior is front-loaded in the opening sentence, followed by interpretation caveats. The auth block is somewhat boilerplate but still earns its place as a required precondition. Slightly long but well-structured overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a filtered lookup with an output schema, so return values need not be restated. The description covers derivation caveats, staleness, and auth requirements. It leaves out any mention of how results are ordered or limited, which keeps it from a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all four parameters (eId format examples, work ELI, jurisdiction ISO, minConfidence range). The description adds no parameter-level detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence states a specific verb+resource: national provisions implementing one EU provision, returned with method and confidence per link. It is clearly distinguishable in concept from sibling provision tools. However, it never names an alternative sibling to route against, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives interpretation rules (treat non-human links as leads to verify, check evidenceStatus) but no explicit when-to-use/when-not or named alternatives such as lookup_provision or provisions_by_concept, which appear in the sibling list. Usage is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
follow_updatesGraded developments in the law you followARead-onlyIdempotentInspect
The digest: every change the corpus observed on followed law, each with a SIGNIFICANCE grade and the reasoning behind it — 'major' (a new consolidation whose version point advanced, a provision appearing, a provision now repealed), 'minor' (wording changed, or the stored text moved while the publisher's version point did not), 'housekeeping' (first ingest, bulk churn from a version substitution). The grade is LEXIARA'S ASSERTION, not the publisher's: treat 'major' as a prompt to read the instrument, never as a finding about it, and cite the instrument rather than the digest. reach says how a development arrived — 'direct', or 'via-transposition' when it is on the other side of a transposition edge from what was followed, in which case the link itself is unreviewed evidence like any other relationship in Lexiara Nexus.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum developments, default 100. | |
| since | No | ISO timestamp. Omit to use each follow's own last read. | |
| minSignificance | No | Floor for this call: major | minor | housekeeping. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only cover the safety profile (read-only, idempotent, non-destructive), while the description adds genuinely non-obvious behavior: the grade is Lexiara's own assertion rather than the publisher's, it warns against treating 'major' as a finding, and it discloses that 'via-transposition' links are unreviewed evidence. That epistemic framing is exactly the kind of context annotations cannot supply.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is front-loaded and every sentence carries content, but the single dense paragraph is heavy for a three-parameter, all-optional list tool, and the grade taxonomy is delivered in nested parentheticals that are harder to scan than a short list would be.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values needn't be explained, yet the description still clarifies the two most interpretive output fields, significance grade and reach. It omits anything about pagination or default ordering, which keeps it short of fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so limit, since, and minSignificance are already documented in the schema; the description only restates the grade vocabulary for minSignificance. It does, however, add output-side semantics for 'reach', which is not an input parameter. Baseline 3 is appropriate when the schema carries the parameter burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening line ('The digest: every change the corpus observed on followed law') names the resource and scope precisely, and the 'followed law' framing separates it from corpus-wide siblings like recent_changes or search. It is clear but never explicitly contrasts itself with those siblings, so an agent must infer the boundary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied rather than stated: the tool is for law you follow, and grades are described as 'a prompt to read the instrument'. There is no explicit when-to-use or when-not-to-use guidance relative to recent_changes, list_follows, or provision_history, leaving the agent to infer the routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_coverageWhat the corpus contains, and how freshARead-onlyIdempotentInspect
Per-source coverage and freshness. Call this first when unsure whether Lexiara holds the law you need — absence of coverage means 'not here', never 'does not exist'.
Pass work to ask about ONE instrument. The answer then says which kind of absence it is: metadata-only (the instrument is known and no text is held), language-not-held, or not-held. Each carries requestable and a request_hint you pass to request_ingestion.
| Name | Required | Description | Default |
|---|---|---|---|
| work | No | Optional: ask about ONE instrument by CELEX, ELI or official number. The answer then carries `requested.gap` — metadata-only, language-not-held or not-held — or `requested.held: true` when the corpus holds it. | |
| language | No | Optional ISO 639-3 code, e.g. 'fra', to ask about one language version. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly states 'absence of coverage means "not here", never "does not exist"', which is an open-world behavioral claim. This contradicts the annotation openWorldHint: false, which suggests the tool treats absence as authoritative non-existence. While the description otherwise adds useful context about gap types and request_hint, the annotation contradiction makes it misleading.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: it states the core purpose, then the primary use case, then the optional work behavior. Every sentence adds operational value, and the formatting with a short first sentence and a focused paragraph makes it easy for an agent to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with two optional parameters and has an output schema, so the description does not need to document return values. It covers when to call, how to interpret absence, the effect of the work parameter, and the categories of gaps. Nothing essential for correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema coverage, the schema already documents the work and language parameters. The description adds meaning beyond that by explaining what happens when work is passed: the answer classifies the absence as metadata-only, language-not-held, or not-held, and carries requestable and request_hint. This helps the agent understand the parameter's effect on the response.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource: reporting per-source coverage and freshness of Lexiara's holdings. It immediately distinguishes the tool's use case from siblings by saying to call it first when unsure whether Lexiara holds the law.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit guidance on when to call: 'Call this first when unsure whether Lexiara holds the law you need.' It also explains the crucial semantic that absence of coverage means 'not here', never 'does not exist', which prevents misuse. It does not name specific sibling alternatives or exclusion conditions, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_ingestion_requestHow an ingestion request is goingARead-onlyIdempotentInspect
State, stage, reason code and the time to wait before asking again, for one request you made. States: already_available, queued, running, available, partial, needs_clarification, needs_source_approval, failed, confirmed_unavailable. A fetch that timed out is failed and will be retried; confirmed_unavailable is the publisher itself saying it does not hold that manifestation, which is a different fact. Readable only by the account that made the request.
| Name | Required | Description | Default |
|---|---|---|---|
| request_id | Yes | The request_id request_ingestion returned. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint and idempotentHint annotations, the description adds important behavioral detail: the meaning of each state, the distinction between 'failed' (will be retried) and 'confirmed_unavailable' (publisher does not hold the manifestation), and the account-level read restriction. This is genuinely valuable context for the agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but well-organized: the first sentence states the core purpose, the second explains critical state semantics, and the third covers access control. Every sentence earns its place with no repetition or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, robust annotations, a single required parameter, and the detailed state semantics in the description, the agent has everything needed to call this tool correctly and interpret its response. The only minor absence is an explicit pointer to get_ingestion_result for retrieving the final result, but that is not necessary for completing the description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents request_id. The description adds the context that it is 'one request you made' and that readability is account-scoped, but these are not parameter-specific semantics beyond what the schema communicates.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as returning state, stage, reason code, and wait time for a single ingestion request. It is specific and informative, but it does not explicitly differentiate itself from the sibling tool get_ingestion_result, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies polling usage through 'time to wait before asking again' and notes the account restriction, but it does not explicitly state when to use this tool instead of get_ingestion_result or how to proceed once the state is available. Usage context is present but exclusions and alternatives are not.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_ingestion_resultWhat an ingestion request producedARead-onlyIdempotentInspect
The published handles — expression id, work ELI, the /v1/works/text and /v1/provisions addresses — plus the source manifest (publisher URL, content hash, bytes, retrieval time, parser version) and the expectation results. Repeat your original lookup with the handles. Pass expressionId as the exact expression query parameter to /v1/works/text or /v1/provisions to preserve the acquired expression and language. Cite the source URL in the manifest, not this tool. coverage: complete_for_scope means the DECLARED SCOPE was acquired and checked — never that all law applicable to a question has been found.
| Name | Required | Description | Default |
|---|---|---|---|
| request_id | Yes | The request_id request_ingestion returned. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With strong annotations (readOnlyHint, idempotentHint, non-destructive) already covering the safety profile, the description adds genuinely valuable interpretation context: the clarification that 'coverage: complete_for_scope' refers only to the DECLARED SCOPE, never to completeness of legal research, directly corrects a likely misreading. The citation directive (cite the manifest URL, not this tool) also adds behavioral guidance beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but not padded; every clause earns its place — the handle list, manifest fields, follow-up lookup instructions, the citation rule, and the crucial coverage clarification. It opens with the most important information (what comes back). The first sentence is a long verb-less fragment, which slightly hurts readability, but no sentence is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter retrieval tool with an output schema, strong annotations, and detailed payload/citation/coverage guidance, the description is largely complete. The main gap is the unaddressed relationship to the sibling get_ingestion_request — an agent gets no guidance about whether to consult request status separately or whether results fail if ingestion is still running. Minor gaps against an otherwise thorough description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% — the single parameter request_id is fully described as 'The request_id request_ingestion returned.' The description adds nothing about request_id's semantics, but per the high-coverage baseline, a 3 is appropriate since the schema already does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description never uses an explicit verb like 'returns' or 'retrieves', but the title ('What an ingestion request produced') plus the detailed enumeration of contents (handles, manifest, expectation results) makes the purpose clear. It also differentiates from siblings by listing unique payload elements (expression id, work ELI, manifest fields) that get_ingestion_request or request_ingestion would not produce.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage guidance is implied rather than explicit: 'Repeat your original lookup with the handles' and 'Pass expressionId as the exact expression query parameter' tell the agent what to do after retrieving results, and the citation instruction is clear. However, the description never names alternatives or states when to use this tool versus get_ingestion_request, so the when-to-use-vs-siblings guidance is absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_saved_role_viewRecheck a saved role research viewARead-onlyIdempotentInspect
Recheck current official passages and connections against a private saved view. The change list separates later publisher versions, parser corrections, newly acquired material and review status; inspect the cited current result before relying on a connection. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | UUID returned by list_saved_role_views. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the trailing 'Read-only' adds nothing. The genuinely added context is the breakdown of the change list (publisher versions, parser corrections, newly acquired material, review status), which is behavioral detail beyond annotations, though partly overlapping the output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core action and follow-up guidance. The enumeration of change categories is somewhat long but earns its place by telling the agent what the view surfaces; only the redundant 'Read-only' is waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read tool with an output schema and full annotation coverage, the description covers purpose and behavioral cues adequately. Return values are left to the output schema, which is appropriate; nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter, fully documented at 100% schema coverage as 'UUID returned by list_saved_role_views.' The description adds no syntax, format or sourcing detail beyond that, so the baseline 3 for high coverage is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Recheck current official passages and connections against a private saved view.' An agent can tell this is a read/refresh of a saved view rather than a listing or creation tool. However, it does not explicitly name or contrast with the sibling list_saved_role_views, leaving differentiation implicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use it ('Recheck ... against a private saved view') and adds a workflow cue ('inspect the cited current result before relying on a connection'). But there is no explicit when-not guidance or named alternative to route the agent elsewhere.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_topicOne topic: orientation, notes, anchored provisions, linksARead-onlyIdempotentInspect
Everything a topic page shows: the orientation paragraph (with its draft/published editorial status), per-jurisdiction legal-status notes (GB notes carry the assimilated-law caveat), anchored provisions with anchor provenance, article-level transposition links (method, confidence, review verdict — anything not method='human' is evidence, not a finding), and related instruments from Lexiara Nexus.
| Name | Required | Description | Default |
|---|---|---|---|
| conceptId | Yes | Topic concept id, e.g. 'local:topic-pre-contract-information'. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint/idempotentHint/destructiveHint=false, so the safety bar is low, and the description adds substantial interpretation guidance instead: GB notes carry an assimilated-law caveat, editorial status can be draft or published, and 'anything not method=human is evidence, not a finding.' That last warning materially changes how an agent should treat the data. It does not touch auth, rate limits, or sizing, so not a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence ('Everything a topic page shows: ...') with no filler, and every clause maps to a distinct part of the payload. It is dense with em-dash-nested qualifiers, which slightly hurts scannability, keeping it from a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need not be explained, and annotations carry the safety profile; the description usefully adds the interpretive caveats. The missing piece is routing guidance against the many sibling retrieval tools, which leaves a small but real gap for a single-topic fetch.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: conceptId is documented with a concrete example ('local:topic-pre-contract-information'). The description adds no parameter-level detail beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('get_topic') and then enumerates exactly what a topic page contains: orientation paragraph, per-jurisdiction notes, anchored provisions, transposition links, related instruments. This is far beyond a tautology. It stops short of naming sibling tools (list_topics, provisions_by_concept) by name, so the differentiation is implied rather than explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description never says when to use get_topic versus alternatives such as list_topics (list vs single), provisions_by_concept, or lookup_provision/provision_context. There is no when-to-use or when-not guidance, only an inventory of returned content, so the agent must infer the routing itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
guidance_for_provisionGuidance on one provisionARead-onlyIdempotentInspect
Sections of official GUIDANCE that discuss one provision — Commission notices and guidelines on the act, quoted verbatim with the section number the publisher prints, so an answer can cite '§2.8 of the UCPD Guidance' and be checked.
EVERY ROW IS NON-BINDING (binding: false). This is the enforcing body's own reading, not law: only the instrument's text has legal force, and only a court settles what it means. Never present a guidance section as the rule; cite it as guidance, name the document, and keep it separate from the provision text lookup_provision returns.
Lexiara Nexus data requires an API key on a signed-in account. The free plan carries a monthly Nexus allowance; the legislative text itself is always free.
| Name | Required | Description | Default |
|---|---|---|---|
| eId | Yes | Provision identifier: 'sec_4' (section 4), 'art_2__para_1' (article 2(1)), 'sch_9' (Schedule 9). Use search or history endpoints to discover eIds. | |
| work | Yes | ELI URI of the instrument, e.g. 'http://www.legislation.gov.uk/id/ukpga/1994/23' (UK VAT Act 1994) or 'http://data.europa.eu/eli/dir/2006/112/oj' (EU VAT Directive). | |
| includeActLevel | No | Also return sections that name the act but no article. Off by default: a notice's introduction cites the whole directive and would otherwise appear under every article of it. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/idempotent annotations, it discloses that every row is non-binding (binding: false), that this is the enforcing body's reading rather than law, and how it must be presented. It also states the auth requirement (API key on a signed-in account) and the free-plan allowance, which annotations cannot convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The message is front-loaded with the core purpose and scoped into purpose, caution, and access paragraphs. It is slightly repetitive in restating the 'cite as guidance, not the rule' point twice, but every paragraph carries distinct information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need no explanation, and all three parameters are documented in the schema with annotations covering the safety profile. The description fills the remaining gaps — non-binding status, citation discipline, and authentication requirements.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so eId, work, and includeActLevel are already fully documented in the schema. The description adds citation formatting context ('section number the publisher prints') but nothing about parameter syntax or defaults beyond what the schema provides — the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening sentence states a specific verb and resource — 'Sections of official GUIDANCE that discuss one provision' — and immediately contrasts it with the legislative text that lookup_provision returns. An agent can distinguish this from sibling tools without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear usage context (use for verifiable citations like '§2.8 of the UCPD Guidance') and names the alternative to keep it separate from — lookup_provision. It stops short of an explicit 'use this when / do not use this when' rule set, so 4 rather than 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_conceptsThe defined terms the corpus leans on mostARead-onlyIdempotentInspect
Terms of art ranked by how many instruments in this corpus DEFINE them, BORROW them from another act (followed through every intermediate act — an act that takes 'video-sharing platform' from the DSA, which takes it from the AVMSD, counts for the AVMSD's definition) or CITE a defining provision. Nothing in the list was chosen by hand. tier 'pivotal' means at least one act is written around the term — its duties are addressed to it, its other definitions build on it, its title and headings name it; 'shared' is a label many acts define, each for itself, that none turns on ('specified', 'prescribed'). Use it to find the anchoring concepts of an area — 'producer', 'economic operator', 'controller' — then call concept_family for one of them.
Each count is its own population: reachWorks is their union by work, never their sum. Quote them under their own names.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum concepts: 50, 100 (default), 200 or 500. | |
| jurisdiction | No | Only concepts that reach this jurisdiction, e.g. 'EU', 'GB', 'ES'. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare a safe read (readOnly, idempotent, non-destructive), yet the description adds genuinely non-obvious behavior: the transitive borrowing rule ('an act that takes ... from the DSA, which takes it from the AVMSD, counts for the AVMSD'), the fact that the list is uncurated ('Nothing in the list was chosen by hand'), and a warning about count semantics. That exceeds what the annotations convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The content is nearly all substantive, but it is delivered in dense, nested constructions (the parenthetical chain and the tier gloss) that are hard to scan. The core purpose is technically front-loaded but the sentence runs long before the reader reaches the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need no explanation, yet the description still clarifies output semantics that would otherwise be misread (tier meanings, and that reachWorks is a union of populations, not a sum). Combined with annotation-covered safety and a fully documented schema, the definition is close to complete for its complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with `limit` enumerating allowed values and `jurisdiction` giving an example, so the schema carries full parameter meaning. The description adds no syntax or format detail for either parameter beyond echoing that jurisdiction is a reach filter. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It states a specific resource ('terms of art') and the exact ranking criterion (how many instruments DEFINE, BORROW, or CITE a defining provision), and it names the sibling to escalate to ('then call concept_family for one of them'). The purpose is clear but buried inside a long, clause-heavy first sentence, so an agent must parse nesting to extract it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit when-to-use framing is present ('Use it to find the anchoring concepts of an area... then call concept_family for one of them'), plus it explains the discriminating meaning of the `tier` values 'pivotal' vs 'shared'. It stops short of stating when NOT to use it versus other term-oriented siblings like define_term or work_glossary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_followsThe law this key followsARead-onlyIdempotentInspect
The instruments, provisions, subjects, jurisdictions and verticals this API key follows. READ-ONLY: creating or removing a follow is an HTTP POST/DELETE to /v1/follows, and no tool here dispatches one. (The one tool in this catalogue that writes anything is request_ingestion, which asks for a law and touches no follow.) Requires the caller's OWN key — the shared demo key is refused, since a follow list under it would be shared with strangers.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, but the description adds significant behavioral context: it explicitly labels the operation READ-ONLY, explains that follow changes happen via HTTP POST/DELETE to /v1/follows (not via any tool here), and specifies that the caller must use their own key, not the shared demo key. This goes beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loads the purpose, and packs essential caveats (read-only, key requirement) without extraneous wording. Every clause earns its place, and it is well-structured for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and an output schema exists (so return format is covered elsewhere), the description is complete. It covers the scope, the read-only nature, the impossibility of mutating follows through this catalogue, and the key ownership requirement. Nothing an agent needs to correctly invoke or interpret the tool is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so per the rubric the baseline is 4. There is nothing to add beyond what the schema provides (which is empty), and the description appropriately focuses on the operation's semantics rather than parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as listing the instruments, provisions, subjects, jurisdictions, and verticals that an API key follows. It uses a specific verb ('lists'), a resource ('follows'), and enumerates the scopes, distinguishing it from sibling tools that might operate on follows in other ways.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool (to see what the key follows) and explicitly states that no tool in the catalogue dispatches follow creation/removal, which guides the agent away from trying to mutate follows. It also warns that the shared demo key is refused, providing a clear prerequisite. However, it does not name a specific alternative tool for follow management, only states that none exists.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_ingestion_requestsYour ingestion request historyARead-onlyIdempotentInspect
List up to the latest 50 ingestion requests belonging to your account, newest first. Each row includes private status fields such as intent, created_at and origin; another account's requests are never returned. This is read-only and does not start, repeat or alter acquisition work.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds value beyond this by stating it does not start, repeat, or alter acquisition work, plus the 50-item cap, ordering, and privacy guarantee that another account's requests are never returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences that front-load the key behavior (list up to 50, newest first), then add scope and safety details. No filler or redundant restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only list tool with an output schema and strong annotations, the description covers everything needed: result limit, ordering, account isolation, and non-mutating behavior. Nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so the baseline is 4. The description adds context about the returned rows (status fields like intent, created_at, origin), which is useful even though it is not parameter-related.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('ingestion requests'), and adds precise scope: up to 50, newest first, belonging to your account. This distinguishes it clearly from siblings like get_ingestion_request (single request) and request_ingestion (creating requests).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly states what kind of requests are returned and the account scoping, so an agent knows when to call it. It does not explicitly name alternatives or say 'use get_ingestion_request for a single request,' but the scope and list behavior make the intended use obvious.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_review_queueWhat is waiting for a human verdictARead-onlyIdempotentInspect
The AUTO-GATED backlog from one place, newest first: unreviewed article-level transposition links with BOTH provision texts side by side and the stored reasoning, model/low-confidence concept tags, draft topic descriptions and jurisdiction notes, and recorded findings (gaps and divergences a round could not decide). Filter by kind, vertical and jurisdiction. EVERYTHING HERE IS UNREVIEWED EVIDENCE — cite none of it as a finding. This tool is READ-ONLY: verdicts are set only by a human with a 'reviewer' key, and no MCP tool can set one.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | Comma-separated kinds: transposition, tag, topic-description, jurisdiction-note, finding. Omit for all. | |
| chars | No | Characters of provision text per side. Omit for the WHOLE text, which is the default: a character budget once hid two parts of a French code article and produced two false absences. | |
| limit | No | Maximum items, default 20, max 100. | |
| offset | No | Skip this many items — the queue is paged, not sampled. | |
| vertical | No | Vertical id, e.g. 'eu-consumer', 'fr-consumer', 'es-consumer'. | |
| jurisdiction | No | ISO country filter, e.g. 'UK', 'FR', 'EU'. | |
| lowConfidence | No | Also list non-model classifier tags at or below this confidence. Omit for model tags only — the keyword baseline's weak tail is 24 000 rows and would bury the 157 links a verdict changes. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnly/openWorld/idempotent, and the description reinforces read-only behavior and explains the human-only verdict mechanism. It also discloses that all items are unreviewed evidence not to be cited as findings, and warns that truncating provision text can hide content. This goes well beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but purposeful: one flowing definition, then the safety warning verdicts, then filter summary MendReadOnly. The ALL-CAPS warning earns its place. Slightly long, but every clause carries distinct information. Front-loaded with the subject and ordering.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Even though there is an output schema, the description gives the essential context: what items appear, that they are ordered newest first, that they are paged, what each kind means, and the critical citation caveat. An agent can select and invoke this tool safely without further exploration.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (all 7 params have descriptions), so the baseline is 3. The description adds meaning by grouping filters (kind, vertical, jurisdiction), explaining the 'chars' truncation hazard with a concrete example (French code article), and clarifying that omitting lowConfidence means model tags only. That extra semantics justifies a 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description names a specific verb (list), a distinct resource (the human-verdict review queue), and defines its exact contents (unreviewed article-level transposition links with reasoning, tags, topic descriptions, jurisdiction notes, findings). It clearly differentiates this tool from the sibling search/list tools by foregrounding the auto-gated, unreviewed, evidence-only nature of the backlog.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the intended context explicit: this is the unreviewed, auto-gated work queue a human must decide on desserts? It states filter options and the ordering. It does not explicitly name alternative tools for other use cases, but the title and the 'UNREVIEWED EVIDENCE' warning make selection unambiguous against the siblings. Could name when not to use it, but the exclusions are implicit in 'UNREVIEWED'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_saved_role_viewsList your saved role researchARead-onlyIdempotentInspect
List private role and country research views belonging to the connected account. Each view is a snapshot for comparison, not a compliance verdict. Read-only; saving and deleting views require a person's own HTTP account access.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and non-destructive behavior, so the bar is lower. The description adds genuine value beyond them: results are private to the connected account, each view is a snapshot for comparison rather than a compliance verdict, and write/delete operations live outside this tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences with no filler: scope first, then the interpretation caveat, then the access limitation. Nothing is repeated from the name or annotations, and the most important constraint is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the description need not explain return fields, and it supplies the scope and caveat an agent needs to interpret them. It is essentially complete for a zero-parameter list tool; only the relation to get_saved_role_view is left implicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate and the baseline of 4 applies. The description correctly introduces no parameter-like concepts.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb and resource ('List private role and country research views') plus ownership scope ('belonging to the connected account'), so an agent knows exactly what comes back. It does not name the singular sibling get_saved_role_view or explain how the two differ, so it falls short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states the read-only nature and clarifies that saving and deleting views require the person's own HTTP account access, which effectively tells the agent this tool cannot mutate anything. No explicit alternative (e.g. get_saved_role_view for a single view) is named, so the routing guidance is implied rather than complete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_topicsCurated topics under a subjectARead-onlyIdempotentInspect
Curated obligation topics ('Pre-contract information') under a subject head, each with a one-paragraph orientation and per-jurisdiction anchor counts. Descriptions with editorialStatus='draft' are UNREVIEWED model drafts — say so if you quote one. Feed a result's conceptId to get_topic.
| Name | Required | Description | Default |
|---|---|---|---|
| subject | Yes | Subject head concept id, e.g. 'local:consumer'. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as read-only, idempotent, and non-destructive. The description adds valuable behavioral context beyond annotations: it warns that draft editorialStatus entries are unreviewed model drafts and instructs the agent to disclose this when quoting. This is meaningful additional transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: it states the purpose first, then describes output contents, then flags draft-status behavior and downstream usage. Every sentence earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only listing tool with one fully documented parameter and an output schema, the description is complete. It covers what is returned, important quality caveats, and how to proceed with a result, leaving no critical gap for an agent to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the schema already defines 'subject' as a subject head concept id with an example. The description repeats the 'subject head' concept but does not add new parameter semantics beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb (list) and resource (curated obligation topics under a subject head), and distinguishes itself from the related get_topic by noting that results should be fed into get_topic. This is more than a restatement of the title and gives an agent a precise idea of what the tool returns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear context for when to use the tool: to get curated topics under a subject head with orientation and anchor counts. It also implies the follow-up action (feed conceptId to get_topic), though it does not explicitly list when-not-to-use scenarios or alternative listing tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_work_versionsList held official EU text versionsARead-onlyIdempotentInspect
Find same-language publisher expressions for one EU act. Each entry has an exact expression ID, source hash and a consolidation marker or as-adopted label. These markers identify text; they do not prove when it applied. Pass a returned expression ID to lookup_provision to read that exact text. Use asAt only when the source carries an explicit validity window.
| Name | Required | Description | Default |
|---|---|---|---|
| work | Yes | ELI URI of the instrument, e.g. 'http://www.legislation.gov.uk/id/ukpga/1994/23' (UK VAT Act 1994) or 'http://data.europa.eu/eli/dir/2006/112/oj' (EU VAT Directive). | |
| sourceLang | No | Optional held three-letter EU source language, e.g. fra or ita. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world, so the safety profile is covered. The description adds real semantic context the annotations cannot: entries carry expression IDs, source hashes, consolidation markers, and the warning that markers identify text but do not prove when it applied. Pagination/limits are not mentioned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four tight sentences with no filler; the core scope is front-loaded, followed by entry contents, the semantic caveat, the handoff to lookup_provision, and the asAt condition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return-value explanation is not required, yet the description still characterizes entries usefully. The only gap is the unexplained asAt reference, which has no matching input parameter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with only two params, so the schema already documents work (ELI URI) and sourceLang. The description adds no further parameter detail, and its mention of 'asAt' does not correspond to any input parameter, which slightly muddies rather than clarifies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a precise verb and resource ('Find same-language publisher expressions for one EU act') and scopes it to held official text versions, which distinguishes it from siblings like lookup_provision, provision_history, and recent_changes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit downstream routing ('Pass a returned expression ID to lookup_provision to read that exact text') and a conditional rule for asAt ('only when the source carries an explicit validity window'). It stops short of naming when-not-to-use or contrasting against other listing tools such as provision_history.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_provisionLook up a provision's textARead-onlyIdempotentInspect
Authoritative text of one provision, with in-force window, repealed/prospective status, concept tags, transposition edges and full provenance. stand says what date the served text speaks as of (consolidated with a date, as-adopted, or unknown) and carries the one-line sentence to show a reader — answer questions about currency from it, not from inForce, which is when the version's validity starts. Use asAt (YYYY-MM-DD) for point-in-time law only where the held expression has an explicit validity window covering that date. Otherwise the tool returns the stable date_not_covered refusal; omit asAt to request current text. Machine translation is not exposed through this connector because generating a new rendering is not a read-only action. Use sourceLang to select a held source language (three-letter code), including with asAt; this never translates. structure carries immediate parent/child addresses in the selected expression. An empty container text is not missing law: follow children with the same sourceLang and asAt. Use term_languages for authentic multilingual terminology held by the corpus. gated.citedByArticle says HOW MANY provisions of other instruments name this article and names those instruments; the rows themselves — which provision, which citation — come from provision_context.
The provision text is always free. Only the derived counts (gated.citedByArticle, gated.nationalMandate) and the analysis behind them require an API key on a signed-in account.
| Name | Required | Description | Default |
|---|---|---|---|
| eId | Yes | Provision identifier: 'sec_4' (section 4), 'art_2__para_1' (article 2(1)), 'sch_9' (Schedule 9). Use search or history endpoints to discover eIds. | |
| asAt | No | Optional real calendar date YYYY-MM-DD. Text is returned only from a held expression whose explicit validity window covers that day; otherwise `date_not_covered` is returned. Omit for current text. | |
| work | Yes | ELI URI of the instrument, e.g. 'http://www.legislation.gov.uk/id/ukpga/1994/23' (UK VAT Act 1994) or 'http://data.europa.eu/eli/dir/2006/112/oj' (EU VAT Directive). | |
| expression | No | Optional exact expression UUID from list_work_versions or an ingestion result handle. Preserves the selected expression and language; use only a handle returned by Lexiara. | |
| sourceLang | No | Stored three-letter source language, e.g. eng or fra. Selects held text, never generates translation. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only/idempotent/non-destructive, but the description adds substantial context beyond them: a named refusal mode (`date_not_covered`), an explicit no-machine-translation policy, entitlement gating ('provision text is always free; only gated counts require an API key'), and the rule that empty container text means 'follow children' rather than missing law.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose is front-loaded and each sentence carries distinct information, but the paragraph on output fields (`stand`, `sentence`, `structure`, `gated.citedByArticle`) is dense and partly overlaps the output schema. The description is long, though the length is largely justified by the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an output schema exists, the description does not need to document return values, yet it covers everything an agent needs: refusal behavior, entitlement boundary, language selection, point-in-time semantics, and container/child traversal. Nothing material is left for the agent to guess.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 nuance the schema does not carry, such as `sourceLang` being combinable with `asAt`, and that children should be followed with the same `sourceLang`/`asAt`. The explanation of `asAt` and `sourceLang` semantics largely restates the schema, so it is not a full 5.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence names a specific verb and resource ('Authoritative text of one provision') and enumerates the payload (in-force window, status, tags, transposition edges, provenance). It also explicitly distinguishes itself from a sibling by stating that citation rows come from provision_context rather than this tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit conditions: use `asAt` only where a held expression has a validity window covering that date, otherwise expect `date_not_covered`; omit `asAt` for current text; use `sourceLang` to select held text and never to translate. It also routes to alternatives ('Use term_languages for authentic multilingual terminology', provision_context for citation rows).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
provision_contextWhat a provision cites, and what changed itARead-onlyIdempotentInspect
The cross-reference neighbourhood of a provision plus its amendment history. Use this when a provision's relevance is not on its face: a duty that says 'the information referred to in Article 6(1)' is silent about what that information now includes, and about which amending act put it there. Returns citations both ways and the amending acts marked on this provision and on the ones it cites. citedByArticle answers the inbound question at ARTICLE granularity — which provisions of other instruments name THIS article — split into eu and national by the citing instrument's jurisdiction, and distinct from citedBy, which is act-level and returns the same list on every provision of the act.
Lexiara Nexus data requires an API key on a signed-in account. The free plan carries a monthly Nexus allowance; the legislative text itself is always free.
| Name | Required | Description | Default |
|---|---|---|---|
| eId | Yes | Provision identifier, e.g. 'art_7__para_1'. | |
| work | Yes | ELI of the instrument. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive, closed-world behavior. The description adds material beyond that: the API-key/signed-in-account requirement and the free-plan Nexus allowance, plus a subtle output trait (citedBy returning the same act-level list on every provision).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose and the citedByArticle/citedBy distinction are front-loaded, and the auth note is a compact trailing paragraph. It is somewhat dense and slightly long, but every sentence carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present the description need not explain return values, and it still usefully flags the two output fields that are easy to confuse. Combined with the auth disclosure, an agent has enough to call it correctly; the only gap is the absence of explicit sibling routing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (eId, work) are already documented. The description adds no syntax, format, or identifier guidance beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a precise verb+resource: 'cross-reference neighbourhood of a provision plus its amendment history', and disambiguates its output concepts (citedByArticle vs citedBy). It does not explicitly contrast itself with closely named siblings such as provision_history or related_works, so an agent must infer the boundary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a concrete trigger: 'Use this when a provision's relevance is not on its face', with a worked example of a silent cross-reference. It stops short of naming when NOT to use it or routing to alternatives like lookup_provision, but the use condition is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
provision_historyA provision's version historyARead-onlyIdempotentInspect
Prior and successor versions of one provision across consolidations — how the text got to its current form.
Lexiara Nexus data requires an API key on a signed-in account. The free plan carries a monthly Nexus allowance; the legislative text itself is always free.
| Name | Required | Description | Default |
|---|---|---|---|
| eId | Yes | Provision identifier: 'sec_4' (section 4), 'art_2__para_1' (article 2(1)), 'sch_9' (Schedule 9). Use search or history endpoints to discover eIds. | |
| work | Yes | ELI URI of the instrument, e.g. 'http://www.legislation.gov.uk/id/ukpga/1994/23' (UK VAT Act 1994) or 'http://data.europa.eu/eli/dir/2006/112/oj' (EU VAT Directive). |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior, so the safety bar is covered. The description adds genuinely new context: an API key on a signed-in account is required and a monthly allowance applies on the free plan, which is quota/permission information not present in the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core purpose in one tight sentence, with no redundancy. The account/allowance sentence is slightly boilerplate and arguably account-level rather than tool-level, but it is behavioral information and reasonably brief.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter read tool with an output schema and full annotation coverage, the description supplies the missing pieces: what the tool returns conceptually (version lineage) and the auth/quota constraint. Return-value detail is legitimately delegated to the output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both eId and work are already fully documented in the schema with format examples and discovery hints. The description adds no parameter meaning, making the baseline 3 correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource and retrieval scope: prior and successor versions of one provision across consolidations. An agent can distinguish this from lookup_provision or provision_context by the 'across consolidations / version history' framing, though no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'how the text got to its current form' implies the use case (historical/version questions), but there is no explicit when-to-use guidance and no named alternative such as provision_context or lookup_provision for point-in-time retrieval.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
provisions_by_conceptProvisions tagged with a conceptARead-onlyIdempotentInspect
Cross-jurisdiction view of one legal concept: every provision tagged with the given EuroVoc concept, with tagging method and confidence. E.g. 'eurovoc:4585' (VAT), 'eurovoc:4392' (VAT rate). The language-neutral way to line up EU and national law on the same subject.
| Name | Required | Description | Default |
|---|---|---|---|
| conceptId | Yes | Namespaced concept id, e.g. 'eurovoc:4585'. | |
| jurisdiction | No | ISO country filter, e.g. 'UK', 'FR', 'EU'. | |
| minConfidence | No | Drop tags below this confidence (0-1). |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly annotations, the description explains the actual behavior: it returns all tagged provisions across jurisdictions and includes tagging method and confidence. This gives agents useful expectations about result content and scope, though it does not discuss limits or pagination.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, front-loads the core behavior, and uses examples effectively without verbosity. Each sentence adds value: definition, example, and use-case rationale.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only listing tool with a rich output schema and clear annotations, the description is nearly complete. It explains the concept-centric scope and cross-jurisdiction nature, but it does not explicitly mention whether there are pagination or size limits on results, which would be useful for an agent querying broadly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already covers all three parameters at 100% coverage gift, and the description adds meaningful context with concrete concept ID examples)Skip. It does not add much semantic detail for jurisdiction or confidence filtering beyond the schema descriptions, but the example and language-neutral framing strengthen conceptId.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific operation (cross-jurisdiction view of provisions by EuroVoc concept) and clearly explains what the tool returns: every provision tagged with the given concept, including tagging method and confidence. The examples ('eurovoc:4585', 'eurovoc:4392') anchor the concept and help distinguish it from more general search and definition tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when this tool is appropriate: when you need a language-neutral way to line up EU and national law on the same legal concept. It does not explicitly name alternative siblings or state when not to use it, which keeps it from a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recent_changesWhat changed in the corpusARead-onlyIdempotentInspect
Change feed: provisions added or modified, filterable by jurisdiction, concept and date. detectedAt is when Lexiara observed the change — legal in-force dates come only from the provision itself.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum items, default 50. | |
| since | No | ISO date: only changes detected after this. | |
| concept | No | Restrict to one concept id, e.g. 'eurovoc:4585'. | |
| jurisdiction | No | ISO country filter, e.g. 'UK', 'FR', 'EU'. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only/idempotent behavior. The description adds meaningful nuance beyond that: detectedAt reflects when the system observed the change, not the legal in-force date. This helps set expectations about timestamps without contradicting the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core purpose and filters, with a single important caveat about detectedAt vs. in-force dates. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list operation with a full output schema and all parameters documented, the description communicates the essential behavior and the one subtle timestamp distinction. It could be slightly more complete by naming sibling tools, but nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema covers all four parameters with clear descriptions (100% coverage), so the baseline applies. The description reinforces the role of jurisdiction, concept, and date filters but does not add significant new meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific resource (“provisions”) and the nature of the feed (“added or modified”), plus the available filters (“jurisdiction, concept and date”). This is clear enough to orient an agent, though it doesn’t explicitly contrast with siblings like provision_history or follow_updates.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to choose recent_changes over related tools such as follow_updates, provision_history, or search. The description explains what the tool does but not the context in which it is the right choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
request_ingestionAsk Lexiara to acquire a missing lawAIdempotentInspect
When a lookup returns coverage with requestable: true, ask for the missing instrument instead of stopping or guessing. Give the CELEX (or an EU ELI), the language and the version point; say WHY in one or two sentences; state any testable expectations. Lexiara validates the target, fetches the publisher's own bytes, reads them through the same parser and the same fail-closed checks every other act goes through, and returns handles you repeat your original lookup with.
WHAT THIS TOOL IS NOT. It never fetches a URL you supply — the target must resolve to a publisher identifier this service derives itself, and proposed_sources is recorded as a note for a human and is never dereferenced. It states nothing about what the law means: acquiring an act makes the publisher's text addressable and does nothing else.
EXPECTATIONS ARE HYPOTHESES, NOT INSTRUCTIONS. has_article, has_annex, mentions (three words or more), min_provisions, language_is are checked against the stored rows after publication and reported as matched, contradicted or not_verifiable. A contradicted expectation is reported and the publisher's text is left exactly as published — nothing is invented, translated or back-dated to satisfy one.
Identical targets from different callers JOIN one acquisition; your rationale stays private to your account. Re-send the same idempotency_key to get the same request back rather than a second one. Jobs are asynchronous: read retry_after, then poll get_ingestion_request. This tool creates a request: an OAuth grant with only read cannot call it; reconnect and approve the explicit ingestion:request consent. Existing read grants remain read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| eli | No | An EU ELI on the Publications Office's own domain, if you have no CELEX. | |
| role | No | 'law' (default) or 'guidance' for a Commission notice. | |
| celex | No | CELEX id of the act, e.g. '32024L0825', or a dated consolidation '02005L0029-20220528'. | |
| intent | Yes | What kind of gap this is. `derived_references` refreshes derived references for a held work; missing_component and repair against an act already held re-read THAT expression rather than creating a second one beside it. | |
| origin | No | Lexiara handles you started from (work, eId, expression id). Private. | |
| version | No | 'as-adopted' (default), the publisher's consolidation date as YYYY-MM-DD, or 'unresolved' when you genuinely do not know — which returns a question, not a job. | |
| language | No | ISO 639-3 language wanted, e.g. 'eng', 'fra'. Default 'eng'. | |
| rationale | No | One or two sentences: the question, and why this evidence is needed. Private to your account. | |
| expectations | No | Up to ten predicates, each naming exactly one of has_article, has_annex, mentions, min_provisions, language_is. | |
| evidence_path | No | The shortest path from held material to the missing target: each step a { from, relationship, to } you observed. Private, and evidence for a human, never an instruction. | |
| idempotency_key | No | Your own key for this request. The same key returns the same request. | |
| proposed_sources | No | Official identifiers or locators you believe serve this act. RECORDED AS TEXT AND NEVER FETCHED. | |
| requested_bounds | No | maxBytes / maxSeconds you are willing to spend. May only NARROW the server's budget; a larger number is ignored. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the annotations: it discloses that the target is validated, fetched from the publisher's own bytes, run through the same fail-closed checks, and returned as handles for repeating the original lookup. It also clarifies that expectations are hypotheses, not instructions, and that contradicted expectations leave the publisher's text untouched. The idempotent behavior, async retry_after polling, and auth consent limitations are all disclosed, and nothing in the description contradicts the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long, but it earns most of its length with clearly separated sections: core usage, what the tool is not, expectations semantics, and operational caveats. Front-loading the main invocation scenario helps an agent quickly understand the tool's purpose. Some repetition exists around `proposed_sources` never being dereferenced, which also appears in the schema, so it is not perfectly lean.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity — 13 parameters, enums, nested objects, async behavior, auth boundaries, and idempotency — the description is remarkably complete. It covers when to call, what will happen, what will not happen, how expectations are handled, how idempotency works, how to poll, and what auth is required. The output schema exists, so the description need not restate return shapes, and nothing critical for correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description cooverage is 100%, so the baseline is 3 and the description does not need to compensate for undocumented parameters. The prose adds helpful cross-cutting context like idempotent keys, private rationale, and expectations being checks rather than instructions, but it does not systematically add per-parameter meaning beyond whatthe schema already provides. This is a solid 3 rather than higher because the extra value lies in behavioral context, not parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a very specific verb and resource: when a lookup returns `coverage` with `requestable: true`, ask Lexiara to acquire the missing law by creating an ingestion request. It clearly distinguishes this from siblings like get_ingestion_request, get_ingestion_result, and list_ingestion_requests by emphasizing that this tool creates a request rather than reading or listing one.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit when-to-use guidance: only after a lookup indicates `requestable: true`, and explicitly says not to stop or guess. It also names exclusions: it never fetches a user-supplied URL, never interprets law, and requires `ingestion:request` consent beyond a read-only OAuth grant. It even points to the polling flow with get_ingestion_request, making the alternative workflow clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchSearch Lexiara legislationARead-onlyIdempotentInspect
Search Lexiara's bounded EU and UK legislation corpus. Returns compact, citable results with opaque ids; pass an id unchanged to fetch for the provision text and provenance.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Natural-language or keyword search over legislation. |
Output Schema
| Name | Required | Description |
|---|---|---|
| results | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the operation read-only, idempotent, and non-destructive. The description adds useful behavioral context beyond this: results are compact, ids are opaque, and an id should be passed unchanged to a fetch operation for full text and provenance. This provides a clear next-step workflow.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core purpose and followed by the result-handling behavior. Every sentence earns its place and there is no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter search tool with a rich output schema and safety-relevant annotations, the description covers the essential workflow: search, receive compact results, and follow an opaque id to fetch full provision details. Nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the single 'query' parameter is adequately described as a natural-language or keyword search. The description adds no additional query-format guidance, but with full schema coverage the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action ('Search') and a specific resource ('Lexiara's bounded EU and UK legislation corpus'), and it explains the nature of results. It does not explicitly differentiate from the sibling tool 'search_legislation', so it stops short of full sibling distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when to use the tool: when searching a bounded EU and UK corpus and wanting compact, citable results. It does not mention alternatives or exclusion conditions, but the boundary is reasonably clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_legislationFull-text search across the corpusARead-onlyIdempotentInspect
Ranked full-text search over provision text. Results carry work, eId, status and provenance — feed a hit's work+eId to lookup_provision for the complete payload.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum hits, default 10. | |
| query | Yes | Search terms, e.g. 'zero-rating of food'. | |
| language | No | Restrict to a text language, e.g. 'eng'. | |
| jurisdiction | No | ISO country filter, e.g. 'UK', 'FR', 'EU'. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so safety is covered. The description adds value beyond annotations by disclosing that results are ranked and by listing the result fields (work, eId, status, provenance), plus the relationship to lookup_provision.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler; the first sentence states the core behavior and scope, and the second adds return-field context and a downstream pointer. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With full schema coverage, safety annotations, and an output schema present, nothing essential is missing for selecting and invoking this tool. The description covers ranking, result contents, and how to get the complete payload.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already documents all four parameters. The description does not add parameter-specific meaning beyond saying the search is full-text over provision text, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and object: 'Ranked full-text search over provision text.' This clearly differentiates it from siblings like lookup_provision and the generic search by defining both the resource (provision text) and the behavior (ranked full-text).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides clear context: this is a ranked full-text search, and it gives an explicit downstream instruction to feed a hit's work+eId to lookup_provision for the complete payload. It does not enumerate exclusions or when-not conditions, but the workflow guidance is enough to route an agent correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
term_languagesThe same defined term in the act's other authentic languagesARead-onlyIdempotentInspect
How an act words one of its defined terms in each language version held. NOT a translation: an EU instrument is equally authentic in all 24 official languages (Regulation No 1/1958, article 4), so each wording is the law in that language. Use it to answer 'what do the German and French texts call this?' — e.g. 'commercial guarantee of durability' is 'gewerbliche Haltbarkeitsgarantie' and 'garantie commerciale de durabilité'.
The term may be given in ANY language held, so the German words find the English definition just as well as the other way round.
SCOPE: this is the EU act's own wording per language. It is NOT how a Member State's transposing legislation words it — a national implementation may lawfully choose different wording, and reaching it means following a transposition link that carries a method and a confidence (find_national_implementations). Nothing here is inferred.
| Name | Required | Description | Default |
|---|---|---|---|
| term | Yes | The phrase, in any language held. Matched exactly (case-insensitive). | |
| work | No | Scope to one instrument (ELI or official number). | |
| limit | No | Maximum terms, default 8. | |
| jurisdiction | No | ISO country filter, e.g. 'UK', 'FR', 'EU'. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnlyHint, idempotentHint, and destructiveHint, so the description rightly doesn't repeat those. It adds meaningful context beyond the annotations: EU language versions are equally authentic under Regulation No 1/1958, the term may be entered in any language, and results are direct wording, not inferred translations. It does not describe result shape, but an output schema is present and the safety profile is covered by annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is longer than the minimal two sentences, but every paragraph justifies its presence: core meaning, legal authenticity, a worked example, and a scope exclusion. The Regulation No 1/1958 citation is useful legal context rather than filler. It could be trimmed slightly without losing information, but it is well-structured and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 4 parameters, full schema coverage, annotations, and an output schema, the description provides the semantic context that the schema cannot: EU multilingual authenticity, bidirectional lookups, and the distinction from national transpositions. Nothing an agent needs to select this tool over siblings or invoke it correctly appears missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds extra meaning to the term parameter by clarifying that German words find the English definition just as well as the reverse, which is not fully obvious from the schema alone. work, limit, and jurisdiction receive no extra prose, but their schema descriptions are already complete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Leads with a specific verb+resource: how an act words one of its defined terms in each language version held. It immediately distinguishes itself from translation and from national transposition wording, and the example ('commercial guarantee of durability' vs German/French) makes the purpose concrete. The description clearly differentiates the tool from glossary/lookup siblings by scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says when to use it: 'Use it to answer what do the German and French texts call this?' It also gives a when-not-to-use warning about Member State transposing legislation and names the alternative, find_national_implementations. This leaves no ambiguity about tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
work_glossaryEvery term an instrument definesARead-onlyIdempotentInspect
The act's glossary: every term it defines, alphabetical, with the publisher's own wording verbatim and the provision that defines each one. Use it to orient in an unfamiliar instrument, or to check what a term means IN THIS ACT rather than in the corpus at large — several instruments define 'consumer' differently and all are right within their own scope.
AN EMPTY GLOSSARY IS ABOUT OUR READER, NOT THE ACT. Extraction reads the drafting constructions it has been taught and coverage is uneven across legal traditions; provisions is returned so a zero can be read against the size of the instrument. Do not report it as 'this act defines no terms'.
A NULL definition means one of two things: borrowed true means the act takes the meaning from another instrument and states none of its own; otherwise the wording could not be delimited. count is three populations (defines, adoptsCount, undelimited) — never quote it as one.
The definitions are free. Only the adopts resolution (which act a borrowed definition comes from) is Lexiara Nexus data requiring an API key on a signed-in account.
| Name | Required | Description | Default |
|---|---|---|---|
| work | Yes | ELI or official number of the instrument, e.g. '32011L0083'. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly/idempotent/non-destructive, and the description adds substantial context beyond them: the warning that an empty glossary reflects extraction coverage rather than the act, the two-way meaning of a null definition (borrowed vs undelimited), the three-population nature of count, and the API-key requirement for the adopts resolution. This is exactly the behavioral detail annotations cannot carry.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the core definition before the caveats, and each paragraph carries distinct information. The all-caps warnings and long caveat block are slightly heavy, but virtually every sentence earns its place by preventing a specific misreading.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the description need not explain return values, yet it still clarifies the ambiguous ones (count populations, null definitions). Combined with the annotations covering safety, nothing an agent needs to call this correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single required 'work' param, so the schema already documents format and examples. The description's field-level talk (count, provisions, borrowed, adopts) concerns outputs, not input semantics, so it adds nothing to the input parameter. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (the act's glossary) with concrete scope modifiers: every term it defines, alphabetical, verbatim wording, plus the defining provision. It explicitly distinguishes itself from the corpus-wide alternative by emphasizing meanings 'IN THIS ACT rather than in the corpus at large', which separates it from the sibling define_term.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives two concrete use cases (orient in an unfamiliar instrument; verify a term's meaning within this act) and the condition that selects this tool over the corpus-level alternative. It also sets an explicit when-NOT-to-report rule: 'Do not report it as this act defines no terms' when the glossary is empty.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
work_mentionsWho names this act, provision by provisionARead-onlyIdempotentInspect
The act-level overview: every provision of every instrument in this corpus that names the given act, grouped by citing instrument, with the article of the act each citation resolved to (targetEId, null where the citation is act-level — which is most of them, and is not a defect). Each instrument also carries adoptions: definitions it BORROWS from this act rather than writing, which is a different claim and is counted apart, never summed with the citations. Use related_works for the same question at instrument level, which is public. A row asserts that the provision NAMES this act, and nothing about whether it implements or corresponds to it.
Lexiara Nexus data requires an API key on a signed-in account. The free plan carries a monthly Nexus allowance; the legislative text itself is always free.
| Name | Required | Description | Default |
|---|---|---|---|
| eli | Yes | ELI URI or official number of the instrument — a French code has only the latter. | |
| limit | No | Maximum citing provisions, default 500, cap 2000. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnly, idempotent, non-destructive), and the description adds real context: the null targetEId case is expected and not a defect, adoptions are borrowed definitions counted separately and never summed with citations, and Nexus data requires a signed-in API key with a monthly allowance. That is meaningful disclosure beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Dense but front-loaded: the act-level overview and grouping come first, then the scope caveat, then the sibling routing. The trailing API-key/allowance sentence is somewhat boilerplate but still earns its place for access planning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need not be explained, yet the description still clarifies the ambiguous output semantics (targetEId null, adoptions vs citations) and the scope limitation. An agent has everything needed to call and interpret it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the eli and limit parameters (default 500, cap 2000) are documented in the schema itself. The description adds no syntax or format detail about eli or limit, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a precise verb+resource ('every provision of every instrument ... that names the given act') and the grouping granularity (by citing instrument). It explicitly distinguishes itself from the sibling related_works and from implementation-oriented tools by stating what a row does and does not assert.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Names the alternative (related_works) and the condition that selects it ('the same question at instrument level, which is public'), and implicitly routes implementation questions elsewhere by saying a row says nothing about implementation. No explicit statement of when-not-to-use beyond that, so slightly short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Changed
explore_role_requirements1 field changed- added
Input schema / properties / termAdded value: +{ + "description": "Optional actor label or exact phrase in a candidate quotation. Discovery only; shared labels do not equate legal definitions or establish applicability.", + "type": "string" +}
1 tool update
- Changed
explore_role_requirements1 field changed- added
Input schema / properties / workAdded value: +{ + "description": "Optional legislation ELI; scope candidates and legal roles to this act.", + "type": "string" +}
2 tool updates
- Added
list_work_versions - Changed
lookup_provision1 field changed- changed
Input schema / properties / expression / descriptionPrevious value: -"Optional exact expression UUID, normally from an ingestion result handle. Preserves the selected expression and language; use only a handle returned by Lexiara."New value: +"Optional exact expression UUID from list_work_versions or an ingestion result handle. Preserves the selected expression and language; use only a handle returned by Lexiara."
2 tool updates
- Added
get_saved_role_view - Added
list_saved_role_views
1 tool update
- Added
explore_role_requirements
2 tool updates
- Added
concept_family - Added
list_concepts
1 tool update
- Changed
define_term1 field changed- added
Input schema / properties / workAdded value: +{ + "description": "ELI or official number of the borrowing/defining instrument; scopes the term to that instrument.", + "type": "string" +}
3 tool updates
- Added
list_ingestion_requests - Changed
lookup_provision1 field changed- added
Input schema / properties / expressionAdded value: +{ + "description": "Optional exact expression UUID, normally from an ingestion result handle. Preserves the selected expression and language; use only a handle returned by Lexiara.", + "type": "string" +}
- Changed
request_ingestion2 fields changed- changed
Input schema / properties / intent / descriptionPrevious value: -"What kind of gap this is. missing_component and repair against an act already held re-read THAT expression rather than creating a second one beside it."New value: +"What kind of gap this is. `derived_references` refreshes derived references for a held work; missing_component and repair against an act already held re-read THAT expression rather than creating a second one beside it." - changed
Input schema / properties / intent / enumPrevious value: -[ - "new_work", - "missing_component", - "language_counterpart", - "version", - "repair" -]New value: +[ + "new_work", + "missing_component", + "language_counterpart", + "version", + "repair", + "derived_references" +]
4 tool updates
- Changed
get_coverage2 fields changed- added
Input schema / properties / languageAdded value: +{ + "description": "Optional ISO 639-3 code, e.g. 'fra', to ask about one language version.", + "type": "string" +} - added
Input schema / properties / workAdded value: +{ + "description": "Optional: ask about ONE instrument by CELEX, ELI or official number. The answer then carries `requested.gap` — metadata-only, language-not-held or not-held — or `requested.held: true` when the corpus holds it.", + "type": "string" +}
- Added
get_ingestion_request - Added
get_ingestion_result - Added
request_ingestion
1 tool update
- Changed
lookup_provision1 field changed- added
Input schema / properties / sourceLangAdded value: +{ + "description": "Stored three-letter source language, e.g. eng or fra. Selects held text, never generates translation.", + "type": "string" +}
1 tool update
- Changed
lookup_provision1 field changed- changed
Input schema / properties / asAt / descriptionPrevious value: -"Optional date YYYY-MM-DD: the law as it stood on that day."New value: +"Optional real calendar date YYYY-MM-DD. Text is returned only from a held expression whose explicit validity window covers that day; otherwise `date_not_covered` is returned. Omit for current text."
21 tool updates
- Changed
define_term1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Added
fetch - Changed
find_national_implementations1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Changed
follow_updates1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Changed
get_coverage1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Changed
get_topic1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Changed
guidance_for_provision1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Changed
list_follows1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Changed
list_review_queue1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Changed
list_topics1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Changed
lookup_provision2 fields changed- removed
Input schema / properties / langRemoved value: -{ - "description": "Optional ISO 639 language code, two or three letters, e.g. 'eng'. Generating a NEW machine translation needs an identified caller; authentic versions and already-cached ones are served to anyone.", - "type": "string" -} - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Changed
provision_context1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Changed
provision_history1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Changed
provisions_by_concept1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Changed
recent_changes1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Changed
related_works1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Added
search - Changed
search_legislation1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Changed
term_languages1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Changed
work_glossary1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
- Changed
work_mentions1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "description": "The JSON response from the corresponding Lexiara API route.", + "type": "object" +}
1 tool update
- Changed
lookup_provision1 field changed- changed
Input schema / properties / lang / descriptionPrevious value: -"Optional ISO 639 language, e.g. 'eng', 'fra'."New value: +"Optional ISO 639 language code, two or three letters, e.g. 'eng'. Generating a NEW machine translation needs an identified caller; authentic versions and already-cached ones are served to anyone."
1 tool update
- Added
guidance_for_provision
18 tool updates
- First observed
define_term - First observed
find_national_implementations - First observed
follow_updates - First observed
get_coverage - First observed
get_topic - First observed
list_follows - First observed
list_review_queue - First observed
list_topics - First observed
lookup_provision - First observed
provision_context - First observed
provision_history - First observed
provisions_by_concept - First observed
recent_changes - First observed
related_works - First observed
search_legislation - First observed
term_languages - First observed
work_glossary - First observed
work_mentions
Related MCP Connectors
Regulatory intelligence for AI agents across jurisdictions
Register every AI agent, log every action, prove it. EU AI Act compliance built in.
Audited AI-regulation data: laws, bills, news and obligations across US, EU and 62 jurisdictions
EU data protection law for AI agents: GDPR, AI Act, EDPB, CJEU and national law, with status.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceCite-grade German legal-text infrastructure for LLM agents, providing access to federal, Länder, and EU laws with cryptographic provenance.26 PyPI2Apache 2.0
- AlicenseAqualityAmaintenanceEnables AI assistants to check whether a quote from the EU AI Act matches the right version on a given date, compare provisions across the 2024 and 2026 texts, and emit evidence records that anyone can recompute in a browser against signed corpus releases.61Apache 2.0
- FlicenseAqualityDmaintenanceProvides AI agents with access to a structured compliance dataset covering privacy and AI regulations across jurisdictions, enabling verifiable answers to regulatory questions via tools and resources.12-
- AlicenseNot gradedqualityDmaintenanceEnables EU AI Act compliance for AI agent systems by providing risk classification, audit trails, gap analysis, and evidence package generation.40 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.