_ registry / mcp + a2a streamable-http · checked 1h ago

code402

https://api.code402.dev

Registry code: 508b0de3a08259e6

api record

Code402 provides scoped checks through HCRB. 73 tools are currently advertised; the default card lists the 24 core ones (add ?catalog=experimental for the advertised full set). Read each tool's input schema and limitations before use. Where a signed XDR-1 receipt is returned, verify the expected signer and request/result binding; an absent receipt is not verified evidence. A valid signature does not independently establish ownership, authorization, settlement or delivery. Discovery and eligible free calls need no manually configured API key. Paid calls require an x402-capable client, a…

endpoint
https://api.code402.dev/mcp
door code
ac0a17441885754b
protocol
streamable-http ·2025-06-18
authentication
none observed
public key
none — nobody has proven they own this listing · is it yours? claim it
karma
0 · newcomer
_ is it live, free and safe measured by this hub
Is code402 live?
Yes — it answered the hub's last check (checked 1h ago). It answered 100% of checks over the last 30 days.
Is code402 free to use?
No — it charges per call, from 0.005 USDC, quoted in its own 402 answers.
What tools does code402 have?
24 tools: clean_markdown_scraper, iban_check, block_info, vat_mod97_check, crypto_ticker, calculate_fx_savings, fx_spot_price_oracle, context_distill, ….
Is code402 safe to connect?
The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
reachable
live
uptime, 30 days
100%

90 days 100%· all time 100%

latency
134ms

last good check

priced tools
23

of 24 tools

_ answered our checks, 90 days 2 checks · signed record
  • unknown → live
  • unknown → live
_ usage and payments 30 days

Calls placed through this hub's router, from its own receipts, and USDC settlements on base into the address this listing's priced doors name, read off the chain. Every caller and every payer counts the same; the chain total is counted from three payers. The address also stands behind 4 other origins: the chain figures are the gateway's, not this listing's alone. How it is counted.

accounts
0

through this hub

calls served
0

successful

paid through this hub
0 USDC

what callers paid

payers on base
6

distinct

settlements
2,651

last 2026-10-15

received on chain
8.867 USDC

concentrated, shared-payto

_ what it can do 24 tools
23 paid 1 never probed 23 of 24 classified

Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.

  • iban_check paid never probed

    Validate IBAN structure and MOD-97 checksum. Does not establish account ownership, beneficiary identity or absence of fraud.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "iban": "GB82 WEST 1234 5698 7654 32"
        }
      ],
      "required": [
        "iban"
      ],
      "properties": {
        "iban": {
          "type": "string",
          "description": "IBAN to validate; spaces allowed."
        }
      }
    }
    arguments 17 lines
  • block_info 0.01 USDC paid 1h ago

    Base block header: number, timestamp, transaction count and base fee for the latest or a given block. Result carries a signed receipt.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "block": "latest"
        }
      ],
      "required": [],
      "properties": {
        "block": {
          "type": "string",
          "description": "Block number as hex (0x…) or decimal, or a tag (latest/earliest/pending/finalized/safe); defaults to latest."
        }
      }
    }
    arguments 15 lines
  • vat_mod97_check paid never probed

    Check the supported Belgian VAT format and MOD-97 checksum. BE only; not VIES, other EU VAT formats, registration status or tax compliance.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "vat_number": "BE0417497106"
        }
      ],
      "required": [
        "vat_number"
      ],
      "properties": {
        "vat_number": {
          "type": "string",
          "description": "Belgian VAT id in the supported BE mod-97 format (BE prefix optional); not a VIES lookup."
        }
      }
    }
    arguments 17 lines
  • crypto_ticker paid never probed

    Spot USD price for a crypto ticker or CoinGecko id from public price feeds, cached 60 s. Result carries a signed receipt.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "symbol": "btc"
        }
      ],
      "required": [
        "symbol"
      ],
      "properties": {
        "symbol": {
          "type": "string",
          "description": "Ticker symbol (btc, eth, sol, …) or a CoinGecko asset id (bitcoin, ethereum, …)."
        }
      }
    }
    arguments 17 lines
  • calculate_fx_savings 0.005 USDC paid 1h ago

    Arithmetic comparison of a USDC settlement against comparator percentages YOU supply (bank_fee_pct, custodial_fee_pct) across 14 global fiat currencies. The comparators are assumptions, not measurements of any bank or provider; no protocol fee is deducted on this rail.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "currency": "BRL",
          "amount_usdc": 50000
        }
      ],
      "properties": {
        "amount": {
          "type": "number",
          "description": "Gross invoice settlement volume in USD/USDC (alias)."
        },
        "currency": {
          "type": "string",
          "description": "Target currency for local comparison (e.g. EUR, GBP, BRL, INR, ARS, PHP, NGN, SGD)."
        },
        "amount_usd": {
          "type": "number",
          "description": "Gross invoice settlement volume in USD/USDC (alias)."
        },
        "amount_usdc": {
          "type": "number",
          "description": "Gross invoice settlement volume in USD/USDC."
        }
      }
    }
    arguments 27 lines
  • fx_spot_price_oracle paid never probed

    Reference fiat and stablecoin conversion rate from a static table, not a live feed. Returns rate and inverse; result carries a signed receipt.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "base": "EUR",
          "quote": "USD"
        }
      ],
      "required": [
        "base",
        "quote"
      ],
      "properties": {
        "base": {
          "type": "string",
          "description": "Base currency symbol (e.g. USDC, EUR, GBP, JPY)."
        },
        "quote": {
          "type": "string",
          "description": "Quote currency symbol (e.g. USD, EUR, JPY)."
        }
      }
    }
    arguments 23 lines
  • context_distill paid never probed

    Deterministic text digest: word count, top-5 most frequent meaningful words (stop words excluded), first sentence, and a keccak-256 content hash. Pure function — no external calls, no ML.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "text": "The landlord demanded the deposit before the viewing. The deposit was paid before any viewing of the property."
        }
      ],
      "required": [
        "text"
      ],
      "properties": {
        "text": {
          "type": "string",
          "description": "Arbitrary text to distill (any length; hashing is over the exact input)."
        }
      }
    }
    arguments 17 lines
  • vendor_onboarding_pack paid never probed

    Check supplied IBAN, LEI, Belgian VAT and UK company-number fields in one result. Structural checks only; no ownership, registry or fraud clearance.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "lei": "529900T8BM49AURSDO55",
          "iban": "GB82 WEST 1234 5698 7654 32",
          "vat_number": "BE0417497106",
          "company_number": "12345678"
        }
      ],
      "required": [],
      "properties": {
        "lei": {
          "type": "string",
          "description": "Vendor LEI (optional)."
        },
        "iban": {
          "type": "string",
          "description": "Vendor IBAN (optional)."
        },
        "vat_number": {
          "type": "string",
          "description": "Vendor VAT number, BE mod-97 (optional)."
        },
        "company_number": {
          "type": "string",
          "description": "Vendor UK company number (optional)."
        }
      }
    }
    arguments 30 lines
  • batch_validate paid never probed

    Run up to 50 supported {tool, value} checks in one request. Each result states its scope. Compare the current batch quote with individual quotes; savings depend on batch size.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "items": [
            {
              "tool": "iban-check",
              "value": "GB82 WEST 1234 5698 7654 32"
            },
            {
              "tool": "lei-check",
              "value": "529900T8BM49AURSDO55"
            },
            {
              "tool": "vat-mod97-check",
              "value": "BE0417497106"
            }
          ]
        }
      ],
      "required": [
        "items"
      ],
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "tool",
              "value"
            ],
            "properties": {
              "tool": {
                "enum": [
                  "iban-check",
                  "lei-check",
                  "vat-mod97-check",
                  "company-number-format",
                  "swift-bic-check",
                  "aba-routing-check",
                  "ein-format-check",
                  "ifsc-check",
                  "abn-check",
                  "luhn-check",
                  "isbn-check",
                  "e164-check",
                  "sedol-check",
                  "isin-check",
                  "ean13-check",
                  "gstin-check",
                  "context-distill"
                ],
                "type": "string",
                "description": "which validator to run"
              },
              "value": {
                "type": "string",
                "description": "the identifier (or text, for context-distill) to check"
              }
            }
          },
          "maxItems": 50,
          "minItems": 1,
          "description": "List of {tool, value} checks (max 50)."
        }
      }
    }
    arguments 68 lines
  • check_price paid never probed

    Instant zero-cost pricing hook for code402 tools. Returns the live price, an opaque quote_id, TTL, and the settlement URL. Free forever — feeds the price index into an agent planner's context without creating any financial obligation. If the planner acts on the quote, it hits the settlement_url with an EIP-3009 signed voucher.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "tool": "iban-check",
          "amount": 1
        }
      ],
      "required": [
        "tool"
      ],
      "properties": {
        "tool": {
          "type": "string",
          "description": "Target tool name (e.g. 'iban-check', 'vendor-onboarding-pack')"
        },
        "amount": {
          "type": "number",
          "description": "Optional batch count or volume units (default 1)"
        }
      }
    }
    arguments 22 lines
  • receipt_verify paid never probed

    Verifies a signed XDR-1 receipt from ANY x402 service: recomputes the canonical digest and recovers the signer, then compares it to the declared signer. Free forever — no account, no quota, no storage (stateless). A valid receipt proves the signer signed that tool call at that timestamp; it does NOT prove funds moved or any business claim.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "receipt": {
            "v": "XDR-1",
            "ts": 0,
            "tier": "free",
            "tool": "iban-check",
            "nonce": "0x…",
            "payer": "0xc59c85e661d34084a7769f955d17fd38254a6235",
            "amount": "0",
            "signer": "0xa036e2e3e19c6d02f30b3a9eb0acd057e6d9a5c8",
            "recipient": "0xc59c85e661d34084a7769f955d17fd38254a6235",
            "signature": "0x…",
            "input_hash": "0x…",
            "output_hash": "0x…",
            "tool_version": "1"
          }
        }
      ],
      "required": [
        "receipt"
      ],
      "properties": {
        "receipt": {
          "type": "string",
          "description": "The full XDR-1 receipt object: v, tool, tool_version, input_hash, output_hash, payer, recipient, amount, nonce, ts, tier, signer, signature (optional successor/stream_state)."
        }
      }
    }
    arguments 31 lines
  • tx_activity paid never probed

    Outbound transaction count (nonce) and contract-or-EOA check for an address on Base. Result carries a signed receipt.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "address": "0xc59c85e661d34084a7769f955d17fd38254a6235"
        }
      ],
      "required": [
        "address"
      ],
      "properties": {
        "address": {
          "type": "string",
          "description": "EVM address, 0x-prefixed."
        }
      }
    }
    arguments 17 lines
  • india_supplier_check paid never probed

    One call, one receipt: GSTIN + PAN + UPI VPA + IFSC for an Indian counterparty. Four deterministic structural checks, each stating its own scope. Built for cross-border procurement where the buyer is an agent that cannot open an INR account.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "pan": "AAACP1234M",
          "vpa": "merchant@okhdfcbank",
          "ifsc": "HDFC0001234",
          "gstin": "27AAPFU0939F1ZV"
        }
      ],
      "required": [],
      "properties": {
        "pan": {
          "type": "string",
          "description": "PAN (10 chars, optional)"
        },
        "vpa": {
          "type": "string",
          "description": "UPI VPA handle (optional)"
        },
        "ifsc": {
          "type": "string",
          "description": "IFSC bank code (optional)"
        },
        "gstin": {
          "type": "string",
          "description": "GSTIN (15 chars, optional)"
        }
      }
    }
    arguments 30 lines
  • gstin_check paid never probed

    Validate an Indian GSTIN by structure (2-digit state code + PAN + entity code + 'Z') and its mod-36 cross-sum checksum.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "gstin": "27AAPFU0939F1ZV"
        }
      ],
      "required": [
        "gstin"
      ],
      "properties": {
        "gstin": {
          "type": "string",
          "description": "15-character Indian Goods and Services Tax Identification Number."
        }
      }
    }
    arguments 17 lines
  • ifsc_check paid never probed

    Check the 11-character Indian IFSC format, including its fifth-character zero. No bank-branch registry lookup or account verification.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "ifsc": "HDFC0000123"
        }
      ],
      "required": [
        "ifsc"
      ],
      "properties": {
        "ifsc": {
          "type": "string",
          "description": "11-character Indian Financial System Code."
        }
      }
    }
    arguments 17 lines
  • token_contract_risk paid never probed

    Deterministic Base contract facts: ERC-20 metadata, proxy slots, owner(), privileged-function selectors and flags. Not a safety verdict. Result carries a signed receipt.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"
        }
      ],
      "required": [
        "address"
      ],
      "properties": {
        "chain": {
          "enum": [
            "base"
          ],
          "type": "string",
          "description": "Optional. Only 'base' (Base mainnet) is supported."
        },
        "address": {
          "type": "string",
          "description": "Contract address on Base, 0x + 40 hex."
        }
      }
    }
    arguments 24 lines
  • instant_json_schema_verifier paid never probed

    Validate JSON data payloads against schema definitions. Preflighted for agent tool call pipelines.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "data": {
            "name": "Apex Agent",
            "version": 2
          },
          "schema": {
            "required": [
              "name",
              "version"
            ],
            "properties": {
              "name": {
                "type": "string"
              },
              "version": {
                "type": "number"
              }
            }
          }
        }
      ],
      "required": [
        "data",
        "schema"
      ],
      "properties": {
        "data": {
          "type": "object",
          "description": "The JSON data object to validate against the schema."
        },
        "schema": {
          "type": "object",
          "description": "The JSON schema object with expected properties and types."
        }
      }
    }
    arguments 39 lines
  • lei_check paid never probed

    Validate a 20-character LEI and MOD-97 check digits. No registry lookup, active-registration check or legal-entity identity verification.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "lei": "529900T8BM49AURSDO55"
        }
      ],
      "required": [
        "lei"
      ],
      "properties": {
        "lei": {
          "type": "string",
          "description": "20-character Legal Entity Identifier."
        }
      }
    }
    arguments 17 lines
  • pre_disbursement_guard paid never probed

    Evaluate supplied identifiers, domain-age evidence and mismatch signals. Requires a preceding receipt hash. An advisory result is not verified identity, fraud clearance or authorization to release funds.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "vendor_domain": "[email protected]",
          "company_number": "01234567",
          "recipient_iban": "GB82WEST12345698765432",
          "declared_country": "GB",
          "invoice_amount_usd": 4500
        }
      ],
      "required": [],
      "properties": {
        "lei": {
          "type": "string",
          "description": "ISO 17442 Legal Entity Identifier (optional)."
        },
        "vat_number": {
          "type": "string",
          "description": "EU VAT number (optional)."
        },
        "vendor_domain": {
          "type": "string",
          "description": "Vendor website domain or invoicing email address (optional)."
        },
        "company_number": {
          "type": "string",
          "description": "Official corporate registration number, e.g. UK Companies House 8 digits/chars (optional)."
        },
        "recipient_iban": {
          "type": "string",
          "description": "Recipient bank IBAN (optional)."
        },
        "declared_country": {
          "type": "string",
          "description": "2-letter ISO country code where vendor claims to be registered (optional, e.g. 'GB', 'US', 'DE')."
        },
        "physical_address": {
          "type": "string",
          "description": "Vendor physical office address (optional)."
        },
        "invoice_amount_usd": {
          "type": "number",
          "description": "Disbursement transaction amount in USD (optional)."
        }
      }
    }
    arguments 47 lines
  • sanctions_address_screen paid never probed

    Exact EVM-address comparison against the identified address snapshot and existing operator block policy. Current legal status is unknown; is_sanctioned is null. valid=false preserves a local block; valid=null never authorizes a transaction. Names are not screened. Missing, stale or incomplete evidence is explicit; no UN/EU coverage or sanctions clearance is provided.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "subject": "0x7f367cc41522ce07553e823bf3be79a889debe1b"
        }
      ],
      "required": [
        "subject"
      ],
      "properties": {
        "subject": {
          "type": "string",
          "description": "EVM address (0x...) or ISO 3166-1 country code / jurisdiction name"
        }
      }
    }
    arguments 17 lines
  • balance_check paid never probed

    Native ETH and one ERC-20 balance (default USDC) for an address on Base, raw and formatted. Result carries a signed receipt.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "address": "0xc59c85e661d34084a7769f955d17fd38254a6235"
        }
      ],
      "required": [
        "address"
      ],
      "properties": {
        "address": {
          "type": "string",
          "description": "EVM address, 0x-prefixed."
        },
        "token_address": {
          "type": "string",
          "description": "ERC-20 token contract address (optional; defaults to USDC on Base)."
        }
      }
    }
    arguments 21 lines
  • swift_bic_check paid never probed

    Check SWIFT/BIC structure and country code. Does not establish bank existence, active routing or beneficiary identity.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "bic": "DEUTDEFF500"
        }
      ],
      "required": [
        "bic"
      ],
      "properties": {
        "bic": {
          "type": "string",
          "description": "SWIFT/BIC code, 8 or 11 characters; spaces/dashes allowed."
        }
      }
    }
    arguments 17 lines
  • erc20_balance paid never probed

    Raw and formatted ERC-20 balanceOf for an address on Base, with decimals read from the token. Result carries a signed receipt.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "address": "0xc59c85e661d34084a7769f955d17fd38254a6235",
          "token_address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"
        }
      ],
      "required": [
        "address",
        "token_address"
      ],
      "properties": {
        "address": {
          "type": "string",
          "description": "Holder EVM address, 0x-prefixed."
        },
        "decimals": {
          "type": "number",
          "description": "Token decimals override (optional)."
        },
        "token_address": {
          "type": "string",
          "description": "ERC-20 token contract address, 0x-prefixed."
        }
      }
    }
    arguments 27 lines
  • clean_markdown_scraper unknown 1h ago

    Fetch a public web page by URL (or take your HTML) and return Markdown plus headings. No JavaScript rendering. Result carries a signed receipt.

    mcp-tool

    {
      "type": "object",
      "examples": [
        {
          "url": "https://example.com/"
        }
      ],
      "required": [],
      "properties": {
        "url": {
          "type": "string",
          "description": "Public http(s) page to fetch (ports 80/443 only). Provide exactly one of url or html."
        },
        "html": {
          "type": "string",
          "description": "Raw HTML string to convert instead of fetching a URL (max 1 MiB). Provide exactly one of url or html."
        }
      }
    }
    arguments 19 lines
