Skip to main content
Glama

Server Details

European business verification for AI agents: registry, VAT, sanctions, IBAN. Pay-per-call x402.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
contentfactory/eu-verify
GitHub Stars
1
Server Listing
eu-verify

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.4/5 across 19 of 19 tools scored. Lowest: 3.2/5.

Server CoherenceA
Disambiguation5/5

Each tool serves a distinct verification or lookup purpose (e.g., company lookup, sanctions screening, address geocoding, IBAN validation) with no overlap. Even tools targeting the same source (e.g., check_eori vs. validate_vat_eu) have clearly different inputs and outputs.

Naming Consistency4/5

Almost all tools follow a verb_noun pattern (verify, validate, lookup, check, find, screen) with clear nouns. The only exception is 'catalog' (a noun-only name), but it's a minor deviation that doesn't cause confusion.

Tool Count5/5

19 tools is appropriate for a data verification service covering company data, sanctions, VAT, addresses, emails, IBANs, and financials. Each tool addresses a specific need without being excessive or sparse.

Completeness5/5

The tool set covers the full lifecycle of EU company verification: existence, status, financials, ownership, VAT, sanctions, EORI, invoices, tenders, and address validation. No obvious gaps for its stated domain.

Available Tools

19 tools
business_days_frAInspect

Adds N French business days to a date (?start=2026-07-13&add=30) or counts them over a range (?from=2026-07-01&to=2026-09-30). Skips weekends and the 11 French legal public holidays (movable feasts computed via Butcher-Meeus). mode=ouvres (Mon-Fri, default) or ouvrables (Mon-Sat). Deterministic local computation, JSON. Price: $0.005 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
addNo
startYes
Behavior5/5

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

With no annotations, the description fully discloses behavior: skips weekends and 11 French holidays, uses Butcher-Meeus algorithm, supports two modes, deterministic local computation, returns JSON, and includes pricing. No contradictions.

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

Conciseness5/5

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

Two sentences: first explains core function with examples, second adds details on holidays, modes, computation, output, and pricing. Every sentence adds value; no wasted words.

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

Completeness4/5

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

Covers purpose, parameters, behavior, modes, holidays, pricing, and output format (JSON). Without output schema, description does not detail exact return fields, but implies result (date or count) through examples. Almost complete.

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

Parameters4/5

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

Schema description coverage is 0%, so description compensates by explaining start as a date string and add as number of days. However, description mentions 'from' and 'to' parameters not present in schema, causing slight inconsistency.

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

Purpose5/5

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

Description clearly states 'Adds N French business days to a date' and 'counts them over a range', specifying both verb and resource. It distinguishes from sibling tools which focus on company data and validation.

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

Usage Guidelines4/5

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

Provides explicit usage examples with query parameters and explains two modes (ouvres/ouvrables). However, no explicit guidance on when not to use this tool or alternatives among siblings.

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

catalogAInspect

FREE. Lists every product of this data shop: HTTP endpoint, price in USDC, and one-line summary. Use it to discover capabilities before paying.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior3/5

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

No annotations provided, so description carries full burden. It declares 'FREE' and lists what the tool does, but does not explicitly state if it is read-only or non-destructive, nor any other behavioral traits. Acceptable for a simple list tool but could be more explicit.

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

Conciseness5/5

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

Two efficient sentences that front-load the key information ('FREE') and provide both what the tool does and when to use it. No unnecessary words.

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

Completeness5/5

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

Given zero parameters, an existing output schema, and a set of sibling tools that are all specific lookups, the description fully covers the tool's purpose and usage context. The agent has all needed information to select and invoke it correctly.

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

Parameters4/5

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

No parameters exist, so baseline is 4. The description adds meaning by specifying the content of the output (HTTP endpoint, price, summary), which is helpful beyond the empty schema.

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

Purpose5/5

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

The description clearly states it lists every product of the data shop with specific details: HTTP endpoint, price in USDC, and one-line summary. It distinguishes from sibling tools that are specific lookups and validations by being a comprehensive catalog.

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

Usage Guidelines5/5

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

Explicitly advises to use it for discovering capabilities before paying, providing clear context on when to invoke this tool versus others.

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

check_eoriAInspect

Live EORI (Economic Operators Registration and Identification) validation via the European Commission EOS/DDS2 service -- the number every business needs to clear customs in the EU. Query: ?eori=FR38347481400100 (2-letter country + up to 15 alphanumerics). Returns valid true/false plus registered name and address when the operator consented to publication. SOAP upstream, clean JSON out; 24h cache. Price: $0.003 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
eoriYes
Behavior5/5

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

