Skip to main content
Glama

Server Details

Verify a supplier's identity and VAT via the Irish CRO and EU VIES before paying. Pay per call with x402 USDC on Base.

Ownership verified
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

B3.4/5.0

Scored across 2 tools

Disambiguation5/5

The two tools are cleanly separated by action and intent: get_verification is a read of an existing result, while verify_supplier_payment is a submit-time action. There is no plausible overlap or risk of misselection, and the descriptions reinforce the read-vs-submit distinction.

Naming Consistency4/5

Both names use snake_case and follow a verb_noun shape, which is readable and predictable overall. There is a minor inconsistency in that one uses the generic verb 'get' while the other uses a domain-specific verb and embeds its entity ('verify_supplier_payment').

Tool Count3/5

Two tools is on the thin side for a verification service: submit and fetch a single result is a minimal but valid surface. It lacks breadth (listing, status checks, cancellation), so the count sits at borderline rather than well-scoped.

Completeness3/5

The core lifecycle of verify-then-retrieve is covered, but there is no way to list or enumerate verifications for a tenant, and no update/retry/delete operations. Agents hitting a 'which verifications exist?' or re-check scenario would run into a dead end.

Available Tools

2 tools
get_verificationBInspect

Retrieve a verification result belonging to the authenticated tenant.

Requires the verification.read scope.

ParametersJSON Schema
NameRequiredDescriptionDefault
verification_idYes

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It usefully discloses the required auth scope (verification.read) and tenant scoping, but says nothing about behavior for unknown IDs, IDs from other tenants, or that this is a non-mutating read. Some genuine value added, but a significant gap for a zero-annotation tool.

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?

Two short sentences with the core action front-loaded; the template indentation is cosmetically noisy but adds no wasted content. Efficient, though it could have used the second sentence for more than just the scope requirement.

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?

For a single-param read tool with no output schema, the description should indicate what a 'verification result' contains (status, timestamps) and state that it is a non-mutating read. It conveys the tenant boundary and scope but leaves the return shape and read-only nature implicit.

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?

Schema description coverage is 0% and there is one parameter, verification_id. The description never explains where the ID comes from, its format, or whether it must be one this tenant owns; 'belonging to the authenticated tenant' only faintly implies scoping. It fails to compensate for the schema gap.

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?

States a specific verb ('Retrieve') and resource ('a verification result'), scoped to the authenticated tenant, so an agent can distinguish this read from the write-oriented sibling verify_supplier_payment. It stops short of naming that sibling or explicitly contrasting the two, which keeps it at 4 rather than 5.

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?

Usage is implied by the resource ('verification result') and the tenant scoping, but there is no statement of when to call this versus verify_supplier_payment, nor any prerequisite such as needing a verification to exist first. Adequate context, no explicit alternatives or exclusions.

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

verify_supplier_paymentBInspect

Verify a supplier's identity and VAT registration and return the advisory decision.

    Identity registry checks are routed to the Irish CRO for IE only. VAT is verified
    independently through EU VIES. Requires the verification.submit scope.

    transaction, customer_assertions and payment_destination are only evaluated when
    payment checks are enabled on the service; otherwise they may be omitted.
    
ParametersJSON Schema
NameRequiredDescriptionDefault
callbackNo
evidenceNo
metadataNo
supplierYes
policy_idYes
request_idYes
transactionNo
requested_atNo
schema_versionYes
customer_assertionsNo
payment_destinationNo

TDQS

B3.4/5.0
Behavior4/5

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

With no annotations the description carries the full burden, and it delivers meaningful disclosure: the required verification.submit auth scope, that identity registry checks are routed to the Irish CRO for IE only, that VAT is verified through EU VIES, and that several fields are conditionally evaluated. It omits side effects (whether a verification record is persisted), failure behavior, and idempotency, which keeps it short of 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.

Conciseness4/5

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

Three short paragraphs with the core purpose front-loaded, followed by routing/scope facts and then the conditional-field note. Every sentence carries information and there is no filler, though the dense conditional sentence could be tightened slightly.

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?

For an 11-parameter, no-annotation, no-output-schema tool, the description covers routing, auth and conditional fields but is silent on the meaning of the required envelope parameters, on side effects, and on what the returned 'advisory decision' contains. It is minimum viable rather than complete.

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?

Schema description coverage is 0% across 11 parameters, so the description must compensate. It explains the conditional evaluation of only three fields (transaction, customer_assertions, payment_destination) and leaves the remaining eight, including the required schema_version, request_id, policy_id and the supplier object, entirely unexplained.

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?

States a specific verb and resource: 'Verify a supplier's identity and VAT registration and return the advisory decision.' An agent knows what the tool does, but the description never distinguishes it from the sibling get_verification, so the 5-tier requirement of sibling differentiation is unmet.

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?

It discloses operational conditions ('Requires the verification.submit scope', IE-only CRO routing, payment fields only evaluated when payment checks are enabled), which is useful context. However, it never tells the agent when to pick this tool over get_verification, so it remains implied usage rather than explicit guidance.

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. 2 tool updates
    • First observedget_verification
    • First observedverify_supplier_payment

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
    16
    11 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources