x402 Format Checker
Server Details
IBAN, EU VAT, NIP, REGON, PESEL, email checks. Only $0.001 (0.1 cent) per check via x402 on Base
- Status
- Healthy
- Uptime
- 100.0% over 25 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 7 tools
Each validate_* tool has a clearly distinct target (email, EU VAT, IBAN, Polish NIP, PESEL, REGON), and list_types is unambiguous as a discovery tool. There is no functional overlap that would cause misselection.
All tool names use snake_case with a consistent verb_noun structure: list_types and validate_<identifier>. The convention is predictable across the set.
Seven tools—one discovery tool plus six validators—is well-scoped for a focused format-checking service. Each tool earns its place, with no redundancy or thin coverage.
The surface covers the advertised identifier formats and provides a discovery tool, so most validation workflows are supported. As a general 'format checker,' however, it lacks common formats like phone, URL, or UUID and batch validation, which are minor gaps.
Available Tools
7 toolslist_typesARead-onlyInspect
List the available checks, price, network and payment details (free). Only $0.001 (0.1 cent) per check, paid via x402 in USDC on Base.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so safety is covered. The description adds genuinely useful behavior not in annotations: the cost per check and the payment rail (x402 in USDC on Base). However, it never resolves whether this listing itself is free or paid, which is the one behavioral fact an agent most needs here.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with the content of the listing front-loaded and pricing held to a single clause. The parenthetical '(free)' is the one wasted/confusing fragment, since it sits ambiguously between free and paid.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the burden of telling the agent what comes back, and it does: checks, price, network, and payment details. Annotations cover the read-only profile, so nothing essential about invoking a zero-parameter discovery tool is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero input parameters, so the baseline is 4. The description correctly implies no arguments are needed, and nothing about parameter handling is missing or misleading.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a concrete verb (List) plus the resources returned: available checks, price, network, and payment details. As the only non-validate_* sibling, its discovery role is self-evident from the description. The trailing '(free)' muddies the purpose slightly against the very next sentence about per-check cost.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the enumeration of available checks and the per-check price signal that this is a discovery/cost-check tool to call before spending on validate_* siblings. There is no explicit 'use this when...' statement and no exclusion naming the sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_emailARead-onlyIdempotentInspect
Email address syntax (dot-atom local part, LDH domain; no DNS). Only $0.001 (0.1 cent) per check, paid via x402 in USDC on Base. Returns {type, valid, normalized, reason}; the input is never echoed or stored and personal identifiers are masked.
| Name | Required | Description | Default |
|---|---|---|---|
| value | Yes | String to check, e.g. captain@crewofthecaptain.com |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnly, idempotent, closed-world), and the description layers on material context they cannot express: the $0.001 x402/USDC-on-Base payment requirement, the returned shape {type, valid, normalized, reason}, and the privacy contract that the input is never echoed or stored and PII is masked. An agent knows cost, output, and data-handling behavior before invoking.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, purpose and scope front-loaded, then cost, then return shape and privacy. No sentence is filler — each adds a distinct fact (scope, price, output, data handling).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description supplies the return fields {type, valid, normalized, reason} itself, plus cost and privacy guarantees. For a one-parameter, closed-world, idempotent validator, nothing needed 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single parameter is fully documented in-schema, so the baseline would be 3. The description adds genuine semantics beyond the schema by stating the input is never echoed or stored and that identifiers are masked, which tells the agent how the 'value' parameter is handled. It stops short of noting the 512-char bound, hence 4 rather than 5.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names the exact resource and the exact scope boundary: 'Email address syntax (dot-atom local part, LDH domain; no DNS)'. This distinguishes it instantly from the sibling validators (validate_iban, validate_eu_vat, validate_pl_pesel), which validate entirely different identifier types, and the 'no DNS' clause prevents an agent from assuming deliverability checking.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The syntax-only, no-DNS qualifier is an implicit when-to-use/when-not statement: call this when syntactic well-formedness is enough, not when MX/deliverability matters. It does not explicitly name an alternative tool or state prerequisites/rate limits, so it falls short of the explicit routing seen in a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_eu_vatARead-onlyIdempotentInspect
EU VAT number: per-country format (offline, no VIES); PL also NIP checksum. Only $0.001 (0.1 cent) per check, paid via x402 in USDC on Base. Returns {type, valid, normalized, reason}; the input is never echoed or stored and personal identifiers are masked.
| Name | Required | Description | Default |
|---|---|---|---|
| value | Yes | String to check, e.g. PL5260250274 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover safety (readOnly, idempotent, closed-world), but the description adds genuinely non-obvious traits: paid via x402 in USDC on Base at $0.001 per check, input never echoed or stored, and PII masked. That's real behavioral context beyond the annotations, though the description omits rate limits or failure modes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Compact but crams four distinct concerns (format scope, payment, return shape, privacy) into one telegraphic sentence with semicolons. Front-loads the resource but the payment/privacy clauses feel appended rather than structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description helpfully enumerates the return object shape ({type, valid, normalized, reason}) and covers payment and privacy concerns. It stops short of explaining the 'reason' values or failure semantics, but is largely complete for a single-param validator.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and documents the single 'value' param with an example (PL5260250274), so the description needn't add syntax. It contributes nothing further about parameter handling, making baseline 3 correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States specific verb+resource (validate EU VAT number) and a distinctive scope detail: offline per-country format checks with no VIES lookup, plus Poland-specific NIP checksum. This clearly separates it from siblings like validate_pl_nip and validate_iban.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'offline, no VIES' note implies when this tool is appropriate (fast local format validation) versus a live registry lookup, and the PL/NIP mention hints at overlap with validate_pl_nip. However, no explicit when-to-use/when-not or alternative routing is stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_ibanARead-onlyIdempotentInspect
IBAN: country length + ISO 13616 mod-97 checksum. Only $0.001 (0.1 cent) per check, paid via x402 in USDC on Base. Returns {type, valid, normalized, reason}; the input is never echoed or stored and personal identifiers are masked.
| Name | Required | Description | Default |
|---|---|---|---|
| value | Yes | String to check, e.g. PL61109010140000071219812874 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/idempotent/openWorld annotations, the description discloses the per-call price ($0.001 paid via x402 in USDC on Base), the return shape {type, valid, normalized, reason}, and the data-handling policy (input never echoed or stored, personal identifiers masked). Those are exactly the behavioral facts an agent cannot get from annotations or the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The tool identity is front-loaded as 'IBAN: ...', followed by the algorithm, pricing, return shape, and privacy note in compact semicolon-separated clauses. Dense but every clause carries information; no filler sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description responsibly enumerates the return keys and covers cost and privacy, which is enough to invoke the tool correctly. It stops short of explaining the possible values of `type`/`reason` or any failure/error behavior, so it is not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is a single parameter with 100% schema description coverage including an example, so the schema fully carries the parameter burden. The description adds no syntax, format, or normalization rules for the `value` argument, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('IBAN') plus the exact algorithm (country length + ISO 13616 mod-97 checksum), which is far more precise than a bare 'validate' tool. It does not explicitly distinguish itself from the validator siblings (validate_eu_vat, validate_pl_nip, etc.), relying on the resource name to do that work, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus the sibling validators, nor any prerequisites or exclusions. The only implied usage is that an IBAN is the input, which an agent could infer from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_pl_nipARead-onlyIdempotentInspect
Polish NIP tax id: 10 digits + weighted mod-11 checksum. Only $0.001 (0.1 cent) per check, paid via x402 in USDC on Base. Returns {type, valid, normalized, reason}; the input is never echoed or stored and personal identifiers are masked.
| Name | Required | Description | Default |
|---|---|---|---|
| value | Yes | String to check, e.g. 5260250274 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint, idempotentHint, and closed-world, but the description adds significant behavioral detail: pricing ($0.001 per check paid via x402 in USDC on Base), that the input is never echoed or stored, and that personal identifiers are masked. This goes well beyond the annotations and helps the agent understand cost, privacy, and output behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single tight sentence that front-loads the validation rule, then covers cost, payment mechanism, return shape, and privacy. Every clause earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter validation tool with no output schema, the description tells the agent what is validated, how much it costs, how payment works, what the return shape is, and privacy guarantees. No output schema exists, so explaining the return value is beneficial and included.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single parameter is fully described in the schema (with example). The description does not add syntax or format details beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (validate) and resource (Polish NIP tax id) and gives the exact validation method (10 digits + weighted mod-11 checksum). It is clearly distinguishable from siblings like validate_pl_pesel and validate_pl_regon by naming the specific identifier.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for checking Polish NIP tax IDs but provides no explicit guidance on when to use it versus alternatives such as validate_pl_pesel or validate_eu_vat. There are no exclusions or conditions for selecting this tool over siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_pl_peselARead-onlyIdempotentInspect
Polish PESEL: checksum + encoded birth date and sex. Only $0.001 (0.1 cent) per check, paid via x402 in USDC on Base. Returns {type, valid, normalized, reason}; the input is never echoed or stored and personal identifiers are masked.
| Name | Required | Description | Default |
|---|---|---|---|
| value | Yes | String to check, e.g. 44051401359 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only cover the safety profile (readOnly, idempotent, closed-world). The description goes well beyond them by disclosing the paid access model ($0.001 per check via x402 in USDC on Base), the concrete return shape, and privacy behavior (input never echoed or stored, identifiers masked). These are exactly the operational facts an agent needs before invoking a metered tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences, front-loaded with purpose, then cost/payment, then return shape and privacy. Every clause carries distinct, actionable information with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, and the description compensates by naming the returned fields ({type, valid, normalized, reason}); it also covers cost, payment rail, and data-handling guarantees. For a single-parameter validator, nothing material is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single 'value' parameter, so the schema already documents the input and gives an example. The description adds only tangential information (that the value is not echoed or stored), so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (Polish PESEL) plus exactly what it verifies (checksum, encoded birth date and sex), which an agent can immediately distinguish from validate_pl_nip, validate_pl_regon, or validate_iban. The verb 'checks' is present in substance and the resource is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: use this to validate/parse a Polish PESEL rather than any other identifier type, and the sibling names make the selection fairly obvious. However, the description never explicitly states when to prefer this tool, nor does it give prerequisites or exclusions relative to the other validators.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_pl_regonARead-onlyIdempotentInspect
Polish REGON: 9 or 14 digits + mod-11 checksum. Only $0.001 (0.1 cent) per check, paid via x402 in USDC on Base. Returns {type, valid, normalized, reason}; the input is never echoed or stored and personal identifiers are masked.
| Name | Required | Description | Default |
|---|---|---|---|
| value | Yes | String to check, e.g. 123456785 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare read-only/idempotent/closed-world; the description adds genuinely new operational facts: a concrete cost ($0.001 per check) with the payment rail (x402 in USDC on Base), a guarantee that input is never echoed or stored, and that personal identifiers are masked. These are exactly the behavioral traits annotations cannot convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, front-loaded with the format rule, then pricing, then return/privacy contract. Every clause carries information; nothing is restated padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description supplies the return shape ({type, valid, normalized, reason}), the cost and payment mechanism, and privacy handling, which is everything an agent needs to decide to call it and interpret the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and there is only one parameter, so the schema already carries the baseline. The description nonetheless adds domain semantics the schema lacks — the 9/14-digit forms and mod-11 checksum — telling the agent what a valid 'value' looks like beyond the generic example.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource — validating Polish REGON — and immediately pins down the accepted format (9 or 14 digits with a mod-11 checksum). The domain qualifier 'Polish REGON' cleanly separates it from siblings like validate_pl_nip and validate_pl_pesel without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the format spec and the per-check pricing, but there is no explicit when-to-use or when-not-to-use statement, and no sibling (e.g., validate_pl_nip, validate_pl_pesel) is named as the alternative for other Polish identifiers. An agent must infer the routing.
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.
7 tool updates
- First observed
list_types - First observed
validate_email - First observed
validate_eu_vat - First observed
validate_iban - First observed
validate_pl_nip - First observed
validate_pl_pesel - First observed
validate_pl_regon
Related MCP Connectors
Free EU VAT (VIES) + pan-EU company data (10 registers), payable in EURC/USDC via x402.
x402 paid API tools for AI agents on Base: EU/global registries, crypto, wallet & agent trust.
Payment-backed trust scores for AI agents on Base (ERC-8004). $0.01 per check via x402.
34 pay-per-call AI and data tools over x402; USDC on Base; no API keys.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenancex402 utilities for AI agents on Base: USDC payment verification, wallet risk scores and signed receipts. $0.01 USDC per call via x402.MIT

AfaAgent x402 API Suiteofficial
FlicenseNot gradedqualityFmaintenance43 x402-enabled API tools — DeFi, wallet security, AI/ML, developer tools, SEO. Pay-per-call USDC on Base via x402 protocol.-- AlicenseNot gradedqualityBmaintenancePay-per-call Nigerian phone, bank-account, NIN/BVN and state reference data for AI agents over x402 (USDC), no API key.340 npmMIT
- AlicenseNot gradedqualityBmaintenancePay-per-call checks an AI agent runs before it moves money: token safety verdicts and wallet risk profiles on Base, on-chain payment verification, IBAN/VAT/BIC/LEI/ISIN validation, and live TLS and email-spoofing posture for a domain. Paid in USDC over x402 with no API key or account; the free payment_info tool explains the pricing.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.