No annotations are provided, so the description carries full burden. It discloses the upstream SOAP protocol, 24-hour cache, return fields (valid, name, address with consent), and pricing ($0.003 per call). This fully informs the agent of the tool's behavior.

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

Conciseness5/5

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

The description is a single paragraph with every sentence adding value: purpose, format, return data, caching, and pricing. It is concise, front-loaded, and free of redundant information.

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

Completeness5/5

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

Given no annotations or output schema, the description covers all necessary aspects: live service, data source, response details, caching, and cost. It provides sufficient context for an agent to understand and invoke the tool correctly.

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

Parameters5/5

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

With 0% schema description coverage, the description compensates by detailing the parameter format: 2-letter country code plus up to 15 alphanumerics, including an example query. This provides essential semantics beyond the schema's type definition.

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

Purpose5/5

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

The description clearly identifies the tool as a live EORI validation service via the European Commission, specifying the resource (EORI numbers) and the action (validation for customs clearance). It distinguishes itself from siblings by being specifically for EORI, not VAT, SIRET, or other identifiers.

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

Usage Guidelines4/5

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

The description states when to use the tool: for EORI validation needed for EU customs. While it does not explicitly list alternatives or exclusions, the sibling tools provide different validation types, and the context implies this is the only tool for EORI. Clear guidance is present but without explicit when-not-to-use.

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

check_insolvency_frAInspect

Legal announcements from the French BODACC official gazette for one company, by SIREN (Luhn-validated). Query: ?siren=383474814 (required), famille=collective for insolvency proceedings (optional filter), limit=10 (1-20). Returns newest-first announcements with family, tribunal, judgment nature and date, and source URL; legal entities only (GDPR-safe). Zero announcements for a valid SIREN is a clean-record signal. Source: DILA open data, daily publications. Cached 1h. Price: $0.01 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
sirenYes
familleNo
Behavior5/5

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

With no annotations provided, the description fully discloses behavioral traits: Luhn validation, optional filtering, result ordering (newest-first), returned fields (family, tribunal, judgment, date, URL), caching (1h), pricing ($0.01 USDC), data source (DILA open data), and GDPR safety (legal entities only). No contradictions.

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

Conciseness5/5

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

The description is dense but every sentence adds value. It front-loads the purpose and required parameter, then details options, output, and caveats in a logical order. No wasted words.

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

Completeness5/5

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

For a simple lookup tool with 3 parameters and no output schema, the description covers input semantics, behavior, output format, caching, pricing, and data source. It is fully complete for effective use.

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

Parameters5/5

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

Despite 0% schema description coverage, the description explains all three parameters: siren (required, with example), famille (optional, default empty, purpose: insolvency filter), and limit (range 1-20, default 5). This adds significant meaning beyond the bare schema titles and defaults.

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

Purpose5/5

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

The description clearly states the tool retrieves 'Legal announcements from the French BODACC official gazette for one company, by SIREN.' It specifies the verb ('check') via the name and resource (BODACC gazette), and the description explicitly mentions insolvency proceedings, distinguishing it from sibling tools like lookup_company_fr.

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

Usage Guidelines4/5

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

The description provides clear usage context: a required SIREN with Luhn validation, optional filter 'famille=collective' for insolvency, and a limit parameter. It also notes that zero announcements for a valid SIREN is a clean-record signal. However, it does not explicitly compare to alternatives or state when not to use this tool.

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

find_public_tenders_euAInspect

Fresh EU public procurement notices from TED (Tenders Electronic Daily, official Publications Office API, new notices daily). Query: ?cpv=48000000&country=FRA&days_back=7&limit=10 (cpv = 8-digit CPV code, country = 3-letter buyer country, all optional). Each notice: publication_number, publication_date, title, buyer_name, tender deadline, notice URL. 1h cache. Price: $0.01 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
cpvNo
limitNo
countryNo
days_backNo
Behavior4/5

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

No annotations are provided, so the description carries the full burden. It discloses caching (1h) and pricing ($0.01 per call), which are useful behavioral traits. It implies read-only behavior, but no explicit contradiction.

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

Conciseness5/5

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

The description is a single paragraph that efficiently conveys purpose, usage, output format, and behavioral traits. Every sentence adds value, and the query example front-loads essential context.

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

Completeness4/5

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

Given no output schema, the description lists the fields in each notice (publication_number, title, etc.). It covers parameters, behavior, and pricing. For a tool with 4 optional params, it is fairly complete.

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

Parameters4/5

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

With 0% schema description coverage, the description adds meaning: 'cpv = 8-digit CPV code', 'country = 3-letter buyer country', and notes all parameters are optional. It also shows a usage example.

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

Purpose5/5

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

The description clearly states the tool finds 'Fresh EU public procurement notices from TED' and provides a query example. It distinguishes from sibling tools (e.g., French or UK company lookups) by specifying EU-wide tenders.

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

Usage Guidelines4/5

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

The description explains the data source (TED, daily new notices), cache duration (1 hour), and pricing. It does not explicitly state when not to use, but the context and sibling names make it clear.

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

invoice_ready_frAInspect

One-call compliance check for the French e-invoicing reform (from 2026-09-01 the customer's SIREN is a mandatory invoice mention). Query: ?siren=552032534 or ?siret=55203253400041. Runs the Luhn checksum, confirms existence and active status in the official SIRENE registry, computes the FR VAT number and validates it live against VIES. Returns a single verdict: ready / not_ready / check_vat_manually (VIES flakiness never blocks the answer). 1h cache. Price: $0.02 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
numberYes
Behavior5/5

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

With no annotations provided, the description fully discloses behavior: Luhn checksum, SIRENE registry check, VAT number computation and VIES validation, return verdicts (ready/not_ready/check_vat_manually), VIES flakiness handling, 1h cache, and price. No contradictions.

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

Conciseness4/5

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

The description is a single paragraph that is dense but not wasteful. It front-loads the purpose and includes all key details without unnecessary elaboration.

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

Completeness5/5

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

Given no output schema, the description explains the three possible return values (ready/not_ready/check_vat_manually) and additional context (caching, pricing). For a single-parameter tool, this provides complete understanding of behavior and output.

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

Parameters4/5

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

The schema has one parameter 'number' with 0% description coverage. The description compensates by explaining that the parameter accepts a SIREN or SIRET number, providing explicit examples with query format. This adds significant meaning beyond the schema.

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

Purpose4/5

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

The description clearly states it's a 'one-call compliance check for French e-invoicing reform' and enumerates the specific checks performed (Luhn, SIRENE, VIES). While it does not explicitly differentiate from sibling tools like validate_siret_fr or validate_vat_eu, the combined nature of the check makes its purpose distinct and clear.

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

Usage Guidelines3/5

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

The description implies usage for comprehensive French e-invoicing compliance but does not explicitly state when to use this tool versus alternatives. It provides query format and pricing, but lacks guidance on exclusions or specific scenarios.

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

lei_ownershipAInspect

Who owns whom, from the official GLEIF LEI graph (CC0 licensed, covers 2.5M+ legal entities worldwide). Query: ?lei=5493001KJTIIGC8Y1R12. Four GLEIF lookups in one call: entity name and status, declared direct parent, ultimate parent, plus the total count and a 10-entity sample of direct children. Unknown LEI returns found=false. 24h cache. Price: $0.005 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
leiYes
Behavior4/5

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

With no annotations, the description fully covers key behaviors: it reveals the data source (GLEIF), coverage (2.5M+ entities), caching (24h), pricing ($0.005/call), and behavior for unknown LEI (returns found=false). No contradictions.

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

Conciseness5/5

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

Two sentences with no wasted words. The first sentence conveys the core purpose, and the second provides all necessary details. It is appropriately sized and front-loaded.

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

Completeness5/5

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

Given the single required parameter, no output schema, and the complexity of ownership data, the description is complete. It covers what the tool returns (four lookups), edge cases (unknown LEI), and operational details (cache, price).

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

Parameters4/5

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

Schema coverage is 0%, but the description compensates by explaining the 'lei' parameter with an example query ('?lei=5493001KJTIIGC8Y1R12') and implying it is a Legal Entity Identifier. This adds meaning beyond the raw schema.

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

Purpose5/5

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

The description clearly states 'Who owns whom' and enumerates four specific lookups (entity name/status, direct parent, ultimate parent, children count/sample), making the tool's purpose crystal clear. It also distinguishes from sibling tools like lookup_lei by focusing on ownership hierarchy.

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

Usage Guidelines4/5

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

The description implies usage for ownership queries with a sample query, but does not explicitly compare to siblings or state when to avoid this tool. It provides a concrete example, making it easy to understand the context, but lacks explicit alternative guidance.

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

lookup_company_frAInspect

Official French company registry search via recherche-entreprises.api.gouv.fr (INSEE Sirene data, updated daily). Query: ?q=airbus or ?q=383474814 (name or SIREN), optional per_page (1-10), page, code_postal, activite_principale (NAF, e.g. 70.10Z), etat_administratif (A active / C ceased). Returns SIREN, legal form, NAF, HQ address, employee range, status and published finances per company. Personal data on directors is stripped (GDPR). 24h cache. Price: $0.005 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
qYes
per_pageNo
Behavior5/5

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

Discloses data source (INSEE Sirene), update frequency (daily), cache duration (24h), pricing, and GDPR compliance. No annotations provided, so description carries full burden and does so thoroughly.

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

Conciseness5/5

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

Dense but well-structured, front-loads purpose, then lists query format, optional parameters, returns, and additional info. No wasted sentences.

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

Completeness4/5

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

Covers query, parameters, output fields, cache, pricing, GDPR. No output schema, so description compensates well. Lacks error handling or pagination detail but still solid.

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

Parameters4/5

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

Schema coverage is 0%, but description adds meaning for q and per_page. However, introduces extra parameters (page, code_postal, etc.) not in schema, which may confuse agents relying on schema.

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

Purpose5/5

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

Clearly states it is an official French company registry search via a specific API, with query by name or SIREN. Distinct from siblings which target other countries or business functions.

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

Usage Guidelines4/5

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

Context is clear for French company lookups, but no explicit guidance on when to choose this tool over siblings like lookup_company_uk or others.

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

lookup_company_ukAInspect

Official UK Companies House data in one paid call. Search: ?q=tesco returns matching companies (number, status, type, incorporation date). Profile: ?number=00445790 returns the full profile PLUS current officers and PSC (persons with significant control, the UK quasi-UBO register): names, roles, natures of control, risk flags (insolvency history, charges, overdue filings) and typed insolvency cases when history exists. Statutory register data, minimized. 24h cache. Price: $0.01 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
limitNo
numberNo
Behavior4/5

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

With no annotations, the description discloses key behaviors: paid call at $0.01, 24-hour cache, and return of risk flags and insolvency history. It truthfully indicates it is a mutation (paid read) without contradiction.

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

Conciseness4/5

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

The description is a single dense paragraph that efficiently conveys key points (modes, data, cost, cache). It front-loads the main verb and resource but uses abbreviations (PSC, quasi-UBO) that may require domain knowledge.

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

Completeness4/5

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

Given no output schema, the description adequately explains return types for both modes, including risk flags and insolvency cases. It covers pricing and cache, though a more structured output description would enhance completeness.

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

Parameters3/5

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

With 0% schema coverage, the description adds meaning by linking q to search, number to profile, and implying limit applies to search results. However, it does not explicitly define limit's role or value bounds, leaving some ambiguity.

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

Purpose5/5

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

The description clearly states the tool retrieves UK Companies House data with two distinct modes: search by query (q) and profile by company number. It lists specific data returned (status, type, officers, PSC, risk flags), distinguishing it from sibling tools like lookup_company_fr.

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

Usage Guidelines4/5

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

The description explains when to use search vs profile ('Search: ?q=tesco' vs 'Profile: ?number=00445790') and mentions pricing and caching. However, it does not explicitly state when not to use the tool or compare it to sibling tools.

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

lookup_financials_frAInspect

Annual accounts filed with the French RNE (INPI). Query: ?siren=552032534 (9 digits, Luhn-validated). Returns the filing history -- closing date, filing date, type (complet/simplifie/consolide), public or confidential -- which is a KYB signal in itself. For the latest public filing it adds headline figures (revenue, operating and net result, total assets, equity) when the liasse scheme is mapped, else says not_covered rather than guessing. 24h cache. Price: $0.03 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
sirenYes
Behavior4/5

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

With no annotations, the description carries full burden. It discloses key behaviors: returns filing history with specific fields, includes headline figures only when mapped else says 'not_covered', mentions 24h cache, and pricing. It does not cover error responses or rate limits, but provides substantial behavioral detail.

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

Conciseness4/5

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

The description is a single paragraph that conveys all essential information without unnecessary words. It could be slightly improved by using bullet points for the returned data, but it remains efficient and front-loaded with the core purpose.

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

Completeness4/5

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

Given the tool has one simple parameter and no output schema, the description thoroughly explains the return data (filing history, headline figures, fallback behavior) and adds cache and pricing details. Minor gaps exist (e.g., error handling), but overall it is complete enough for an AI agent to use correctly.

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

Parameters4/5

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

The input schema has 0% coverage, but the description adds full context for the 'siren' parameter: explains it is a 9-digit Luhn-validated number, provides an example, and describes how it is used in a query. This compensates well for the schema's lack of description.

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

Purpose5/5

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

Description clearly states it retrieves annual accounts filed with the French RNE (INPI), specifying the resource (French RNE filings) and the action (lookup). The detail differentiates it from sibling tools like lookup_company_fr or lookup_company_uk, which focus on general company info or other countries.

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

Usage Guidelines3/5

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

The description implies when to use the tool (for French company financials) and shows the query format, but it does not explicitly state when not to use it or provide alternatives. Context from sibling names suggests differentiation, but the description alone lacks explicit usage boundaries.

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

lookup_leiAInspect

Legal entity reference data from the GLEIF LEI golden copy (updated daily, CC0). Direct lookup: ?lei=529900FCMZ4LKXFD0R69. Search: ?name=airbus&country=FR&limit=5. Each result: lei, legal_name, entity_status, registration_status (ISSUED/LAPSED), jurisdiction, legal_form_id, hq_city/country, next_renewal_date. 24h cache. Price: $0.005 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
leiNo
nameNo
limitNo
countryNo
Behavior4/5

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

No annotations provided, so description carries full burden. It discloses data source (GLEIF), update frequency (daily), license (CC0), cache duration (24h), and pricing ($0.005 USDC). Does not mention authentication or rate limits, but overall good transparency.

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

Conciseness5/5

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

Description is concise (3 sentences) and well-structured: first sentence defines resource, then examples, then result fields, then cache and price. Every sentence adds value.

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

Completeness4/5

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

Covers behavior (cache, price) and result format (fields listed). With no output schema, this is helpful. However, it lacks explicit guidance that at least one of lei or name should be provided, slightly reducing completeness.

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

Parameters5/5

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

Schema has no descriptions (0% coverage). The description adds significant meaning: explains that lei and name are alternative lookup methods, provides example values, and clarifies the role of limit and country in search. Fully compensates for missing schema descriptions.

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

Purpose4/5

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

The description clearly states it provides legal entity reference data from GLEIF LEI golden copy, with examples of direct lookup and search. It distinguishes itself from siblings by focusing on LEI data, but does not explicitly contrast with other tools.

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

Usage Guidelines4/5

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

Provides explicit examples of usage: direct lookup by LEI and search by name/country with limit. Gives pricing and cache info. However, it does not specify when not to use this tool or mention alternatives.

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

screen_sanctionsAInspect

Screen a name against the five official sanctions lists (EU, US OFAC SDN, UN, UK FCDO, French asset freezes) from a snapshot refreshed daily, with per-list dates. Query: name=NAME (optional threshold=0.6-1.0, lists=eu,ofac,un,uk,fr). Returns scored matches with entity type and programs, and a verdict: match, possible_match or no_match. Price: $0.01 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
listsNo
thresholdNo
Behavior4/5

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

No annotations exist, so description carries full burden. It discloses daily snapshot, scoring, verdict types, and pricing. However, it doesn't mention if it's read-only or any side effects, though that's implied.

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

Conciseness5/5

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

Single paragraph efficiently covers purpose, query format, return structure, and pricing. Every sentence adds value with no redundancy.

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

Completeness5/5

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

For a tool with 3 parameters and no output schema, the description covers input constraints, return values (scored matches, verdict), and pricing. Includes snapshot freshness. Complete for effective use.

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

Parameters5/5

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

Schema coverage is 0%, but description fully explains all three parameters: name is required, threshold with range 0.6-1.0 and default 0.85, lists as string of list codes. Adds meaning beyond bare schema.

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

Purpose5/5

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

The description clearly states it screens a name against five specific sanctions lists, with daily refresh and per-list dates. It distinguishes from sibling tools which are business validation tools, making its unique purpose explicit.

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

Usage Guidelines3/5

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

Provides query syntax and optional parameters (threshold, lists) but lacks explicit guidance on when not to use this tool or compare to alternatives. The context implies it's for sanctions screening, but no exclusions are stated.

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

validate_emailAInspect

One-call email verification for lead qualification and list hygiene: RFC 5322 syntax check, then a live MX lookup over DNS-over-HTTPS (Cloudflare, Google fallback). Detects non-existent domains (NXDOMAIN), null-MX domains that refuse mail (RFC 7505), and returns prioritized MX hosts. Query: ?email=someone@example.com. Verdict: deliverable | risky | undeliverable. 1h cache per address. Price: $0.005 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYes
Behavior5/5

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

No annotations are provided, so the description carries the full burden. It discloses the verification steps (syntax check, live MX lookup via DNS-over-HTTPS with fallback), caching behavior (1h), pricing ($0.005 USDC), and expected verdicts. This is comprehensive and transparent.

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

Conciseness5/5

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

The description is concise (4-5 sentences) with front-loaded purpose, followed by technical details, output, caching, and pricing. Every sentence adds value, no fluff.

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

Completeness5/5

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

Given 1 parameter, no output schema, and no annotations, the description provides all necessary context: input format, verification process, output classification, caching, and pricing. It is complete for an agent to use correctly.

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

Parameters5/5

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

With 0% schema coverage, the description compensates fully by providing an example query format ('?email=someone@example.com') and specifying the email parameter is required. It adds meaning beyond the schema by explaining the format and purpose.

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

Purpose5/5

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

The description explicitly states the tool's purpose: 'One-call email verification for lead qualification and list hygiene' and details the specific checks (RFC 5322 syntax, MX lookup, NXDOMAIN detection) and outputs (verdict: deliverable|risky|undeliverable). It clearly distinguishes this tool from sibling tools which focus on business lookups and validation.

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

Usage Guidelines4/5

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

The description provides clear context for use ('lead qualification and list hygiene') and explains the process. However, it does not explicitly mention when not to use this tool or suggest alternatives, which would be beneficial for an AI agent.

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

validate_ibanAInspect

Deterministic IBAN check before a SEPA/international transfer: format regex, per-country length (public SWIFT registry, ~85 countries) and ISO 7064 mod-97 checksum. Query: ?iban=FR1420041010050500013M02606 (spaces/dashes tolerated). Returns valid, country, bban, and a precise failure reason. Pure offline computation, 1y cache. Price: $0.001 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
ibanYes
Behavior5/5

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

No annotations provided, but description fully compensates: discloses deterministic computation, offline, 1-year cache, pricing ($0.001 USDC per x402 call), and return fields (valid, country, bban, failure reason). No contradiction with annotations.

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

Conciseness5/5

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

Three sentences efficiently cover purpose, input format, and key behaviors. No redundant or extraneous information.

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

Completeness4/5

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

Coverage is good given complexity: inputs explained, processing described, outputs listed, and cost mentioned. Could improve with explicit output schema but the listed fields are sufficient.

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

Parameters4/5

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

Schema has one parameter with no description (0% coverage). Description adds value by providing an example and noting that spaces/dashes are tolerated, which aids in correct parameter formatting.

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

Purpose5/5

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

Description clearly states it performs a deterministic IBAN check with specific validation methods (format regex, country length, mod-97 checksum). Distinguishes well from sibling validation tools like validate_vat_eu or validate_email.

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

Usage Guidelines4/5

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

Provides clear use context: 'before a SEPA/international transfer'. Includes input tolerances (spaces/dashes). Lacks explicit when-not-to-use or comparisons to alternatives, but sufficient for basic guidance.

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

validate_siret_frAInspect

Instant pre-validation of French company numbers before invoicing or costly Sirene API calls. Auto-detects SIREN (9 digits) vs SIRET (14 digits), applies the INSEE Luhn rule and the documented La Poste exception (356000000*: digit sum mod 5). Query: ?number=44306184100047 (spaces/dots/dashes tolerated). Returns valid, type, siren, nic and the rule applied. Pure offline computation, 1y cache. Price: $0.001 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
numberYes
Behavior4/5

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

No annotations provided, so description carries full burden. It reveals it's a pure offline computation with a 1-year cache, no network calls after first, and costs $0.001 per call. It also explains auto-detection and input tolerance. This is sufficiently transparent for a read-only validation tool.

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

Conciseness5/5

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

The description is a single dense paragraph that front-loads purpose, then provides validation details, example, return fields, performance characteristics, and pricing. Every sentence is informative with no redundancy or fluff.

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

Completeness5/5

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

Given the tool's simplicity (single parameter, no output schema), the description covers all necessary aspects: use case, validation algorithm, input format, output fields, caching, cost, and performance. It is complete for the agent to correctly select and invoke the tool.

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

Parameters5/5

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

Schema coverage is 0% (only type string), but description provides an example query, tolerates spaces/dots/dashes, and explains what the number represents (SIREN vs SIRET). This adds significant meaning beyond the schema's bare 'string' definition.

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

Purpose5/5

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

The description clearly states it pre-validates French company numbers (SIREN/SIRET) for invoicing or before costly API calls. It distinguishes between SIREN and SIRET and mentions specific validation rules (Luhn, La Poste exception), making its purpose distinct from sibling tools like validate_vat_eu or verify_company_fr.

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

Usage Guidelines4/5

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

Explicitly recommends use before invoicing or Sirene API calls, providing a clear use case. While it doesn't explicitly state when not to use it or compare to alternatives, the context (offline, fast validation) implies it's for preliminary checks, which is adequate.

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

validate_vat_euAInspect

Live intra-EU VAT number validation via the European Commission VIES REST API (real-time query of the member state registry). Query: ?cc=IE&vat=6388047V (cc = member state code incl. EL/XI, vat = number without country prefix). Returns is_valid, the trader name and address as registered (when the member state publishes them) and request_date (compliance timestamp); 24h cache. Price: $0.005 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
vatYes
countryYes
Behavior4/5

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

No annotations exist, so the description carries full burden. It discloses real-time query via VIES, 24h caching, pricing ($0.005 per call), and returned fields (is_valid, name, address, request_date). This provides good behavioral context beyond the schema, though some details like error handling are omitted.

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

Conciseness4/5

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

The description is 4 sentences, front-loading the core purpose and adding necessary details. It is efficient but includes pricing information that, while useful, slightly lengthens it. No superfluous content.

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

Completeness5/5

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

Despite no output schema, the description explains return values (is_valid, name, address, request_date), caching behavior, pricing, and API source. For a simple validation tool with two parameters, this is comprehensive and leaves minimal ambiguity.

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

Parameters5/5

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

Schema has 0% coverage with no parameter descriptions. The description adds critical meaning: country must be member state code (including EL/XI), VAT number without country prefix, and provides a concrete example. This fully compensates for the missing schema descriptions.

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

Purpose5/5

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

The description clearly states the verb 'validate' and the resource 'intra-EU VAT number' via the VIES API. It distinguishes from sibling tools like validate_email or validate_iban by specifying intra-EU VAT, making its purpose unambiguous.

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

Usage Guidelines3/5

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

The description implies usage for EU VAT validation but does not explicitly state when to use it over other validation tools (e.g., other country-specific tools). No exclusion criteria or alternative recommendations are provided, leaving usage context somewhat inferred.

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

verify_address_frBInspect

French address geocoding on the official Base Adresse Nationale (api-adresse.data.gouv.fr, Etalab/IGN, continuously updated). Forward: ?q=8 boulevard du port amiens with optional &type=housenumber|street|locality|municipality &citycode=80021 (INSEE filter). Reverse: ?lat=49.897&lon=2.290. &limit=1-10 (default 3). Each match returns normalized label, confidence score, lat/lon, street, postcode, city, INSEE citycode and context. No match returns 400 (not billed). Cached 24h. Price: $0.001 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
qYes
limitNo
Behavior3/5

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

The description discloses forward and reverse geocoding, return fields (label, confidence, lat/lon, etc.), caching (24h), pricing, and no-match behavior (400, not billed). However, the schema lacks parameters like type and citycode mentioned in the description, creating inconsistency and potential confusion for the AI agent.

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

Conciseness4/5

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

The description is well-structured with forward/reverse sections and logical order (parameters, returns, caching, pricing). Every sentence adds information, though it could be slightly more concise by avoiding parameter details not in the schema.

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

Completeness3/5

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

Given no output schema, the description adequately explains return values and behavior. However, the schema mismatch and missing details on authentication or error handling (beyond 400) leave gaps for a moderately complex geocoding tool.

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

Parameters2/5

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

With 0% schema description coverage, the description adds value through examples for q and limit range (1-10, default 3). However, it also describes parameters (type, citycode, lat, lon) not present in the schema, contradicting the input structure and undermining reliability.

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

Purpose4/5

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

The description clearly states it performs French address geocoding using the official Base Adresse Nationale, distinguishing it from sibling tools like lookup_company_fr. However, the mention of parameters not in the schema (type, citycode, lat, lon) introduces ambiguity, slightly reducing clarity.

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

Usage Guidelines3/5

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

No explicit guidance on when to use this tool versus alternatives. The purpose is implied through the description (geocoding French addresses), but there is no comparison to siblings or conditions for use, making it adequate but minimally helpful.

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

verify_company_euAInspect

One-call verification of a European company: official registry existence and status, insolvency signals, VAT (VIES), LEI (GLEIF), sanctions screening (EU/OFAC/UN/UK/FR), EORI and domain age, condensed into a pass/review/fail verdict with per-check source, timestamp and an explicit coverage map. Query: country=FR (FR, UK, IE, NO, FI, SK, PL, CZ, CH) and id=552032534 (national registry number). Factual verification, not a credit score. Buyers are never charged on failure. Price: $0.10 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes
leiNo
vatNo
eoriNo
domainNo
countryYes
Behavior5/5

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

With no annotations, the description fully discloses behavior: it checks specific registries and statuses, returns a verdict with per-check sources and coverage map, is factual not credit, and buyers are not charged on failure. It also mentions pricing and query requirements, leaving no ambiguity about its nature.

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

Conciseness4/5

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

Description is informative and packs many details in a few sentences, front-loading the main purpose. It uses clear punctuation and lists. A bit verbose but every sentence adds value; could be slightly more concise.

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

Completeness4/5

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

Given no output schema and no annotations, the description covers purpose, inputs, included checks, verdict structure, pricing, and supported countries. However, it lacks details on the exact return format and any rate limits or authentication needs, which are not critical but would enhance completeness.

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

Parameters3/5

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

Description explains the required parameters (country and id) and mentions LEI, VAT, and domain in the checks, but does not explicitly describe the purpose of optional parameters (lei, vat, eori, domain) in the schema. Schema coverage is 0%, so description partially compensates but leaves gaps.

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

Purpose5/5

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

Description clearly states the tool performs a comprehensive one-call verification of a European company, covering registry, insolvency, VAT, LEI, sanctions, EORI, and domain age, outputting a verdict. It specifies query parameters and distinguishes from sibling tools like check_insolvency_fr and screen_sanctions by being a combined check.

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

Usage Guidelines4/5

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

The description implies this tool is for a broad verification when multiple checks are needed, but does not explicitly state when to use it versus individual sibling tools like lookup_company_fr or validate_vat_eu. However, it provides clear context on what it covers.

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

verify_supplier_frAInspect

One-call due diligence on a French company by SIREN or SIRET: checksum, existence and status (SIRENE), insolvency proceedings (BODACC), VAT validity (VIES) and sanctions screening across EU/OFAC/UN/UK/FR lists, condensed into a risk verdict (low, medium, high or critical) with reasons and a 0-100 score. Query: siren=NNNNNNNNN or siret=NNNNNNNNNNNNNN. Sub-checks degrade gracefully; buyers are never charged on failure. Price: $0.05 USDC per call (x402).

ParametersJSON Schema
NameRequiredDescriptionDefault
numberYes
Behavior4/5

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

No annotations are provided, so the description must cover behavioral traits. It discloses that sub-checks degrade gracefully (resilience), buyers are never charged on failure (cost safety), price ($0.05), and the output is a risk verdict with score. It does not explicitly state it is read-only, but the nature of the tool implies no destructive side effects.

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

Conciseness4/5

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

The description is a single paragraph but is dense and front-loaded with purpose. Every sentence adds value: purpose, sub-checks, input format, graceful degradation, pricing. It is efficient but could be slightly improved with bullet points for readability.

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

Completeness4/5

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

Given the complexity (multiple sub-checks, risk verdict, pricing), the description covers most critical aspects: all sub-checks, graceful degradation, pricing, input format, and output. It does not detail how the risk score is interpreted or the exact structure of the verdict, but it is sufficient for an agent to understand and invoke the tool correctly.

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

Parameters5/5

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

The input schema has only one parameter 'number' with no description (0% coverage). The description adds critical meaning: it specifies that the number should be a SIREN (9 digits) or SIRET (14 digits) and provides the exact format (e.g., siren=NNNNNNNNN). This fully compensates for the schema's lack of documentation.

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

Purpose5/5

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

The description clearly states it performs comprehensive due diligence on a French company using SIREN or SIRET, listing specific checks (checksum, existence, insolvency, VAT, sanctions) and the output (risk verdict with score). This is a specific verb+resource combination that distinguishes it from sibling tools like validate_siret_fr or screen_sanctions.

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

Usage Guidelines4/5

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

The description explicitly says 'One-call due diligence on a French company by SIREN or SIRET' and provides the query format. It implies when to use this tool (when a comprehensive risk assessment is needed) and mentions that sub-checks degrade gracefully with no charge on failure, which is useful guidance. However, it does not explicitly exclude alternatives or state when not to use it.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.