Skip to main content
Glama

Server Details

Offline check-digit validation for IBAN, BIC, EU VAT, GTIN/EAN/UPC and ISBN. Format check only.

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

TDQS

A4.5/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have completely distinct purposes: get_meta returns service metadata while validate_code performs validation on a supplied identifier. There is no plausible way to confuse them, and each description clearly states scope and limitations.

Naming Consistency5/5

Both names follow a clean snake_case verb_noun pattern (get_meta, validate_code). The convention is consistent and predictable across the entire surface.

Tool Count4/5

Two tools is thin, but the server's scope is narrow — exposing a validation engine plus its metadata — so each tool clearly earns its place. A batch or multi-code validation variant would round out the surface, but nothing here is redundant.

Completeness4/5

The surface covers metadata discovery and one-shot validation across all advertised identifier types (IBAN, BIC, VAT, GTIN, ISBN), which is the core domain. Minor gaps exist: no batch validation and no check-digit generation, though agents can work around these by calling validate_code repeatedly.

Available Tools

2 tools
get_metaService version, supported formats and limitsA
Read-onlyIdempotent
Inspect

Return the service version and build, supported IBAN and VAT countries, GTIN formats, the disclaimer and the current limits. Does not count as a check. Read-only. Same data as GET /v1/meta.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
bicNo
vatNo
gtinNo
ibanNo
buildNo
limitsNo
privacyNo
serviceYes
versionYes
endpointsNo
disclaimerNo

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so safety is covered. The description adds two things annotations do not: the billing/quota semantics ('does not count as a check') and endpoint parity ('Same data as GET /v1/meta'). No pagination or caching notes, but nothing is needed for a static metadata read.

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 short sentences, front-loaded with the return payload, then the quota caveat, then the REST equivalence. Every sentence carries distinct information; no filler.

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?

An output schema exists, so return value structure need not be described; annotations carry the safety profile; there are no parameters. The description adds the two non-structured facts an agent would otherwise guess at (no quota cost, REST parity), leaving no meaningful gap.

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?

Zero parameters, so there is nothing to document and the baseline of 4 applies. The description correctly stays silent on inputs rather than inventing semantics.

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?

Specific verb+resource ('Return the service version and build') followed by a concrete enumeration of what is returned: supported IBAN/VAT countries, GTIN formats, disclaimer, limits. The clause 'Does not count as a check' explicitly differentiates it from the sibling validate_code, so an agent can pick correctly without opening either schema.

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?

'Does not count as a check' tells the agent this call is free of validation-quota implications, which implicitly routes validation work to validate_code and metadata lookups here. Clear context, but there is no explicit when-to-use/when-not statement beyond that single differentiator.

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

validate_codeValidate an IBAN, BIC, EU VAT number, GTIN/EAN/UPC or ISBNA
Read-onlyIdempotent
Inspect

Check the format and check digits of one identifier: IBAN (ISO 13616, per-country length and layout), BIC/SWIFT (ISO 9362 format and country), EU VAT number (offline checksum, VIES not queried), GTIN/EAN-8/UPC-A/EAN-13/GTIN-14 (GS1 mod 10) or ISBN-10/13. type "auto" (default) detects the type from the shape. Returns valid, a reason when invalid (e.g. the expected check digit), and normalized/formatted forms. Format check, not a compliance check: valid does not mean the account, registration or product exists. The code is sent in a POST body and not stored or logged. Read-only. Same engine, keys and limits as POST /v1/{type}.

ParametersJSON Schema
NameRequiredDescriptionDefault
codeYesThe identifier to check, e.g. "DE89 3704 0044 0532 0130 00", "ATU13585627", "4006381333931" or "978-0-306-40615-7". Spaces, hyphens and dots are ignored. Max 64 characters.
typeNoauto (default), iban, bic, vat, gtin or isbn.

Output Schema

ParametersJSON Schema
NameRequiredDescription
bbanNo
sepaNo
typeNo
ean13No
inputYes
validYes
formatNo
isbn10No
isbn13No
numberNo
reasonNo
countryNo
checksumNo
bank_codeNo
formattedNo
candidatesNo
normalizedNo
check_digitNo
detected_asNo
check_digitsNo
country_nameNo
vies_checkedNo
expected_check_digitNo

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false; the description reinforces this and adds genuinely new disclosure — the code is sent in a POST body and not stored or logged, VIES is not contacted, and the same engine/keys/limits as POST /v1/{type} apply. It stops short of describing rate limits or latency concretely, hence 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.

Conciseness4/5

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

Front-loaded with the resources and supported formats, then caveats and privacy. Dense and mostly value-adding, though the long parenthetical format list is slightly heavy for a single paragraph.

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?

An output schema exists, yet the description still notes the returned fields (valid, reason, normalized/formatted forms), and it pre-empts the main misuse risk (format vs. existence) plus the privacy question. 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.

Parameters4/5

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

Schema coverage is 100% (baseline 3), but the description adds real meaning beyond the enum: 'auto' detects the type from the shape, and normalization notes (spaces/hyphens/dots ignored) plus a 64-char cap align with the code parameter. The added signal is modest but useful.

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 (check/validate) and enumerates exactly which identifier standards it covers (IBAN ISO 13616, BIC ISO 9362, EU VAT, GS1 GTIN family, ISBN-10/13) with the detection mode. An agent can tell precisely what this tool does and does not validate 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.

Usage Guidelines4/5

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

Gives clear scoping conditions: 'Format check, not a compliance check', 'VIES not queried', and the auto-detect default. It does not name an alternative tool, but the only sibling (get_meta) is unrelated, so no meaningful routing ambiguity remains.

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_meta
    • First observedvalidate_code

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Validates and converts ISBN-10 and ISBN-13 numbers offline, checking check digits and supporting conversion between formats.
    14 npm
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Verified validation of structured identifiers — IBAN, payment cards, ISBN-13 and VIN — for AI agents. Runs the real checksum algorithms (mod-97, Luhn, mod-10, ISO 3779) instead of letting the model guess, and returns structured results with clear errors.
    4
    30 npm
    Apache 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Provides a Luhn check-digit validation tool for numeric strings such as credit cards, IMEI, and national IDs.
    22 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources