Skip to main content
Glama

Agent Data Tools: Compliance and checks

VAT number validation, EU VIES

vat_validate
Read-only

Check an EU VAT number against the European Commission's VIES service: valid or not, and the registered company name and address where the member state shares them, with the check time. Accepts the number with its country prefix in any spacing (SE556703748501, DE 123 456 789, GR or EL for Greece, XI for Northern Ireland). Use to verify a B2B customer before invoicing without VAT, or to confirm a supplier. Example: vat=SE556703748501. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input Schema

NameRequiredDescriptionDefault
vatYesVAT number with its 2-letter EU country prefix

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the annotations: it discloses output content and its limits ('where the member state shares them, with the check time'), pricing and billing behavior ($0.01/call, 25 free, failed calls free, repeats not free), and explicitly reconciles with the safety hints by stating it 'reads or computes only and changes nothing.' The per-call charge also explains the idempotentHint=false, so the agent understands repeats incur cost.

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

Conciseness4/5

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

Front-loaded with purpose and return shape, then format rules, then usage, then billing. Dense but nearly every clause carries information; the pricing sentence is long, though it is the only place cost behavior is documented.

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 one-parameter, no-output-schema tool, the description covers what it returns, acceptable input formats, when to use it, and cost/rate behavior. Nothing an agent needs to call it correctly is missing.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds real meaning the schema lacks: prefix required but spacing free, worked examples, the GR/EL Greek alias, and XI for Northern Ireland. These are exactly the input-format edge cases that would otherwise cause failed calls.

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

Purpose5/5

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

States a specific verb and resource ('Check an EU VAT number against the European Commission's VIES service') and enumerates the return payload (validity, registered company name/address where shared, check time). This clearly separates it from siblings like lei_lookup, check_counterparty, or company, which cover different 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?

Gives concrete usage contexts: 'verify a B2B customer before invoicing without VAT, or to confirm a supplier.' That is clear when-to-use guidance, but it names no alternative for the adjacent needs (e.g. check_counterparty for broader entity screening) and states no exclusions such as non-EU numbers.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources