{"schemaVersion":"1.0.0","name":"verify402","title":"verify402 — Machine-Payable Truth Service for AI Agents","description":"Free fail-closed pre-signing gate plus x402-payable on-chain truth verification: arbitrage reality, token safety, execution book, quote fairness, and trade capacity measured at pinned blocks.","version":"1.0.3","license":"Apache-2.0","canonicalUrl":"https://verify402.onrender.com","repository":{"url":"https://github.com/a32116150-ctrl/verify402","type":"git","subfolder":"mcp-bridge"},"documentation":{"homepage":"https://verify402.onrender.com/","quickstart":"https://verify402.onrender.com/start","docs":"https://verify402.onrender.com/docs","mcp":"https://verify402.onrender.com/mcp","preflight":"https://verify402.onrender.com/preflight","proof":"https://verify402.onrender.com/proof","live":"https://verify402.onrender.com/live","openapi":"https://verify402.onrender.com/openapi.json","llmsTxt":"https://verify402.onrender.com/llms.txt","sitemap":"https://verify402.onrender.com/sitemap.xml","serviceManifest":"https://verify402.onrender.com/.well-known/verify402.json","x402Manifest":"https://verify402.onrender.com/.well-known/x402","agentCard":"https://verify402.onrender.com/.well-known/agent-card.json"},"integrations":{"mcp":{"type":"model-context-protocol","transport":"stdio","packageIdentifier":"verify402-mcp","npmUrl":"https://www.npmjs.com/package/verify402-mcp","tarballUrl":"https://github.com/a32116150-ctrl/verify402/releases/download/mcp-v1.0.3/verify402-mcp-1.0.3.tgz","registryName":"io.github.a32116150-ctrl/verify402-mcp","registryUrl":"https://registry.modelcontextprotocol.io/v0.1/servers/io.github.a32116150-ctrl%2Fverify402-mcp/versions/1.0.3","quickInstallCommand":"npx -y verify402-mcp","tools":[{"name":"preflight_gate","type":"free","description":"Advisory pre-signing check for payments and transactions. Evaluates limits, allowances, recipient and freshness. Returns PASS/CAUTION/BLOCK with HMAC receipt."},{"name":"verify_arbitrage","type":"paid","priceUsd":0.05,"description":"Cross-venue arbitrage check using Uniswap QuoterV2 and venue routers at one pinned block. Most common verdict: no_edge."},{"name":"check_token_safety","type":"paid","priceUsd":0.1,"description":"Pre-trade token gate: TRUST/CAUTION/AVOID with contract facts, liquidity analysis, and USD-sized sell probe."},{"name":"get_best_route","type":"paid","priceUsd":0.03,"description":"Execution book quoting pair across venues at one pinned block, best first."},{"name":"verify_quote_fairness","type":"paid","priceUsd":0.05,"description":"Audit third-party swap quote against live chain truth: fair / overpaying / too_good_to_be_true."},{"name":"get_trade_depth","type":"paid","priceUsd":0.05,"description":"Position sizing: ladder of trade sizes, measuring impact %, round-trip cost %, and capacityUsd."}],"environmentVariables":[{"name":"VERIFY402_URL","description":"verify402 base URL","default":"https://verify402.onrender.com","isRequired":false,"isSecret":false},{"name":"EVM_PRIVATE_KEY","description":"Private key for a dedicated hot wallet with USDC on Base. Required only for the 5 paid tools; omit for free-only preflight_gate.","isRequired":false,"isSecret":true},{"name":"MAX_PAYMENT_USD","description":"Client-side spend cap per single payment (default: 0.25)","default":"0.25","isRequired":false,"isSecret":false},{"name":"MAX_DAILY_USD","description":"Client-side spend cap per UTC day across restarts","isRequired":false,"isSecret":false}]},"http":{"type":"rest-json","baseUrl":"https://verify402.onrender.com","openapiUrl":"https://verify402.onrender.com/openapi.json"}},"paymentRequirements":{"scheme":"exact","protocol":"x402 v2","facilitators":["https://facilitator.payai.network (Base + Solana mainnet, keyless)","Coinbase CDP x402 facilitator (via CDP_API_KEY_ID)"],"supportedNetworks":[{"id":"eip155:8453","name":"Base mainnet","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","symbol":"USDC","decimals":6,"payTo":"0xAeEF086DD4e436c69d6d0F684b4c9F43392df9cb"},{"id":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","name":"Solana mainnet","asset":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","symbol":"USDC","decimals":6,"payTo":"BdcsYodhwWUhLTuL5FJ3m8D4u4wVy8KMw7vAvPVucAbJ"}],"pricing":{"verify":{"route":"/verify","priceUsd":0.05,"atomicAmountUsdc":"50000"},"safety":{"route":"/safety","priceUsd":0.1,"atomicAmountUsdc":"100000"},"route":{"route":"/route","priceUsd":0.03,"atomicAmountUsdc":"30000"},"quotecheck":{"route":"/quotecheck","priceUsd":0.05,"atomicAmountUsdc":"50000"},"depth":{"route":"/depth","priceUsd":0.05,"atomicAmountUsdc":"50000"}},"settlementHeaders":{"paymentRequired":"WWW-Authenticate: x402","paymentProofHeaders":["x-payment","payment-signature"]}},"freeEndpoints":[{"route":"/preflight","method":"POST","summary":"Free pre-signing PASS/CAUTION/BLOCK gate with HMAC receipt"},{"route":"/preflight/verify","method":"POST","summary":"Validate HMAC receipt authenticity and expiration"},{"route":"/health","method":"GET","summary":"Liveness and network mode check"},{"route":"/info","method":"GET","summary":"Machine-readable capabilities and pricing"},{"route":"/findings","method":"GET","summary":"Recent verifiable market observations"},{"route":"/openapi.json","method":"GET","summary":"OpenAPI 3.1 contract"},{"route":"/llms.txt","method":"GET","summary":"Plain-text contract for LLMs"},{"route":"/sitemap.xml","method":"GET","summary":"XML sitemap"},{"route":"/.well-known/verify402.json","method":"GET","summary":"Canonical service manifest"},{"route":"/.well-known/x402","method":"GET","summary":"x402 capability discovery manifest"},{"route":"/.well-known/agent-card.json","method":"GET","summary":"ERC-8004 agent card"}],"operationalPolicies":{"rateLimits":{"preflight":"60 requests/minute per IP, max concurrency 5","paidEndpoints":"Guarded by x402 payment requirements"},"idempotency":{"header":"x-idempotency-key","description":"Replays settled verdicts at zero cost within 300s window (max 3 replays). Content-hashed.","conflictStatus":409},"receipts":{"type":"HMAC-SHA256","defaultTtlSeconds":90,"rangeSeconds":"15-300"}},"securityBoundaries":{"failClosed":true,"signingAuthority":"Client-side only. Verify402 never holds private keys, executes transactions, or initiates token transfers.","disclaimers":{"verdictPass":"PASS indicates only that verified checks passed at the specified pinned block. It is not a counterparty audit or prompt-injection filter. Consult notChecked list.","verdictTrust":"TRUST indicates contract passed heuristic checks, liquidity thresholds, and sell probe. Does not guarantee safety.","noEdge":"Negative arbitrage outcome is the expected truthful result on liquid markets.","financialAdvice":"None of the output constitutes financial, trading, or investment advice."}}}