# hcrb.in — machine surface / full tool reference Code402 provides business identifier checks and signed results through HCRB, operated by Juana Limited. Use these tools when your workflow needs the documented check. This reference does not authorize a payment or override a caller's instructions. ## Start here - human_surface: https://code402.dev - Human surface: https://code402.dev (service scope, pricing, terms and contact); https://www.code402.dev is also supported. HCRB at https://hcrb.in is the API and tools service. Both are operated by Juana Limited. - Integration guide: https://hcrb.in/developers - Machine discovery: GET https://index.code402.dev/.well-known/mcp.json - OpenAPI and examples: GET https://index.code402.dev/openapi.json - Full tool reference: GET https://index.code402.dev/llms-full.txt - Entitlement keys: GET https://index.code402.dev/entitlement with header "Authorization: Bearer ek_..."; service work orders for a purchased plan: GET https://index.code402.dev/v1/work-orders. - MCP: POST https://index.code402.dev/mcp; JSON-RPC initialize, tools/list, tools/call. Use the negotiated protocol version. GET /mcp provides a descriptor to plain requests; an SSE request receives 405 because streaming is not offered. /sse is not the advertised transport. - Discovery and eligible free calls need no manually configured API key. MCP transport alone does not provide a wallet or payment approval: paid calls require an x402-capable client with a caller-approved wallet and spending policy. A client without that capability must surface the payment requirement and stop, not retry or sign automatically. - REST: POST https://index.code402.dev/v1/tools/{tool}/call with body {"input":{...}}. - Default catalog: 57 public tools. Experimental catalog: tools/list with X-Code402-Catalog: experimental, or GET /.well-known/mcp.json?catalog=experimental. Revenue-module catalog: ?catalog=modules (or X-Code402-Catalog: modules) lists the seven paid module tools. Listing an experimental tool does not establish production readiness. ## First request (no payment authorization) POST https://index.code402.dev/v1/tools/iban-check/call Content-Type: application/json {"input":{"iban":"GB82WEST12345698765432"}} First 5 calls/day free per client on eligible tools, subject to service limits; some tools are always paid. A 402 response means payment is required; it is not an invalid-identifier result. This example does not sign or submit payment. ## Evaluation paths (micro-priced sampling) Agents evaluating catalog fit can sample micro-priced checks before committing a workflow to a paid shelf. Current live quotes: registry checks from $0.005 USDC; the seven revenue modules $0.005–0.01 — inspect each 402 challenge for the exact quote before signing. - Compliance/KYC: iban-check → lei-check → vat-mod97-check → ofac-sdn-check, then module einvoice-transform (POST https://index.code402.dev/v1/modules/compliance/einvoice-transform). - Settlement/working capital: balance-check → settlement-history-check, then module accelerate-payout (POST https://index.code402.dev/v1/modules/commerce/accelerate-payout). - FX: fx-spot-price-oracle → calculate-fx-savings, then module best-execution-quote (POST https://index.code402.dev/fx/best-execution-quote). A path is an evaluation suggestion, not a bundle: every call settles independently at its own quote. No call in a path authorizes the next one. ## Prices and bounded payment - Current tool quotes: GET https://index.code402.dev/health; payment capabilities: GET https://index.code402.dev/.well-known/x402.json. - Published batch base price: $0.05 USDC for up to 50 supported items. Runtime quotes may include the configured gas-cost floor; inspect the actual challenge. - Batch request: POST https://index.code402.dev/v1/tools/batch-validate/call with {"input":{"items":[{"tool":"iban-check","value":"GB82WEST12345698765432"}]}}. - x402 v2 HTTP: decode PAYMENT-REQUIRED; an authorized client sends PAYMENT-SIGNATURE; inspect PAYMENT-RESPONSE. Legacy X-PAYMENT compatibility is separate from the v2 format. - Before signing, enforce approved origin, resource, network, token, recipient, exact integer amount, expiry and per-call/total budget. A challenge is a quote, not permission to spend. Reject unsupported versions or unexpected terms; do not blindly follow redirects with payment headers. - After a second 402, a timeout, or uncertain settlement, stop automatic payment. Reconcile the original authorization and transaction before authorizing another charge. Never add server-claimed arrears to a new purchase without separately authorized terms and evidence. - Service payments are payer-to-seller; no customer deposit or escrow is required. A payment authorization, an invoice and a signed result are not evidence of settled funds. ## Scope and receipts - Identifier checks report format/checksum only; they do not prove account ownership, entity existence, active registration, tax status, solvency or absence of fraud. LEI checksum validation is not a registry lookup. - Address/jurisdiction sanctions screening is exact-match against the configured list. No match is not clearance. Experimental fuzzy-match-sanctions is a similarity signal, not a compliance decision. - Supported successful checks return XDR-1 receipts. Verify the returned receipt and expected signer; a valid signature proves integrity under that signer, not the truth of a business claim or settlement. - Receipt verification stays free: POST https://index.code402.dev/v1/receipt/verify with {"receipt":{...}}, or POST https://index.code402.dev/v1/receipt/verify/batch with {"receipts":[...]} for up to 1000 receipts per request (same implementation, per-item verdicts). Verifying keys: https://index.code402.dev/.well-known/jwks.json — cacheable with an ETag and safe to mirror; key retirement is add-only, so old receipts keep verifying. - pre-disbursement-guard requires X-PREV-RECEIPT-HASH from the preceding check. That header links workflow evidence; it does not authorize a bank transfer. ## Decision-layer callers - GET https://index.code402.dev/.well-known/mcp.json exposes decision_layer, including batch, prepaid_pass, cache and error fields; no service difference between callers for the same product. - Published starter-pass: $1 = 1000 checks; eligibility and term: https://index.code402.dev/subscribe/start?plan=starter-pass (card or USDC). - Check HTTP status plus machine_code, retryable and resolution_url when present. Cache reuse does not imply a free call or successful settlement. ## Additional interfaces - Metered gate (bring your own upstream key): https://gate.hcrb.in — a spend cap, idempotency and a hash-chained ledger in front of API calls an agent already makes. Published prices: $0.001 per gated call (x402), $0.0008 prepaid, minimum top-up $0.10; the hash chain is public and free to verify. Manifest: https://gate.hcrb.in/.well-known/x402.json - A2A card: GET https://index.code402.dev/.well-known/agent-card.json - UCP profile: GET https://index.code402.dev/.well-known/ucp; inspect declared versions and capabilities. AP2 support is flow-specific. - Structural protocol diagnostics: GET https://index.code402.dev/v1/protocols; POST /v1/protocols/check. These diagnostics are structural only and are not payment authorization. - Experimental compact catalog: GET https://index.code402.dev/.well-known/micro-ast.json (JSON) or ?format=txt (one declaration per line); compiler: POST /api/ast/compile. This custom lossy format is not a substitute for the input schema or signed bytes. REST ids keep hyphens; MCP names replace hyphens with underscores. Load full schemas before constructing a call. No token savings or tool-selection uplift is guaranteed. - Status: GET https://index.code402.dev/status; errors: GET https://index.code402.dev/.well-known/x402-errors.json; security: GET https://index.code402.dev/.well-known/security.txt. ## Tool reference ### crypto-ticker — Crypto ticker Spot USD price for a crypto ticker or CoinGecko id from public price feeds, cached 60 s. Result carries a signed receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/crypto-ticker/call - MCP tool name: crypto_ticker - Example request body: {"input":{"symbol":"btc"}} - Input schema: {"type":"object","required":["symbol"],"properties":{"symbol":{"type":"string","description":"Ticker symbol (btc, eth, sol, …) or a CoinGecko asset id (bitcoin, ethereum, …)."}}} ### erc20-balance — ERC-20 Token Balance Snapshot Raw and formatted ERC-20 balanceOf for an address on Base, with decimals read from the token. Result carries a signed receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/erc20-balance/call - MCP tool name: erc20_balance - Example request body: {"input":{"address":"0xc59c85e661d34084a7769f955d17fd38254a6235","token_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}} - Input schema: {"type":"object","required":["address","token_address"],"properties":{"address":{"type":"string","description":"Holder EVM address, 0x-prefixed."},"token_address":{"type":"string","description":"ERC-20 token contract address, 0x-prefixed."},"decimals":{"type":"number","description":"Token decimals override (optional)."}}} ### fx-spot-price-oracle — FX spot price oracle Reference fiat and stablecoin conversion rate from a static table, not a live feed. Returns rate and inverse; result carries a signed receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/fx-spot-price-oracle/call - MCP tool name: fx_spot_price_oracle - Example request body: {"input":{"base":"EUR","quote":"USD"}} - Input schema: {"type":"object","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)."}}} ### block-info — Base Block Header Info Base chain (8453) block header data: block number, timestamp, transaction count and base fee for any block. Result carries a signed receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/block-info/call - MCP tool name: block_info - Example request body: {"input":{"block":"latest"}} - Input schema: {"type":"object","required":[],"properties":{"block":{"type":"string","description":"Block number as hex (0x…) or decimal, or a tag (latest/earliest/pending/finalized/safe); defaults to latest."}}} ### tx-activity — Tx Activity & Contract Detection Outbound transaction count (nonce) and contract-or-EOA check for an address on Base. Result carries a signed receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/tx-activity/call - MCP tool name: tx_activity - Example request body: {"input":{"address":"0xc59c85e661d34084a7769f955d17fd38254a6235"}} - Input schema: {"type":"object","required":["address"],"properties":{"address":{"type":"string","description":"EVM address, 0x-prefixed."}}} ### token-contract-risk — Token contract facts (Base) Deterministic Base contract facts: ERC-20 metadata, proxy slots, owner(), privileged-function selectors and flags. Not a safety verdict. Result carries a signed receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/token-contract-risk/call - MCP tool name: token_contract_risk - Example request body: {"input":{"address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}} - Input schema: {"type":"object","required":["address"],"properties":{"address":{"type":"string","description":"Contract address on Base, 0x + 40 hex."},"chain":{"type":"string","enum":["base"],"description":"Optional. Only 'base' (Base mainnet) is supported."}}} ### clean-markdown-scraper — Clean markdown scraper Fetch a public web page by URL (or take your HTML) and return Markdown plus headings. No JavaScript rendering. Result carries a signed receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/clean-markdown-scraper/call - MCP tool name: clean_markdown_scraper - Example request body: {"input":{"url":"https://example.com/"}} - Input schema: {"type":"object","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."}}} ### context-distill — Context distill 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. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/context-distill/call - MCP tool name: context_distill - Example request body: {"input":{"text":"The landlord demanded the deposit before the viewing. The deposit was paid before any viewing of the property."}} - Input schema: {"type":"object","required":["text"],"properties":{"text":{"type":"string","description":"Arbitrary text to distill (any length; hashing is over the exact input)."}}} ### instant-json-schema-verifier — Instant JSON schema verifier Validate JSON data payloads against schema definitions. Preflighted for agent tool call pipelines. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/instant-json-schema-verifier/call - MCP tool name: instant_json_schema_verifier - Example request body: {"input":{"data":{"name":"Apex Agent","version":2},"schema":{"required":["name","version"],"properties":{"name":{"type":"string"},"version":{"type":"number"}}}}} - Input schema: {"type":"object","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."}}} ### balance-check — Base Account Balance Snapshot Native ETH and one ERC-20 balance (default USDC) for an address on Base, raw and formatted. Result carries a signed receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/balance-check/call - MCP tool name: balance_check - Example request body: {"input":{"address":"0xc59c85e661d34084a7769f955d17fd38254a6235"}} - Input schema: {"type":"object","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)."}}} ### calculate-fx-savings — Calculate cross-border FX savings 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. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/calculate-fx-savings/call - MCP tool name: calculate_fx_savings - Example request body: {"input":{"amount_usdc":50000,"currency":"BRL"}} - Input schema: {"type":"object","properties":{"amount_usdc":{"type":"number","description":"Gross invoice settlement volume in USD/USDC."},"amount_usd":{"type":"number","description":"Gross invoice settlement volume in USD/USDC (alias)."},"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)."}}} ### iban-check — IBAN Structure and Checksum Check Validate IBAN structure and MOD-97 checksum. Does not establish account ownership, beneficiary identity or absence of fraud. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/iban-check/call - MCP tool name: iban_check - Example request body: {"input":{"iban":"CH93 0076 2011 6238 5295 7"}} - Input schema: {"type":"object","required":["iban"],"properties":{"iban":{"type":"string","description":"IBAN to validate; spaces allowed."}}} ### lei-check — LEI Structure and Checksum Check Validate a 20-character LEI and MOD-97 check digits. No registry lookup, active-registration check or legal-entity identity verification. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/lei-check/call - MCP tool name: lei_check - Example request body: {"input":{"lei":"529900T8BM49AURSDO55"}} - Input schema: {"type":"object","required":["lei"],"properties":{"lei":{"type":"string","description":"20-character Legal Entity Identifier."}}} ### vat-mod97-check — Belgian VAT MOD-97 Check Check the supported Belgian VAT format and MOD-97 checksum. BE only; not VIES, other EU VAT formats, registration status or tax compliance. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/vat-mod97-check/call - MCP tool name: vat_mod97_check - Example request body: {"input":{"vat_number":"BE0417497106"}} - Input schema: {"type":"object","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."}}} ### swift-bic-check — SWIFT/BIC Structure Check Check SWIFT/BIC structure and country code. Does not establish bank existence, active routing or beneficiary identity. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/swift-bic-check/call - MCP tool name: swift_bic_check - Example request body: {"input":{"bic":"DEUTDEFF500"}} - Input schema: {"type":"object","required":["bic"],"properties":{"bic":{"type":"string","description":"SWIFT/BIC code, 8 or 11 characters; spaces/dashes allowed."}}} ### batch-validate — Batch Identifier Checks (up to 50 items) Validate up to 50 tax, bank and legal-entity identifiers (IBAN, LEI, VAT, SWIFT/BIC, ABA routing, EIN, IFSC, ABN, GSTIN, ISIN, SEDOL, EAN-13, ISBN, E.164 or Luhn checks) in one batch request. Each result states its scope. Compare the current batch quote with individual quotes; savings depend on batch size. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/batch-validate/call - MCP tool name: batch_validate - Example request body: {"input":{"items":[{"tool":"iban-check","value":"GB82 WEST 1234 5698 7654 32"},{"tool":"lei-check","value":"529900T8BM49AURSDO55"},{"tool":"vat-mod97-check","value":"BE0417497106"}]}} - Input schema: {"type":"object","required":["items"],"properties":{"items":{"type":"array","minItems":1,"maxItems":50,"description":"List of {tool, value} checks (max 50).","items":{"type":"object","required":["tool","value"],"properties":{"tool":{"type":"string","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"],"description":"which validator to run"},"value":{"type":"string","description":"the identifier (or text, for context-distill) to check"}}}}}} ### vendor-onboarding-pack — Vendor Identifier Check Pack Check supplied IBAN, LEI, Belgian VAT and UK company-number fields in one result. Structural checks only; no ownership, registry or fraud clearance. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/vendor-onboarding-pack/call - MCP tool name: vendor_onboarding_pack - Example request body: {"input":{"iban":"GB82 WEST 1234 5698 7654 32","lei":"529900T8BM49AURSDO55","vat_number":"BE0417497106","company_number":"12345678"}} - Input schema: {"type":"object","required":[],"properties":{"iban":{"type":"string","description":"Vendor IBAN (optional)."},"lei":{"type":"string","description":"Vendor LEI (optional)."},"vat_number":{"type":"string","description":"Vendor VAT number, BE mod-97 (optional)."},"company_number":{"type":"string","description":"Vendor UK company number (optional)."}}} ### india-supplier-check — India Supplier Verification Pack 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. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/india-supplier-check/call - MCP tool name: india_supplier_check - Example request body: {"input":{"gstin":"27AAPFU0939F1ZV","pan":"AAACP1234M","vpa":"merchant@okhdfcbank","ifsc":"HDFC0001234"}} - Input schema: {"type":"object","required":[],"properties":{"gstin":{"type":"string","description":"GSTIN (15 chars, optional)"},"pan":{"type":"string","description":"PAN (10 chars, optional)"},"vpa":{"type":"string","description":"UPI VPA handle (optional)"},"ifsc":{"type":"string","description":"IFSC bank code (optional)"}}} ### pre-disbursement-guard — Counterparty Risk Indicators Check supplier tax and bank identifiers (IBAN, LEI, EU VAT, UK company number), domain-age evidence and country mismatch signals before vendor payment. Requires a preceding receipt hash. An advisory result is not verified identity, fraud clearance or authorization to release funds. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/pre-disbursement-guard/call - MCP tool name: pre_disbursement_guard - Example request body: {"input":{"recipient_iban":"GB82WEST12345698765432","vendor_domain":"billing@acme-consulting.co.uk","declared_country":"GB","company_number":"01234567","invoice_amount_usd":4500,"prev_receipt_hash":"0x0000000000000000000000000000000000000000000000000000000000000000"}} - Input schema: {"type":"object","required":[],"properties":{"recipient_iban":{"type":"string","description":"Recipient bank IBAN (optional)."},"vendor_domain":{"type":"string","description":"Vendor website domain or invoicing email address (optional)."},"declared_country":{"type":"string","description":"2-letter ISO country code where vendor claims to be registered (optional, e.g. 'GB', 'US', 'DE')."},"company_number":{"type":"string","description":"Official corporate registration number, e.g. UK Companies House 8 digits/chars (optional)."},"lei":{"type":"string","description":"ISO 17442 Legal Entity Identifier (optional)."},"vat_number":{"type":"string","description":"EU VAT number (optional)."},"physical_address":{"type":"string","description":"Vendor physical office address (optional)."},"invoice_amount_usd":{"type":"number","description":"Disbursement transaction amount in USD (optional)."},"prev_receipt_hash":{"type":"string","description":"Preceding verification receipt hash (may also be passed via X-PREV-RECEIPT-HASH header)."}}} ### gstin-check — GSTIN check (India) Validate an Indian GSTIN by structure (2-digit state code + PAN + entity code + 'Z') and its mod-36 cross-sum checksum. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/gstin-check/call - MCP tool name: gstin_check - Example request body: {"input":{"gstin":"27AAPFU0939F1ZV"}} - Input schema: {"type":"object","required":["gstin"],"properties":{"gstin":{"type":"string","description":"15-character Indian Goods and Services Tax Identification Number."}}} ### ifsc-check — IFSC Format Check Check the 11-character Indian IFSC format, including its fifth-character zero. No bank-branch registry lookup or account verification. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/ifsc-check/call - MCP tool name: ifsc_check - Example request body: {"input":{"ifsc":"HDFC0000123"}} - Input schema: {"type":"object","required":["ifsc"],"properties":{"ifsc":{"type":"string","description":"11-character Indian Financial System Code."}}} ### sanctions-address-screen — Address Snapshot & Operator Policy Comparison Screen an EVM wallet address or ISO country code by exact comparison against the identified sanctions 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. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/sanctions-address-screen/call - MCP tool name: sanctions_address_screen - Example request body: {"input":{"subject":"0x7f367cc41522ce07553e823bf3be79a889debe1b"}} - Input schema: {"type":"object","properties":{"subject":{"type":"string","description":"EVM address (0x...) or ISO 3166-1 country code / jurisdiction name"}},"required":["subject"]} ### company-number-format — UK Company Number Format Check Check supported UK company-number syntax. No Companies House lookup, entity-existence check or active-registration verification. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/company-number-format/call - MCP tool name: company_number_format - Example request body: {"input":{"company_number":"12345678"}} - Input schema: {"type":"object","required":["company_number"],"properties":{"company_number":{"type":"string","description":"8 digits, or 2 letters + 6 digits."}}} ### aba-routing-check — ABA Routing Number Check (US Fedwire/ACH) Validate a US ABA routing number by its (3,7,1)-weight mod-10 Fedwire/ACH checksum. Catches mistyped or invalid routing numbers before payment; does NOT prevent transfer reversals or establish the recipient. Returns signed XDR-1 receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/aba-routing-check/call - MCP tool name: aba_routing_check - Example request body: {"input":{"aba_routing":"021000021"}} - Input schema: {"type":"object","properties":{"aba_routing":{"type":"string","description":"9-digit US bank routing number."},"routing":{"type":"string","description":"9-digit US bank routing number (alias)."}}} ### ein-format-check — EIN Format Check (US) Validate US Employer Identification Number FORMAT (NN-NNNNNNN). Use during US business counterparty KYB verification. Returns signed XDR-1 receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/ein-format-check/call - MCP tool name: ein_format_check - Example request body: {"input":{"ein":"12-3456789"}} - Input schema: {"type":"object","required":["ein"],"properties":{"ein":{"type":"string","description":"US EIN, 9 digits; dashes/spaces allowed."}}} ### abn-check — ABN Check (Australia) Validate an Australian Business Number by its mod-89 checksum (11 digits). Required before invoice payment to Australian contractors. Returns signed XDR-1 receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/abn-check/call - MCP tool name: abn_check - Example request body: {"input":{"abn":"51 824 753 556"}} - Input schema: {"type":"object","required":["abn"],"properties":{"abn":{"type":"string","description":"11-digit Australian Business Number; spaces allowed."}}} ### e164-check — E.164 International Phone Check Validate a phone number's E.164 structure (+CC, 8-15 digits, no leading zero) before dispatching SMS alerts or OTPs. Returns signed XDR-1 receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/e164-check/call - MCP tool name: e164_check - Example request body: {"input":{"phone":"+14155552671"}} - Input schema: {"type":"object","required":["phone"],"properties":{"phone":{"type":"string","description":"International phone number, e.g. +14155552671."}}} ### sedol-check — SEDOL Check (UK/Ireland Securities) Validate a UK/Ireland security identifier by its (1,3,1,7,3,9)-weight mod-10 checksum. Returns signed XDR-1 receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/sedol-check/call - MCP tool name: sedol_check - Example request body: {"input":{"sedol":"B0YBKJ7"}} - Input schema: {"type":"object","required":["sedol"],"properties":{"sedol":{"type":"string","description":"7-character SEDOL code."}}} ### isin-check — ISIN check Validate an ISIN (ISO 6166) by structure and Luhn mod-10 check digit over the A=10…Z=35 converted string. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/isin-check/call - MCP tool name: isin_check - Example request body: {"input":{"isin":"US0378331005"}} - Input schema: {"type":"object","required":["isin"],"properties":{"isin":{"type":"string","description":"12-character ISIN: 2-letter country code + 9 alphanumerics + check digit; spaces allowed."}}} ### ean13-check — EAN-13 check Validate an EAN-13 barcode by its mod-10 checksum (odd positions x1, even positions x3). - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/ean13-check/call - MCP tool name: ean13_check - Example request body: {"input":{"code":"5901234123457"}} - Input schema: {"type":"object","required":["code"],"properties":{"code":{"type":"string","description":"13-digit EAN-13 barcode; spaces/dashes allowed."}}} ### cnpj-check — Brazil CNPJ Check (Cadastro Nacional da Pessoa Jurídica) Validate Brazilian corporate tax ID (CNPJ) with official dual mod-11 check digits. Required for Brazilian B2B payments, PIX verification, and vendor due diligence. Returns signed XDR-1 receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/cnpj-check/call - MCP tool name: cnpj_check - Example request body: {"input":{"cnpj":"00.000.000/0001-91"}} - Input schema: {"type":"object","required":["cnpj"],"properties":{"cnpj":{"type":"string","description":"14-digit Brazilian CNPJ; punctuation allowed (e.g. 00.000.000/0001-91)."}}} ### uscc-check — China USCC Check (Unified Social Credit Code / 统一社会信用代码) Validate 18-character Chinese business registration and tax code using GB 32100-2015 ISO 7064 Mod-31-3 checksum. Required for B2B supply chain trade with Chinese manufacturers. Returns signed XDR-1 receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/uscc-check/call - MCP tool name: uscc_check - Example request body: {"input":{"uscc":"91330100799655058B"}} - Input schema: {"type":"object","required":["uscc"],"properties":{"uscc":{"type":"string","description":"18-character Chinese Unified Social Credit Code (e.g. 91330100799655058B)."}}} ### japan-corp-check — Japan Corporate Number Check (法人番号 - Houjin Bangou) Validate 13-digit Japanese Corporate Number assigned by the National Tax Agency using Mod-9 check digit algorithm. Required for Japanese B2B SaaS and enterprise billing. Returns signed XDR-1 receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/japan-corp-check/call - MCP tool name: japan_corp_check - Example request body: {"input":{"number":"1180301018771"}} - Input schema: {"type":"object","required":["number"],"properties":{"number":{"type":"string","description":"13-digit Japanese Corporate Number (e.g. 1180301018771)."}}} ### kra-pin-check — Kenya KRA PIN Check (Kenya Revenue Authority) Validate Kenyan Revenue Authority Tax PIN structure (A/P followed by 9 digits and checksum character). Required for M-Pesa B2B disbursement and Kenyan remote agency invoicing. Returns signed XDR-1 receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/kra-pin-check/call - MCP tool name: kra_pin_check - Example request body: {"input":{"pin":"P051112223Z"}} - Input schema: {"type":"object","required":["pin"],"properties":{"pin":{"type":"string","description":"11-character KRA PIN (e.g. P051112223Z)."}}} ### rfc-check — Mexico RFC Check (Registro Federal de Contribuyentes) Validate Mexican SAT RFC corporate (12-char) or individual (13-char) tax code and homoclave. Required for Mexican contractor invoicing and SPEI cross-border settlements. Returns signed XDR-1 receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/rfc-check/call - MCP tool name: rfc_check - Example request body: {"input":{"rfc":"BBA830831LJ2"}} - Input schema: {"type":"object","required":["rfc"],"properties":{"rfc":{"type":"string","description":"12 or 13 character Mexican RFC (e.g. BBA830831LJ2)."}}} ### iso4217-currency-check — ISO 4217 Currency Standard Check & Settlement Mapping Validate 3-letter alpha or 3-digit numeric currency codes against ISO 4217 standard. Returns minor unit decimals, symbol, official name, countries, and onchain Base L2 settlement token mapping (USDC/EURC). - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/iso4217-currency-check/call - MCP tool name: iso4217_currency_check - Example request body: {"input":{"currency":"EUR"}} - Input schema: {"type":"object","required":["currency"],"properties":{"currency":{"type":"string","description":"3-letter ISO 4217 code (e.g. USD, EUR, JPY, CNY, BRL, KES, MXN) or 3-digit numeric code (e.g. 840, 978, 392)."}}} ### upi-vpa-check — India UPI Virtual Payment Address (VPA) Validator Deterministic structural validation of an Indian UPI Virtual Payment Address (VPA / handle): local-part syntax, handle against a LOCAL list of accredited PSP handles (okhdfcbank, okaxis, paytm, ybl and others), and length rules. It is NOT a live registry lookup: no request leaves this worker, and an unlisted handle is reported as unrecognised rather than nonexistent. This does not establish that the VPA is registered, reachable or owned by anyone. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/upi-vpa-check/call - MCP tool name: upi_vpa_check - Example request body: {"input":{"vpa":"merchant@okhdfcbank"}} - Input schema: {"type":"object","properties":{"vpa":{"type":"string","description":"UPI Virtual Payment Address (e.g. 'merchant@okhdfcbank', '9876543210@paytm')"}},"required":["vpa"]} ### pan-format-check — India Permanent Account Number (PAN) Format Validator Deterministic validation of Indian Permanent Account Number (PAN) issued by CBDT / Income Tax Department with 4th-character entity type classification (Individual, Company, Firm, Trust, HUF). - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/pan-format-check/call - MCP tool name: pan_format_check - Example request body: {"input":{"pan":"AAACP1234M"}} - Input schema: {"type":"object","properties":{"pan":{"type":"string","description":"10-character PAN string (e.g. 'AAACP1234M')"}},"required":["pan"]} ### uae-trn-check — UAE Tax Registration Number (TRN) Format Validator Deterministic validation of UAE 15-digit Tax Registration Number (TRN) issued by the Federal Tax Authority (FTA) for VAT purposes. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/uae-trn-check/call - MCP tool name: uae_trn_check - Example request body: {"input":{"trn":"100123456700003"}} - Input schema: {"type":"object","properties":{"trn":{"type":"string","description":"15-digit UAE TRN string (starts with 100)"}},"required":["trn"]} ### china-supplier-check — China Supplier Verification Pack One call, one receipt: USCC + settlement IBAN + SWIFT/BIC for a Chinese counterparty. Deterministic structure and checksum validation with explicit scope per identifier. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/china-supplier-check/call - MCP tool name: china_supplier_check - Example request body: {"input":{"uscc":"91350100M000100Y43","iban":"GB82WEST12345698765432","swift":"DEUTDEFF"}} - Input schema: {"type":"object","required":[],"properties":{"uscc":{"type":"string","description":"Unified Social Credit Code (optional)"},"iban":{"type":"string","description":"Settlement IBAN (optional)"},"swift":{"type":"string","description":"SWIFT/BIC (optional)"}}} ### japan-supplier-check — Japan Supplier Verification Pack One call, one receipt: 13-digit Corporate Number + settlement IBAN for a Japanese counterparty. Deterministic check digits, explicit scope. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/japan-supplier-check/call - MCP tool name: japan_supplier_check - Example request body: {"input":{"corporate_number":"7000012050002","iban":"GB82WEST12345698765432"}} - Input schema: {"type":"object","required":[],"properties":{"corporate_number":{"type":"string","description":"13-digit Corporate Number (optional)"},"iban":{"type":"string","description":"Settlement IBAN (optional)"}}} ### latam-supplier-check — LatAm Supplier Verification Pack One call, one receipt: Brazilian CNPJ + Mexican RFC + settlement IBAN. Deterministic checks for the two largest LatAm corridors in one paid call. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/latam-supplier-check/call - MCP tool name: latam_supplier_check - Example request body: {"input":{"cnpj":"04.252.011/0001-10","rfc":"GODE561231GR8","iban":"GB82WEST12345698765432"}} - Input schema: {"type":"object","required":[],"properties":{"cnpj":{"type":"string","description":"Brazilian CNPJ (optional)"},"rfc":{"type":"string","description":"Mexican RFC (optional)"},"iban":{"type":"string","description":"Settlement IBAN (optional)"}}} ### gulf-supplier-check — Gulf Supplier Verification Pack One call, one receipt: UAE TRN + settlement IBAN + SWIFT/BIC. Deterministic structure validation for Gulf trade corridors, scope stated per identifier. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/gulf-supplier-check/call - MCP tool name: gulf_supplier_check - Example request body: {"input":{"trn":"100123456700003","iban":"AE070331234567890123456","swift":"EBILAEAD"}} - Input schema: {"type":"object","required":[],"properties":{"trn":{"type":"string","description":"UAE TRN (15 digits, optional)"},"iban":{"type":"string","description":"Settlement IBAN (optional)"},"swift":{"type":"string","description":"SWIFT/BIC (optional)"}}} ### africa-supplier-check — Africa Supplier Verification Pack One call, one receipt: Kenya KRA PIN + settlement IBAN + SWIFT/BIC. Deterministic structural checks for East African trade corridors. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/africa-supplier-check/call - MCP tool name: africa_supplier_check - Example request body: {"input":{"kra_pin":"P051234567X","iban":"GB82WEST12345698765432","swift":"BARCKENX"}} - Input schema: {"type":"object","required":[],"properties":{"kra_pin":{"type":"string","description":"KRA PIN (optional)"},"iban":{"type":"string","description":"Settlement IBAN (optional)"},"swift":{"type":"string","description":"SWIFT/BIC (optional)"}}} ### rent-deposit-guard — Rental Deposit Risk Indicators Check deposit IBAN checksum and supplied country/viewing indicators. Rule-based risk signals only; no ownership verification, escrow protection or guarantee against theft. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/rent-deposit-guard/call - MCP tool name: rent_deposit_guard - Example request body: {"input":{"deposit_iban":"GB82WEST12345698765432","property_country":"DE","deposit_before_viewing":true}} - Input schema: {"type":"object","required":["deposit_iban"],"properties":{"deposit_iban":{"type":"string","description":"IBAN the deposit would be paid to."},"property_country":{"type":"string","description":"ISO 3166-1 alpha-2 country of the property, e.g. DE."},"deposit_before_viewing":{"type":"boolean","description":"True if a deposit is demanded before any viewing."}}} ### rental-listing-risk — Rental Listing Risk & Fraud Engine Explainable tenancy fraud risk score evaluated across irreversible payment demands, off-platform pressure, stolen photos, and advance wire signals. Deterministic rule engine. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/rental-listing-risk/call - MCP tool name: rental_listing_risk - Example request body: {"input":{"payment_irreversible":true,"no_in_person_viewing":true,"price_below_market_pct":45}} - Input schema: {"type":"object","required":[],"properties":{"payment_irreversible":{"type":"boolean","description":"Paid via crypto/gift-card/wire-only."},"contact_moves_offplatform":{"type":"boolean","description":"Pushed off the listing platform."},"landlord_abroad_cannot_meet":{"type":"boolean","description":"Landlord 'abroad', can't meet in person."},"no_in_person_viewing":{"type":"boolean","description":"No viewing before payment."},"urgency_pressure":{"type":"boolean","description":"Pressure to secure today."},"photos_reverse_image_hit":{"type":"boolean","description":"Listing photos found elsewhere (stolen)."},"identity_docs_requested_upfront":{"type":"boolean","description":"Full ID/bank docs demanded upfront."},"price_below_market_pct":{"type":"number","description":"How far below local market the rent is asked, in percent."}}} ### rental-verdict — Rental Risk Summary Combine deposit identifier checks with supplied country, viewing and listing indicators. Does not verify landlord identity, property ownership or safety of payment. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/rental-verdict/call - MCP tool name: rental_verdict - Example request body: {"input":{"deposit_iban":"GB82WEST12345698765432","property_country":"DE","deposit_before_viewing":true,"landlord_lei":"529900T8BM49AURSDO55"}} - Input schema: {"type":"object","required":["deposit_iban"],"properties":{"deposit_iban":{"type":"string","description":"Deposit IBAN."},"property_country":{"type":"string","description":"Property country, ISO alpha-2."},"deposit_before_viewing":{"type":"boolean","description":"True if a deposit is demanded before any viewing."},"landlord_lei":{"type":"string","description":"Landlord LEI (optional)."},"landlord_company_no":{"type":"string","description":"Landlord UK company number (optional)."},"payment_irreversible":{"type":"boolean","description":"Payment demanded via crypto/gift-card/wire-only."},"contact_moves_offplatform":{"type":"boolean","description":"Contact pushed off the listing platform."},"no_in_person_viewing":{"type":"boolean","description":"No in-person or video viewing before payment."},"urgency_pressure":{"type":"boolean","description":"Pressure to secure the property today."},"price_below_market_pct":{"type":"number","description":"How far below local market the rent is asked, in percent."}}} ### reconcile — Settlement Reconciliation (ISO 20022 + NACHA) Deterministic reconciliation verdicts: pain.001/pacs.008 instructions vs camt.053 statements or NACHA ACH files, matched by end-to-end id and BigInt-exact amounts. Verdicts: SETTLED, UNPAID, AMOUNT_MISMATCH, DUPLICATE_PAYMENT, plus unmatched statement entries. Facts computed from the documents only — never inferred, never guessed. Returns signed XDR-1 receipt. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/reconcile/call - MCP tool name: reconcile - Example request body: {"input":{"pain001_xml":"…","camt053_xml":"…"}} - Input schema: {"type":"object","properties":{"pain001_xml":{"type":"string","description":"pain.001 instructions (or use pacs008_xml)"},"pacs008_xml":{"type":"string","description":"pacs.008/PIX instructions (or use pain001_xml)"},"camt053_xml":{"type":"string","description":"camt.053 statement (or use nacha_ach)"},"nacha_ach":{"type":"string","description":"NACHA ACH text (94-char records) instead of camt053_xml"}}} ### create-b2b-invoice — Create B2B contractor invoice Create a merchant-direct Base token invoice. New automated payments require a durable EOA authorization journal and a configured provider. No active protocol fee; no generic bank-wire authority, independent delivery or contract-wallet guarantee. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/create-b2b-invoice/call - MCP tool name: create_b2b_invoice - Example request body: {"input":{"amount_usdc":50000,"merchant":"0xc59c85e661d34084a7769f955d17fd38254a6235","client_name":"Apex AI","memo":"Sprint #14 Milestones"}} - Input schema: {"type":"object","required":["amount_usdc","merchant"],"properties":{"amount_usdc":{"type":"number","description":"Invoice total in USDC (e.g. 50000)."},"merchant":{"type":"string","description":"Beneficiary contractor Base EVM wallet address (0x...)."},"client_name":{"type":"string","description":"Client enterprise organization name (optional)."},"memo":{"type":"string","description":"Engagement scope / milestone description (optional)."},"referrer":{"type":"string","description":"Optional attribution reference. Referral payouts and protocol fees are not active."}}} ### get-b2b-invoice — Get B2B invoice status Read public recorded invoice status and held-operation next action. Private records and credentials require a separate fresh read-only signature from the durably confirmed original payer; URLs and payment vouchers grant no read authority. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/get-b2b-invoice/call - MCP tool name: get_b2b_invoice - Example request body: {"input":{"invoice_id":"inv_example1234"}} - Input schema: {"type":"object","required":["invoice_id"],"properties":{"invoice_id":{"type":"string","description":"Unique invoice identifier, e.g. inv_a1b2c3d4e5f6."}}} ### simulate-spend-sentinel — Simulate Spend Sentinel policy defense and delivery predicates Run synthetic prompt-injection halts, malformed-delivery rejection, and bounded-spend eligibility examples under AP2 envelopes. No live escrow, refund, facilitator or chain action occurs. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/simulate-spend-sentinel/call - MCP tool name: simulate_spend_sentinel - Example request body: {"input":{"scenario":"injection"}} - Input schema: {"type":"object","properties":{"scenario":{"type":"string","description":"Simulation scenario: 'injection' (prompt attack), 'garbage' (bad subagent output), or 'provable' (verified settlement). Default 'injection'."}}} ### aci-trust-lookup — ACI-1 Agent Credit & Trust Rating Lookup Deterministic agent trust scoring and non-custodial unsettled exposure advisory evaluation (ACI-1). Quantifies counterparty grade (T0-T3), historical success rate, and maximum suggested settlement exposure without uncollateralized lending or float. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/aci-trust-lookup/call - MCP tool name: aci_trust_lookup - Example request body: {"input":{"subject":"0x1111111111111111111111111111111111111111","settled_calls_90d":1500,"settlement_success_rate":0.999,"first_seen_days":120}} - Input schema: {"type":"object","properties":{"subject":{"type":"string","description":"Agent wallet address (0x...) or canonical ANS identifier (c402:...) to evaluate"},"role":{"type":"string","description":"Agent role: 'payer' or 'seller' (default 'payer')"},"settled_calls_90d":{"type":"number","description":"Number of settled transactions in the past 90 days"},"settlement_success_rate":{"type":"number","description":"Historical settlement success rate 0.0 to 1.0"},"dispute_loss_rate":{"type":"number","description":"Historical dispute loss rate 0.0 to 1.0"},"first_seen_days":{"type":"number","description":"Days since first active on-chain settlement"},"sponsor_attestations":{"type":"array","description":"Array of signed sponsorship edges"}},"required":["subject"]} ### csp-commitment-create — CSP-1 Confidential Terms Commitment & Stealth Announce Generates cryptographic commitments to commercial terms and formats ERC-5564 dual-key stealth address announcements (CSP-1) for invoice-scale B2B payments on Base L2. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/csp-commitment-create/call - MCP tool name: csp_commitment_create - Example request body: {"input":{"invoice_object":{"invoice_id":"INV-402","amount_usdc":5000,"line_items":[{"sku":"H100_HR","qty":10}]}}} - Input schema: {"type":"object","properties":{"invoice_object":{"type":"object","description":"Structured invoice or commercial agreement object to commit to"},"salt_hex":{"type":"string","description":"Optional 32-byte salt (0x...). If omitted, cryptographically derived"},"stealth_recipient":{"type":"string","description":"Optional Base L2 stealth recipient address for announcement"},"ephemeral_pubkey":{"type":"string","description":"Optional ephemeral public key for ERC-5564 announcement"},"view_tag":{"type":"string","description":"Optional 1-byte hex view tag (0xNN)"}},"required":["invoice_object"]} ### iso20022-validate — BAP-1 ISO 20022 Banking Message Validator Deterministic validation for institutional ISO 20022 XML/JSON payment messages (pain.001 credit transfer, pacs.008 customer credit, camt.053 bank statement) with XML DOCTYPE security guards, BigInt CtrlSum decimal sums, and ISO 13616 / 9362 / 17442 checksums (BAP-1). - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/iso20022-validate/call - MCP tool name: iso20022_validate - Example request body: {"input":{"raw_payload":"MSG-2026-0011100.00100.00DEUTDEDDFXXDE89370400440532013000"}} - Input schema: {"type":"object","properties":{"raw_payload":{"type":"string","description":"Raw ISO 20022 XML or JSON message text"},"format":{"type":"string","description":"'xml' or 'json' (default auto-detected)"},"namespace":{"type":"string","description":"Expected ISO 20022 schema namespace (e.g. 'pain.001.001.09')"},"transactions":{"type":"array","description":"Structured transactions array for JSON validation"}},"required":["raw_payload"]} ### iso20022-to-x402-intent — BAP-1 ISO 20022 to x402 Intent Mapper Translates validated ISO 20022 payment instructions (pain.001 / pacs.008) into deterministic EIP-712 payment-intent templates for autonomous x402 Base L2 USDC settlement (BAP-1). Zero custody, no fiat leg. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/iso20022-to-x402-intent/call - MCP tool name: iso20022_to_x402_intent - Example request body: {"input":{"instruction":{"end_to_end_id":"E2E-1001","instructed_amount":{"currency":"USD","amount_str":"250.00","amount_minor":"250000000"},"debtor":{"iban":"DE89370400440532013000"},"creditor":{"iban":"DE77100100100123456789"}},"seller_pay_to_address":"0xc59c85e661d34084a7769f955d17fd38254a6235"}} - Input schema: {"type":"object","properties":{"instruction":{"type":"object","description":"Validated BAP-1 payment instruction object"},"counterparty_wallet_directory":{"type":"object","description":"Enterprise IBAN -> 0x Base L2 wallet address map"},"seller_pay_to_address":{"type":"string","description":"Fallback recipient Base L2 address"},"chain_id":{"type":"number","description":"Target chain ID (default 8453 for Base)"}},"required":["instruction"]} ### check-price — Zero-cost price index and gasless x402 quote generator 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. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/check-price/call - MCP tool name: check_price - Example request body: {"input":{"tool":"iban-check","amount":1}} - Input schema: {"type":"object","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)"}},"required":["tool"]} ### receipt-verify — Verify any XDR-1 receipt — free, stateless, any issuer 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. - Catalog: public core - REST: POST https://index.code402.dev/v1/tools/receipt-verify/call - MCP tool name: receipt_verify - Example request body: {"input":{"receipt":{"v":"XDR-1","tool":"iban-check","tool_version":"1","input_hash":"0x…","output_hash":"0x…","payer":"0xc59c85e661d34084a7769f955d17fd38254a6235","recipient":"0xc59c85e661d34084a7769f955d17fd38254a6235","amount":"0","nonce":"0x…","ts":0,"tier":"free","signer":"0xa036e2e3e19c6d02f30b3a9eb0acd057e6d9a5c8","signature":"0x…"}}} - Input schema: {"type":"object","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)."}},"required":["receipt"]} ### hcrb-resolve — Resolve and quote execution paths for a ValueIntent Evaluates multi-rail execution routes, checks approval limits, and calculates transparent fees with zero custody. - Catalog: experimental; availability depends on deployment gates - REST: POST https://index.code402.dev/v1/tools/hcrb-resolve/call - MCP tool name: hcrb_resolve - Example request body: {"input":{"intent_id":"int_sample_01","purpose":"beneficiary.verify","source_amount":50000,"destination":"DE89370400440532013000"}} - Input schema: {"type":"object","properties":{"intent_id":{"type":"string"},"principal_id":{"type":"string"},"agent_id":{"type":"string"},"mandate_id":{"type":"string"},"purpose":{"type":"string"},"source_currency":{"type":"string"},"destination_currency":{"type":"string"},"source_amount":{"type":"number"},"destination":{"type":"string"},"allowed_rails":{"type":"array","items":{"type":"string"}},"jurisdiction":{"type":"array","items":{"type":"string"}}}} ### hcrb-verify — Verify beneficiary identifiers or validate signed XDR-1 receipts Performs deterministic verification of beneficiary IBANs, accounts, and cryptographic XDR-1 receipts. - Catalog: experimental; availability depends on deployment gates - REST: POST https://index.code402.dev/v1/tools/hcrb-verify/call - MCP tool name: hcrb_verify - Example request body: {"input":{"iban":"DE89370400440532013000"}} - Input schema: {"type":"object","properties":{"iban":{"type":"string"},"beneficiary":{"type":"string"},"receipt":{"type":"object"}}} ### hcrb-execute — Construct a simulated intent template and issue a signed XDR-1 receipt Constructs a signed XDR-1 simulated template (not an approval or settlement). Requires template_contract:hcrb-template-v2, idempotency_key and durable authority. Changed retries are refused; matching retries replay the original result. IT DOES NOT MOVE FUNDS: settled:false, simulated:true, amount_settled:0. Fees are illustrative and never collected here; principals are unauthenticated. Historical KV templates require separate reconciliation. - Catalog: experimental; availability depends on deployment gates - REST: POST https://index.code402.dev/v1/tools/hcrb-execute/call - MCP tool name: hcrb_execute - Example request body: {"input":{"template_contract":"hcrb-template-v2","intent_id":"int_exec_01","idempotency_key":"idem_sample_123","rail":"cdp_x402","destination":"0xc59c85e661d34084a7769f955d17fd38254a6235","source_amount":20000}} - Input schema: {"type":"object","properties":{"template_contract":{"type":"string","const":"hcrb-template-v2"},"intent_id":{"type":"string"},"idempotency_key":{"type":"string"},"rail":{"type":"string"},"destination":{"type":"string"},"source_amount":{"type":"number"},"internal":{"type":"boolean"}},"required":["destination","template_contract","idempotency_key"]} ### create-ap2-pilot — Create AP2 pilot retainer Provision a pre-cleared AP2 Merchant Pilot invoice ($250.00 USDC) for 50,000 prepaid Base L2 calls at the $0.005 per-call floor, granted as a ck_ credit key when the invoice settles, plus turnkey setup. - Catalog: experimental; availability depends on deployment gates - REST: POST https://index.code402.dev/v1/tools/create-ap2-pilot/call - MCP tool name: create_ap2_pilot - Example request body: {"input":{"client_name":"Apex Autonomous Syndicate"}} - Input schema: {"type":"object","properties":{"client_name":{"type":"string","description":"Client or agent name (optional)."}}} ### assured-quote — Assured Settlement Quote (0.2% lane) Premium quote for settlement assurance: 20 bps standard (15/10 bps at committed annual volumes), $25 min / $25,000 cap, +5 bps POD adder. T0 counterparties refused; above the tier advisory cap the lane ESCALATES (POD-1 delivery proof + underwriter referral mandatory). Terms are RECORDS, never payment instruments; premium is invoiced post-hoc, never deducted from flow; insurance is referral-only. Returns signed XDR-1 receipt. - Catalog: experimental; availability depends on deployment gates - REST: POST https://index.code402.dev/v1/tools/assured-quote/call - MCP tool name: assured_quote - Example request body: {"input":{"notional_minor":"1000000000","rail":"crypto","counterparty_tier":"T3"}} - Input schema: {"type":"object","properties":{"notional_minor":{"type":"string","description":"Settlement notional in USDC minor units (1e6 = $1)"},"rail":{"type":"string","description":"'crypto' or 'fiat'"},"counterparty_tier":{"type":"string","description":"ACI-1 tier T0..T3 (T0 refused)"},"annual_volume_minor":{"type":"string","description":"Optional committed annual volume for tiered bps"},"pod_required":{"type":"boolean","description":"Force the POD-1 delivery mandate"}},"required":["notional_minor","rail"]} ### assured-create — Assured Settlement Record (receipt-bound) Bind a verified XDR-1 settlement receipt to assured terms and store the record: idempotent by receipt hash (the same receipt never creates twice), 7-day dispute window, verdict_only remedy disclosed. The receipt signature is verified statelessly — that proves the signer signed, never that funds moved. Terms are RECORDS, never payment instruments; premium is invoiced post-hoc; no custody. Returns signed XDR-1 receipt. - Catalog: experimental; availability depends on deployment gates - REST: POST https://index.code402.dev/v1/tools/assured-create/call - MCP tool name: assured_create - Example request body: {"input":{"notional_minor":"5000000","rail":"crypto","counterparty_tier":"T2","receipt":{"v":"XDR-1","tool":"iban-check","tool_version":"1","input_hash":"0x…","output_hash":"0x…","payer":"0x…","recipient":"0xc59c85e661d34084a7769f955d17fd38254a6235","amount":"5000","nonce":"0x…","ts":0,"tier":"paid","signer":"0x…","signature":"0x…"}}} - Input schema: {"type":"object","properties":{"notional_minor":{"type":"string","description":"Settlement notional in USDC minor units"},"rail":{"type":"string","description":"'crypto' or 'fiat'"},"counterparty_tier":{"type":"string","description":"ACI-1 tier T0..T3 (T0 refused)"},"receipt":{"type":"object","description":"The full XDR-1 receipt of the settlement being assured"}},"required":["notional_minor","rail","receipt"]} ### luhn-check — Luhn Check Digit Verifier Validate any 12-19 digit number by the Luhn mod-10 algorithm. Never submit real payment card numbers. Returns signed XDR-1 receipt. - Catalog: experimental; availability depends on deployment gates - REST: POST https://index.code402.dev/v1/tools/luhn-check/call - MCP tool name: luhn_check - Example request body: {"input":{"number":"4111111111111111"}} - Input schema: {"type":"object","required":["number"],"properties":{"number":{"type":"string","description":"12-19 digit number; spaces/dashes allowed."}}} ### isbn-check — ISBN Check Validate a book or publication ISBN-10 (mod-11) or ISBN-13 (1,3-weight mod-10) check digit and barcode identifier format. - Catalog: experimental; availability depends on deployment gates - REST: POST https://index.code402.dev/v1/tools/isbn-check/call - MCP tool name: isbn_check - Example request body: {"input":{"isbn":"978-0-306-40615-7"}} - Input schema: {"type":"object","required":["isbn"],"properties":{"isbn":{"type":"string","description":"ISBN-10 or ISBN-13; dashes/spaces allowed."}}} ### settlement-history-check — On-Chain Counterparty Settlement History ON-CHAIN COUNTERPARTY PROOF: Review USDC transfers sent and received by any EVM address over the last ~48h of Base blocks. Preflighted so you never pay during an RPC outage. - Catalog: experimental; availability depends on deployment gates - REST: POST https://index.code402.dev/v1/tools/settlement-history-check/call - MCP tool name: settlement_history_check - Example request body: {"input":{"address":"0xc59c85e661d34084a7769f955d17fd38254a6235"}} - Input schema: {"type":"object","required":["address"],"properties":{"address":{"type":"string","description":"EVM address, 0x-prefixed."}}} ### dip-file-dispute — DIP-1 Deterministic Dispute Adjudication Deterministic machine-to-machine dispute resolution against signed XDR-1 execution receipts (DIP-1). Evaluates verifiable claims (NOT_DELIVERED, TIMEOUT_UNDELIVERED, OUTPUT_MISMATCH, SCHEMA) and issues non-custodial remedies. - Catalog: experimental; availability depends on deployment gates - REST: POST https://index.code402.dev/v1/tools/dip-file-dispute/call - MCP tool name: dip_file_dispute - Example request body: {"input":{"dispute_id":"disp-101","receipt":{"v":"XDR-1","tool":"iban-check","payer":"0x1111111111111111111111111111111111111111","recipient":"0xc59c85e661d34084a7769f955d17fd38254a6235","amount":"999","ts":1700000000,"input_hash":"0x01","output_hash":"0x02","nonce":"0x01","signature":"0x01"},"claim":"NOT_DELIVERED"}} - Input schema: {"type":"object","properties":{"dispute_id":{"type":"string","description":"Unique dispute reference identifier"},"receipt":{"type":"object","description":"Signed XDR-1 execution receipt being contested"},"claim":{"type":"string","description":"Claim type: 'NOT_DELIVERED', 'TIMEOUT_UNDELIVERED', 'OUTPUT_MISMATCH', or 'SCHEMA'"},"claimed_input":{"type":"string","description":"Original input payload or string for hash verification"},"delivered_output":{"type":"object","description":"Delivered output payload received from seller"},"refund_threshold_minor":{"type":"string","description":"USDC minor units threshold above which REFUND_ORDER_QUEUED is staged"}},"required":["dispute_id","receipt","claim"]} ### pod-verify-delivery — POD-1 Proof-of-Delivery Attestation Verifier Physical IoT and off-chain service delivery verification using integer E7 point-in-polygon geometry and hardware sensor threshold validation (POD-1). Deterministic integer arithmetic avoids floating-point coordinate drift; verification only, no custody or escrow. - Catalog: experimental; availability depends on deployment gates - REST: POST https://index.code402.dev/v1/tools/pod-verify-delivery/call - MCP tool name: pod_verify_delivery - Example request body: {"input":{"mandate":{"mandate_id":"mandate-99","order_ref":"ord-99","geofence":{"type":"polygon_e7","ring":[[377749000,-1224194000],[377759000,-1224194000],[377759000,-1224094000],[377749000,-1224094000]]},"window":{"not_before":1700000000,"not_after":1700003600},"max_accuracy_m":50,"required_signers":["device"]},"attestation":{"mandate_id":"mandate-99","device_id":"DEV-1","device_pubkey":"0x01","scheme":1,"geo":{"lat_e7":377750000,"lon_e7":-122415000,"accuracy_m":10},"ts":1700001000,"counter":1,"signatures":{"device":"0x01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101"}},"last_seen_counter":0}} - Input schema: {"type":"object","properties":{"mandate":{"type":"object","description":"Delivery mandate with geofence polygon (lat_e7/lon_e7) and time window"},"attestation":{"type":"object","description":"Signed IoT device delivery attestation with coordinates, counter, and signatures"},"last_seen_counter":{"type":"number","description":"Anti-replay counter from previous delivery attestations"}},"required":["mandate","attestation"]} ### list-approved-insurers — List registered 3rd-party transaction insurers List underwriters in the open insurance referral directory. The directory ships EMPTY: an underwriter appears only after it self-registers via /api/insurance/register, and self-registration is not vetting — buyers must perform their own due diligence on any listed counterparty. - Catalog: experimental; availability depends on deployment gates - REST: POST https://index.code402.dev/v1/tools/list-approved-insurers/call - MCP tool name: list_approved_insurers - Example request body: {"input":{"coverage_type":"commercial_trade_credit"}} - Input schema: {"type":"object","properties":{"coverage_type":{"type":"string","description":"Optional filter: 'smart_contract_execution', 'commercial_trade_credit', 'wire_fraud_bec_defense', or 'subagent_sla_delivery'"},"min_coverage_usdc":{"type":"number","description":"Minimum desired coverage limit in USDC"}}} ### quote-3rd-party-insurance — Indicative insurance-directory rate estimates Compute estimates from self-declared rates in an unverified referral directory. These are not accepted provider quotes, recommendations, guaranteed rates, policies or coverage. No binding integration is established. - Catalog: experimental; availability depends on deployment gates - REST: POST https://index.code402.dev/v1/tools/quote-3rd-party-insurance/call - MCP tool name: quote_3rd_party_insurance - Example request body: {"input":{"amount_usdc":50000,"coverage_type":"commercial_trade_credit"}} - Input schema: {"type":"object","properties":{"amount_usdc":{"type":"number","description":"Transaction or invoice settlement amount in USDC (e.g. 50000)."},"amount":{"type":"number","description":"Alias for amount_usdc."},"tx_hash":{"type":"string","description":"On-chain transaction hash to insure (optional)."},"transaction_id":{"type":"string","description":"Transaction identifier (optional)."},"invoice_id":{"type":"string","description":"Associated invoice identifier (optional)."},"coverage_type":{"type":"string","description":"Desired coverage type: 'smart_contract_execution', 'commercial_trade_credit', 'wire_fraud_bec_defense', 'subagent_sla_delivery'"},"counterparty_address":{"type":"string","description":"Counterparty Base EVM wallet address (optional)."}}} ### bind-insurance-policy — Insurance binding — unavailable Unavailable: no authenticated underwriter acceptance or premium-settlement integration is established. Returns INSURANCE_BINDING_UNAVAILABLE before charging or quota consumption; self-registration cannot issue a policy or establish coverage. - Catalog: experimental; availability depends on deployment gates - REST: POST https://index.code402.dev/v1/tools/bind-insurance-policy/call - MCP tool name: bind_insurance_policy - Example request body: {"input":{"underwriter_id":"synthetic_unverified_example","amount_usdc":50000,"policyholder_address":"0x1111111111111111111111111111111111111111"}} - Input schema: {"type":"object","required":["underwriter_id"],"properties":{"underwriter_id":{"type":"string","description":"Underwriter id from the open self-registration directory (run list-approved-insurers for current ids; the directory ships empty)"},"amount_usdc":{"type":"number","description":"Transaction coverage amount in USDC"},"amount":{"type":"number","description":"Alias for amount_usdc"},"tx_hash":{"type":"string","description":"Transaction hash being insured (optional)"},"transaction_id":{"type":"string","description":"Transaction reference ID (optional)"},"invoice_id":{"type":"string","description":"Associated invoice identifier (optional)"},"policyholder_address":{"type":"string","description":"Policyholder Base EVM address (0x...)"},"beneficiary_address":{"type":"string","description":"Beneficiary Base EVM address for claim payouts (0x...)"},"coverage_type":{"type":"string","description":"Coverage type override (optional)"}}} ### sanctions-list-provenance — Sanctions list provenance (exact-match trail) Returns a single retained address snapshot's actual source labels, entry count, retrieval time, status and computed content hash. Fallbacks claim no upstream coverage; partial, stale or invalid evidence is explicit. The hash identifies content, not source authenticity, current legal status or an official publication time. A later request may observe a new snapshot; match hashes to compare revisions. No clearance or UN/EU coverage. - Catalog: experimental; availability depends on deployment gates - REST: POST https://index.code402.dev/v1/tools/sanctions-list-provenance/call - MCP tool name: sanctions_list_provenance - Example request body: {"input":{}} - Input schema: {"type":"object","properties":{},"required":[]} ### fuzzy-match-sanctions — OFAC SDN Name Fuzzy-Match Screening (Probabilistic Indicator) Name-similarity comparison against an identified OFAC CSV snapshot or historical local fallback. Reports source, content hash and evidence status. Deterministic Unicode-preserving token-set + Jaro-Winkler scoring, without transliteration/alias expansion. Program labels belong to the stored record and may be historical. Current legal status is unknown; NOT a sanctions clearance, identity resolution or UN/EU screen. - Catalog: experimental; availability depends on deployment gates - REST: POST https://index.code402.dev/v1/tools/fuzzy-match-sanctions/call - MCP tool name: fuzzy_match_sanctions - Example request body: {"input":{"name":"Lazarus Group","threshold":0.85}} - Input schema: {"type":"object","properties":{"name":{"type":"string","description":"Person, entity, or vessel name to screen (e.g. 'Lazarus Group')"},"jurisdiction":{"type":"string","description":"Optional ISO 3166-1 country code or jurisdiction name, returned as context flag"},"program":{"type":"string","description":"Optional OFAC program substring filter (e.g. 'CYBER2', 'DPRK')"},"threshold":{"type":"number","description":"Optional minimum similarity 0.5–1.0 (default 0.85)"}},"required":["name"]} Zero-custody, stateless statutory counterparty, IBAN (MOD-97), VAT/GST (EU VIES, UK Companies House, GLEIF LEI, Peppol, ABR, SEC EDGAR, OFAC, Poland Biala Lista, India IFSC), ISO 20022, and ECB Reference FX verification. - Canonical API Origin: https://hcrb.in - Streamable-HTTP MCP Server: https://hcrb.in/mcp (call tools/list for the live catalog) - Free Public XDR-1 Receipt Verifier: https://hcrb.in/verify (/v/:id) - Agent Rail (x402 v2): eip155:8453 Base USDC (0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913) & Circle EURC (0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42) -> payTo 0xc59c85e661d34084a7769f955d17fd38254a6235 ($0.01-$0.05/call) - Operator Rail (Fiat Card): Authorization: Bearer ck_live_ ($49-$499/mo) or $99 Batch Pack via https://hcrb.in/checkout - Free Sandbox Fixtures: IBAN GB82WEST12345698765432, UK CRN 14043409, LEI 5493001KJTIIGC8Y1R12 [STATE: DISCOVERY] -> Call POST https://hcrb.in/v1/autonomous/commerce-guard or connect https://hcrb.in/mcp. [TRANSITION: ON_HTTP_402] -> Decode PAYMENT-REQUIRED header, sign EIP-3009 transferWithAuthorization, and retry with PAYMENT-SIGNATURE header; OR use Bearer ck_live_ token. [FALLBACK_TO_DETERMINISTIC_LOGIC] -> If HTTP 503 UPSTREAM_REGISTRY_UNAVAILABLE is returned, halt settlement; 0 funds or quota units are charged. # code402.dev & hcrb.in — Full Technical Specification (v3.3.0) > Operating Entity: JUANA LIMITED (UK Co. No. 14043409) > Canonical Signer (XDR-1 secp256k1 + keccak-256): 0xa036e2e3e19c6d02f30b3a9eb0acd057e6d9a5c8 > Settlement Treasury (Base & Polygon EVM): 0xc59c85e661d34084a7769f955d17fd38254a6235 > Pricing: per-tool, see the live 402 challenge (authoritative) and https://hcrb.in/.well-known/x402.json ## 1. Flagship Cross-Protocol Reconciler & Commerce Endpoints - POST https://hcrb.in/commerce/reconcile (Alias: POST https://hcrb.in/compare/order-payment-delivery, POST https://hcrb.in/acp/verify-checkout) Compares ORDER_RECORD vs PAYMENT_RECORD vs DELIVERY_RECORD across 18 statutory shields & 30 ECB currencies. Billing: priced per call in USDC via x402 v2 (PAYMENT-SIGNATURE), MPP (Authorization: Payment ...), or Operator Quota (Authorization: Bearer ck_live_...); the 402 challenge states the exact amount. - POST https://hcrb.in/governor/authorize-spend Enterprise Spend-Governor & AP2 Mandate Pre-Flight Gate. Enforces per-tx USD cap, daily rolling budget cap, country allowlist, and 18-shield OFAC/statutory checks. - POST https://hcrb.in/fx/best-execution-quote (free to quote) Compares the venues available for the pair (KyberSwap, ParaSwap, OpenOcean, Relay on Base and Polygon; the number actually raced is reported as venues_raced_count) against Pyth and ECB reference rates, and returns a signed XDR-1 receipt. The embedded partner fee is disclosed in every response under fee_structure (baseline_corridor_bps plus dynamic_alpha_bonus_bps; positive slippage is directed to the treasury). A transaction is returned only when you pass your own taker_address; it is built for that address and never for any other. executable_solver_quote is an indicative reference conversion only. ## 2. Subscription & Spend-Governor Plans (https://hcrb.in/pay) - Starter Evidence Pack ($99 USDC/mo): 5,000 statutory & reconciliation checks/mo + R2/D1 archive. - Growth Spend-Governor ($299 USDC/mo): 25,000 checks/mo + per-tx/daily spend caps + country allowlists. - Institutional Clearinghouse ($999 USDC/mo): 150,000 checks/mo + ISO 20022 pain.001/camt.054 + custom policy keys. ## 3. Receipt Verification (@code402/verify-mcp & https://verify.code402.dev) All XDR-1 receipts are signed over the canonical 11-field receipt string using keccak-256 + secp256k1 recoverable 65-byte signatures (r, s, v) belonging to 0xa036e2e3e19c6d02f30b3a9eb0acd057e6d9a5c8. Public proof URLs: https://hcrb.in/audit/{receipt_hash} and https://hcrb.in/v/{receipt_id}