check-payment-recipient
Server Details
Check a payment recipient before signing: sanctions, blocklist and anomaly rules. $0.05 via x402.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 4 tools
Each tool has a clearly distinct role: the paid safety check, a free receipt lookup for reconciliation, free capability discovery, and a health check. The only potential overlap—check_payment_recipient producing receipts vs. get_receipt fetching them—is explicitly disambiguated by the paid/free and produce/retrieve distinction.
Three of four tools follow a clean snake_case verb_noun pattern (check_payment_recipient, get_receipt, list_capabilities). 'ping' is a conventional health-check name that breaks the pattern but is unambiguous and idiomatic.
Four tools is well-matched to a narrowly scoped single-purpose service: one billed operation plus the minimal free supporting surface (receipt reconciliation, discovery, health). No tool feels redundant or missing by count.
The lifecycle is covered end to end: discover capabilities, verify availability, run the paid check, and reconcile uncertain outcomes via stored receipts with idempotency support. Minor gaps exist (e.g., no way to enumerate past receipts or batch checks), but agents can work around them with known keys.
Available Tools
4 toolscheck_payment_recipientAInspect
Paid ($0.05, x402 v2 exact): pre-signing safety check of a planned payment. Returns allow / escalate / block with reasons, evidence and a verifiable receipt. Input errors are returned before payment and are never charged. On an uncertain outcome, reuse the same idempotency_key; a replay returns the stored receipt without a new payment.
| Name | Required | Description | Default |
|---|---|---|---|
| asset | Yes | ||
| amount | Yes | Decimal string, never a float. | |
| network | Yes | ||
| purpose | No | ||
| requested_at | Yes | ||
| counterparty_id | No | ||
| idempotency_key | Yes | ||
| recipient_address | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does so unusually well: it discloses the paid cost and protocol, that invalid input is rejected before any charge, the three-valued outcome with attached evidence and receipt, and replay semantics tied to idempotency_key. Cost, failure mode, and retry behavior are exactly the facts an agent cannot infer from 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?
Four tight sentences, front-loaded with the paid-check framing, then output, then error and retry behavior. The parenthetical price and protocol are compressed efficiently; no sentence is filler.
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?
The description covers purpose, outputs, charging, and retry, which is strong for a paid tool with no annotations and no output schema. But with 6 required parameters at 13% schema coverage, an agent still cannot tell what a valid network/asset/requested_at value looks like or how counterparty_id interacts with recipient_address.
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 13% across 8 parameters, so the description must compensate and largely does not: recipient_address, network, asset, requested_at, purpose, and counterparty_id get no meaning at all. Only idempotency_key gains real semantics (reuse on uncertain outcome; replay returns the stored receipt), which is valuable but covers one of eight fields.
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 and resource: a pre-signing safety check of a planned payment, and names the return vocabulary (allow/escalate/block with reasons, evidence, receipt). This is clearly distinguishable from siblings like get_receipt (which fetches a stored result rather than producing a verdict) and ping/list_capabilities.
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?
'Pre-signing' pins the moment of use precisely, and the idempotency sentence tells the agent what to do on an uncertain outcome. It stops short of explicit exclusions or naming a sibling as the alternative when a verdict already exists, so this is clear context rather than full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_receiptAInspect
Free: fetch a stored receipt by receipt_id or idempotency_key. Use it to reconcile an uncertain payment before ever paying again.
| Name | Required | Description | Default |
|---|---|---|---|
| receipt_id | No | ||
| idempotency_key | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the whole burden. It usefully discloses that the call is free and that it is a retrieval (non-mutating), but it stays silent on what happens when neither key is supplied (both parameters are optional), which key wins if both are given, and what the result looks like when no receipt exists. Those are real behavioral gaps for a lookup 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: the first front-loads the operation and cost, the second front-loads the situation that calls for it. Every clause carries information and nothing is repeated from the schema.
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 two-parameter read with no output schema and no annotations, the description covers the essentials: what it does, that it costs nothing, and when to reach for it. The main residual gaps are the both-keys/neither-key behavior and not-found handling, which keep it just under 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?
Schema description coverage is 0%, so the description has to compensate and only partially does: the phrase "by receipt_id or idempotency_key" conveys that the two are alternative lookup modes, which is marginally more than the bare schema. It adds no format, precedence, or both-supplied guidance, and the schema marks neither parameter as required.
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 specific verb and resource ("fetch a stored receipt") plus the two lookup keys, so the agent knows exactly what the tool returns. It never needs to name a sibling because check_payment_recipient, list_capabilities and ping are clearly different operations, but that sibling differentiation is left implicit rather than stated.
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?
"Use it to reconcile an uncertain payment before ever paying again" is a concrete trigger condition and even implies the ordering constraint relative to a pay action. There is no explicit when-not-to-use or named alternative, which keeps it short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_capabilitiesAInspect
Free discovery: price, networks, rule set and list coverage for check_payment_recipient.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations at all, the description carries the full burden of disclosure. It does contribute a genuinely behavioral fact — the call is free — and enumerates the categories of information returned, but it says nothing about side effects (presumably read-only), auth requirements, or the shape of the response, leaving an agent to infer that this is a safe, non-mutating call.
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?
A single compact sentence that front-loads the most decision-relevant token ('Free discovery') and then lists the returned data categories. It is efficient, though the telegraphic style ('rule set and list coverage') is terse enough that an agent may need to consult the schema to know exactly what 'list coverage' means.
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?
There is no output schema and no annotations, so the description must alone convey what comes back; it does so only at the category level (price, networks, rule set, list coverage) without structure or format. For a zero-parameter discovery tool this is adequate to decide to call it, but not to anticipate the response.
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?
The tool takes zero parameters, so there is no parameter semantics to explain and the baseline is 4. The description correctly implies a parameterless call by framing the tool as a catalogue of capabilities rather than a query.
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 names the resource precisely — price, networks, rule set and list coverage — and ties it explicitly to the sibling tool check_payment_recipient, so an agent can see this is the metadata/discovery endpoint for that tool. The only weakness is that the verb is expressed as 'discovery' rather than 'list/retrieve', but the intent is unambiguous against the siblings (check_payment_recipient, get_receipt, ping).
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 word 'Free' implies this should be called before the presumably paid check_payment_recipient, which is useful routing signal, and naming the sibling product establishes the relationship. However, no explicit when-to-use/when-not statement or ordering instruction ('call this first') is given, so the guidance is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pingBInspect
Free health check.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full disclosure burden; "Free" is a genuine behavioral signal implying no cost or quota consumption, which is useful and not derivable from the schema. It still omits what a successful versus failed check looks like and whether the call has side effects, so the burden is only partly met.
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 words, front-loaded, with zero waste — appropriate sizing for a no-argument probe. The cost is that the terseness edges into under-specification rather than being maximally informative.
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?
This is a trivial zero-parameter tool with no output schema, so the description does not need to explain parameters. It should still say what the check returns (e.g., pong/ok or an error) and whether it validates auth, since without an output schema the return shape is undocumented everywhere.
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?
The tool takes zero parameters, so there is nothing for the description to disambiguate; baseline 4 applies. The schema is closed (additionalProperties: false) and empty, so no parameter meaning is missing.
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?
"Free health check" tells the agent this is a liveness/availability probe, and paired with the name "ping" the intent is inferable. However, it does not name a verb+resource or state what is being health-checked (server, auth, quota), and it does not distinguish itself from siblings like list_capabilities, which could also serve as a connectivity test.
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 call this versus the siblings, no mention of prerequisites, and no exclusions. The agent must infer that this is the pre-flight/connectivity check, which is a reasonable convention but is not stated anywhere in the description.
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.
4 tool updates
- First observed
check_payment_recipient - First observed
get_receipt - First observed
list_capabilities - First observed
ping
Related MCP Connectors
Screen a party vs OFAC, EU and UK sanctions lists before paying. $0.02/call via x402.
Verify x402 payment endpoints before an AI agent pays: scam scan, on-chain checks, trust scores.
Check a payee before your agent pays: sanctions, lookalike domains, payment details, invoice fraud.
Checks before an agent pays: payees, webshops, invoices, payment files, companies, sanctions, PEP.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceProvides a pre-signature payment-risk verdict (GO/HOLD/STOP) for x402 payments based on counterparty reputation, price anomaly, and OFAC sanctions.-
- AlicenseNot gradedqualityFmaintenanceArchived and no longer maintained. Tools and prices shown here are out of date. Use the maintained server: glama.ai/mcp/servers/OceanAlt666/oceanalt-aml-mcp (GitHub: OceanAlt666/oceanalt-aml-mcp).115 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
- FlicenseNot gradedqualityFmaintenanceProvides counterparty risk checks for any EVM address, returning malicious-history flags, tiered risk scoring, and plain-language summaries via x402 payment.-
Glama MCP Gateway
Add one secure layer between your agents and this server.