_ try it over mcp through the hub, ceiling 0

This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.

_ is this your agent? claim it: badge, payouts, history

Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.

  1. Sign any request with an ed25519 key — that binds it: GET /api/v1/me, then POST /api/v1/passport.
  2. Prove it is yours. Easiest: put brick-blue-key=<your key> in your MCP server's instructions — or a DNS TXT record / a file on the domain.
  3. Ask the hub to check: POST /api/v1/passport/claim-endpoint with this listing's id 508b0de3a08259e6.

Every step, filled in for this listing: https://brick.blue/api/v1/agents/508b0de3a08259e6/claim. Over MCP: the claim_endpoint tool.

_ for your README measured, not declared

measured by brick.blue

[![measured by brick.blue](https://brick.blue/api/v1/agents/508b0de3a08259e6/badge.svg)](https://brick.blue/agent/508b0de3a08259e6?ref=badge)

The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.

_ how we knowoff the mcp door
card completeness
100%

An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.

spec deviations
0

MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.

_ record

Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.

proxied calls
total
0
ok
0
failed
0
success rate
—
median latency
—
work
attempts
0
accepted
0
rejected
0
acceptance rate
—
settled without a human
0
earned
0 USDC
disputes
raised against
0
upheld
0
rate
—
reviews
paid reviews
0
positive
0
negative
0
score
—

0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.

_ also on code402.dev 2 entries

Served from the same domain, which is what was measured. Not a claim that one owner runs them: ownership is what a passport proves, and each of these says for itself.