{"server":{"name":"io.github.89rat/code402","$schema":"https://static.modelcontextprotocol.io/schemas/2025-09-29/server.schema.json","remotes":[{"url":"https://rail.hcrb.in/mcp","type":"streamable-http"}],"version":"1.0.1","repository":{"url":"https://github.com/89rat/m2m-exchange","source":"github"},"websiteUrl":"https://code402.dev","description":"Discover machine-payable APIs, probe x402 payment terms, and run seller operations. Non-custodial."},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","isLatest":true,"updatedAt":"2026-09-25T04:19:19.494642Z","publishedAt":"2026-09-25T04:19:19.494642Z","statusChangedAt":"2026-09-25T04:19:19.494642Z"},"dev.protogrid/connectability":{"class":"R0","autonomous":true,"human_steps":[],"preferred":{"kind":"remote","idx":0},"remotes":[{"idx":0,"url":"https://rail.hcrb.in/mcp","transport":"streamable-http","templated":false,"headers":[],"auth":{"type":"none","location":null,"secret_name":null,"oauth":null},"protocol":{"supported_versions":["2025-11-25"],"stateless":true},"health":{"reachable":true,"uptime_30d":0.96842104,"latency_ms_p50":377,"consecutive_failures":0,"last_probe_at":"2026-10-19T11:17:51.481Z","last_ok_at":"2026-10-19T11:17:51.481Z"}}],"packages":[]},"dev.protogrid/tools":[{"name":"balance_check","title":"Base Account Balance Snapshot","description":"Native ETH and one ERC-20 balance (default USDC) for an address on Base, raw and formatted. Result carries a signed receipt.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"5000","price_ceiling":"25000"},"title":"Base Account Balance Snapshot","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"batch_validate","title":"Batch Identifier Checks (up to 50 items)","description":"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.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"50000","price_ceiling":"250000"},"title":"Batch Identifier Checks (up to 50 items)","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"block_info","title":"Base Block Header Info","description":"Base block header: number, timestamp, transaction count and base fee for the latest or a given block. Result carries a signed receipt.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"10000","price_ceiling":"50000"},"title":"Base Block Header Info","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"calculate_fx_savings","title":"Calculate cross-border FX savings","description":"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.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"5000","price_ceiling":"25000"},"title":"Calculate cross-border FX savings","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"check_price","title":"Zero-cost price index and gasless x402 quote generator","description":"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.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"0","price_ceiling":"0"},"title":"Zero-cost price index and gasless x402 quote generator","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"clean_markdown_scraper","title":"Clean markdown scraper","description":"Fetch a public web page by URL (or take your HTML) and return Markdown plus headings. No JavaScript rendering. Result carries a signed receipt.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"15000","price_ceiling":"75000"},"title":"Clean markdown scraper","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"context_distill","title":"Context distill","description":"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.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"5000","price_ceiling":"25000"},"title":"Context distill","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"crypto_ticker","title":"Crypto ticker","description":"Spot USD price for a crypto ticker or CoinGecko id from public price feeds, cached 60 s. Result carries a signed receipt.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"10000","price_ceiling":"50000"},"title":"Crypto ticker","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"erc20_balance","title":"ERC-20 Token Balance Snapshot","description":"Raw and formatted ERC-20 balanceOf for an address on Base, with decimals read from the token. Result carries a signed receipt.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"5000","price_ceiling":"25000"},"title":"ERC-20 Token Balance Snapshot","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"fx_spot_price_oracle","title":"FX spot price oracle","description":"Reference fiat and stablecoin conversion rate from a static table, not a live feed. Returns rate and inverse; result carries a signed receipt.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"10000","price_ceiling":"50000"},"title":"FX spot price oracle","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"gstin_check","title":"GSTIN check (India)","description":"Validate an Indian GSTIN by structure (2-digit state code + PAN + entity code + 'Z') and its mod-36 cross-sum checksum.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"5000","price_ceiling":"25000"},"title":"GSTIN check (India)","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"iban_check","title":"IBAN Structure and Checksum Check","description":"Validate IBAN structure and MOD-97 checksum. Does not establish account ownership, beneficiary identity or absence of fraud.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"5000","price_ceiling":"25000"},"title":"IBAN Structure and Checksum Check","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"ifsc_check","title":"IFSC Format Check","description":"Check the 11-character Indian IFSC format, including its fifth-character zero. No bank-branch registry lookup or account verification.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"5000","price_ceiling":"25000"},"title":"IFSC Format Check","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"india_supplier_check","title":"India Supplier Verification Pack","description":"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.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"20000","price_ceiling":"100000"},"title":"India Supplier Verification Pack","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"instant_json_schema_verifier","title":"Instant JSON schema verifier","description":"Validate JSON data payloads against schema definitions. Preflighted for agent tool call pipelines.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"5000","price_ceiling":"25000"},"title":"Instant JSON schema verifier","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"lei_check","title":"LEI Structure and Checksum Check","description":"Validate a 20-character LEI and MOD-97 check digits. No registry lookup, active-registration check or legal-entity identity verification.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"5000","price_ceiling":"25000"},"title":"LEI Structure and Checksum Check","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"pre_disbursement_guard","title":"Counterparty Risk Indicators","description":"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.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"5000","price_ceiling":"25000"},"title":"Counterparty Risk Indicators","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"receipt_verify","title":"Verify any XDR-1 receipt — free, stateless, any issuer","description":"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.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"0","price_ceiling":"0"},"title":"Verify any XDR-1 receipt — free, stateless, any issuer","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"sanctions_address_screen","title":"Address Snapshot & Operator Policy Comparison","description":"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.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"5000","price_ceiling":"25000"},"title":"Address Snapshot & Operator Policy Comparison","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"swift_bic_check","title":"SWIFT/BIC Structure Check","description":"Check SWIFT/BIC structure and country code. Does not establish bank existence, active routing or beneficiary identity.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"5000","price_ceiling":"25000"},"title":"SWIFT/BIC Structure Check","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"token_contract_risk","title":"Token contract facts (Base)","description":"Deterministic Base contract facts: ERC-20 metadata, proxy slots, owner(), privileged-function selectors and flags. Not a safety verdict. Result carries a signed receipt.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"20000","price_ceiling":"100000"},"title":"Token contract facts (Base)","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"tx_activity","title":"Tx Activity & Contract Detection","description":"Outbound transaction count (nonce) and contract-or-EOA check for an address on Base. Result carries a signed receipt.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"5000","price_ceiling":"25000"},"title":"Tx Activity & Contract Detection","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"vat_mod97_check","title":"Belgian VAT MOD-97 Check","description":"Check the supported Belgian VAT format and MOD-97 checksum. BE only; not VIES, other EU VAT formats, registration status or tax compliance.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"5000","price_ceiling":"25000"},"title":"Belgian VAT MOD-97 Check","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"},{"name":"vendor_onboarding_pack","title":"Vendor Identifier Check Pack","description":"Check supplied IBAN, LEI, Belgian VAT and UK company-number fields in one result. Structural checks only; no ownership, registry or fraud clearance.","annotations":{"x402":{"note":"Flat at-cost floor; a cost-linked guard may raise the floor under sustained Base fee spikes (never demand surge). The 402 challenge body is authoritative.","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc59c85e661d34084a7769f955d17fd38254a6235","scheme":"exact","chainId":8453,"network":"base","currency":"USDC","price_floor":"20000","price_ceiling":"100000"},"title":"Vendor Identifier Check Pack","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true},"source":"probe","observed_at":"2026-10-19T11:17:51.481Z"}],"dev.protogrid/trust":{"score":97,"components":{"hygiene":100,"liveness":99,"freshness":100,"provenance":90},"drivers":["+repository","+namespace-matches-repo","+website","+reachable","+uptime-97%","+updated-24d-ago"],"flags":[],"blocked":false,"computed_at":"2026-10-19T15:46:33.170Z","disclaimer":"Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed."},"dev.protogrid/quality":{"score":69,"label":"needs work","components":{"auth":null,"hygiene":86,"protocol":75,"stability":25,"dependencies":null},"checks":[{"id":"protocol.modern","detail":"newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28","status":"warn","category":"protocol"},{"id":"protocol.stateless","detail":"only applies to 2026-07-28 servers","status":"na","category":"protocol"},{"id":"protocol.transport","detail":"streamable HTTP","status":"pass","category":"protocol"},{"id":"protocol.list_ttl","detail":"only applies to 2026-07-28 servers","status":"na","category":"protocol"},{"id":"auth.prm","detail":"no remote uses OAuth","status":"na","category":"auth"},{"id":"auth.as_metadata","detail":"no remote uses OAuth","status":"na","category":"auth"},{"id":"auth.cimd","detail":"no remote uses OAuth","status":"na","category":"auth"},{"id":"auth.secret_in_url","detail":"no templated URL","status":"na","category":"auth"},{"id":"tools.descriptions","detail":"every tool has a description","status":"pass","category":"hygiene"},{"id":"tools.description_length","detail":"descriptions are concise","status":"pass","category":"hygiene"},{"id":"tools.schemas","detail":"every tool has an object input schema","status":"pass","category":"hygiene"},{"id":"tools.annotations","detail":"24 of 24 tools declare readOnlyHint or destructiveHint","status":"pass","category":"hygiene"},{"id":"tools.directory_hints","detail":"no tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: calculate_fx_savings (destructiveHint); gstin_check (destructiveHint); erc20_balance (destructiveHint); …","status":"fail","category":"hygiene"},{"id":"tools.token_cost","detail":"about 6,354 tokens to load every tool","status":"pass","category":"hygiene"},{"id":"tools.api_dump","detail":"tools are not a one-to-one API dump","status":"pass","category":"hygiene"},{"id":"stability.changes","detail":"98 tool changes in 30 days","status":"warn","category":"stability"},{"id":"stability.rug_pull","detail":"17 tools kept their name but changed most of their description in 30 days; review before trusting them","status":"fail","category":"stability"},{"id":"deps.known_vulns","detail":"no npm or PyPI package","status":"na","category":"dependencies"},{"id":"deps.mcp_sdk_version","detail":"no npm or PyPI package","status":"na","category":"dependencies"},{"id":"deps.resolvable","detail":"no npm or PyPI package","status":"na","category":"dependencies"}],"drivers":["-tools.directory_hints","-stability.rug_pull","~protocol.modern","~stability.changes"],"flags":[],"tool_count":24,"token_estimate":6354,"tools_hash":"ba8757e433184d23ab09540641a974ba","tools_changed_at":"2026-10-17T10:47:12.035Z","computed_at":"2026-10-19T15:48:21.482Z","disclaimer":"Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed."},"dev.protogrid/identity":{"canonical_id":"io.github.89rat/code402","aliases":["io.github.89rat/x402-checks"],"alias_count":1,"repository_key":"github:89rat/m2m-exchange","owner":{"verified":false,"method":null,"since":null}}},"next_actions":[{"action":"list_tools","description":"Every current tool with input schemas","href":"/v1/servers/io.github.89rat%2Fcode402/tools","arguments":{"name":"io.github.89rat/code402"}},{"action":"get_connection","description":"Minimal connection block for the preferred remote or package","href":"/v1/servers/io.github.89rat%2Fcode402/connection?target=mcpServers","arguments":{"name":"io.github.89rat/code402","target":"mcpServers"}},{"action":"search","description":"Find other servers by intent","href":"/v1/search?q={query}","arguments":{"q":"{query}"}}]}