Skip to main content
Glama

Countersign check

countersign_check
Read-onlyIdempotent

APEX Countersign: check a stablecoin payment before you send it, on Base, Ethereum, Arc, BNB Chain, Solana or X1. Reads the OFAC SDN list (from US Treasury), USDC/USDT issuer freezes on chain, the official stablecoin contract, EIP-55 checksum and burn addresses, lookalikes of payees you already pay, and on Arc the poison index of USDC transfers since 27 Oct 2026. Answers ALLOW / REVIEW / DENY / COULD_NOT_READ with every check and its source, EIP-712 signed; an unread source is never ALLOW. Pass requirement to check an x402 402 response as it arrived. 20 free a day, then $0.005 over x402 (pass payment). With a Countersign key (plans from $9/month at https://apexfaucet.xyz/countersign/) your approved payee book, caps and review queue apply and the check goes into your signed audit log.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "countersign_check"
  }
}

Input Schema

NameRequiredDescriptionDefault
keyNooptional: your Countersign key (csk_...) to apply your account rules and log
assetNooptional: the token contract being paid
chainNobase, ethereum, arc, bnb, solana or x1 (x402 network ids like eip155:8453 work)
knownNooptional: comma-separated payees you already pay (a lookalike of one is DENY)
payToNothe address you are about to pay (0x on EVM chains, base58 on Solana/X1)
payerNooptional: your paying wallet
amountNooptional: amount in the asset units (dollars for a stablecoin)
paymentNooptional: a signed x402 payment (base64, as in PAYMENT-SIGNATURE) once the free checks are used up
requirementNooptional: the x402 402 JSON body or base64 PAYMENT-REQUIRED header, as received; pass chain too (the chain you will pay on); payTo, asset and amount are then read from it

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the supplied readOnly/idempotent/non-destructive annotations, the description discloses the data sources (OFAC SDN, issuer freezes, EIP-55, burn addresses, poison index), the fail-closed rule that 'an unread source is never ALLOW', the EIP-712 signing of results, and the rate limit (20 free/day then $0.005 via x402). It also explains what a key unlocks (payee book, caps, review queue, audit log). This is exactly the behavioral context annotations cannot carry.

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?

Purpose, sources, verdicts, and pricing are front-loaded in a single dense paragraph with little filler. The closing promotional aside (plans from $9/month with a URL) is the one sentence that leans marketing rather than operational guidance, and the paragraph form makes the x402/requirement workflow harder to scan than a short bulleted split.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

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 explaining results and does so by naming the four verdicts and the per-check source attribution plus signature. It does not describe the response envelope or field layout, so an agent knows what the answer means but not its exact shape. For a read-only, open-world check tool this is close to complete but not fully.

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 description coverage is 100%, so the baseline is 3; the description still adds cross-parameter meaning the schema lacks, notably that passing 'requirement' causes payTo, asset and amount to be read from the 402 body and that chain must still be supplied. It also ties 'payment' to the exhaustion of free checks, which the schema's 'once the free checks are used up' phrasing supports but the description contextualizes.

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 a stablecoin payment before you send it'), enumerates the supported chains and the exact source set consulted, and names the possible outcomes (ALLOW/REVIEW/DENY/COULD_NOT_READ). An agent can distinguish this from generic siblings such as arc_payment_check or sanctions_check because the checks it bundles are spelled out.

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?

The trigger condition is explicit ('before you send it') and there is a second documented usage mode ('Pass requirement to check an x402 402 response as it arrived'). Pricing and key-gated behavior tell the agent when the paid path applies. It does not name a sibling alternative or say when NOT to use it, so it stops 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.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.