{"uid":"cap_fF3w0micuWFy-qkamlm5k","slug":"signcheck-pre-sign-safety-checker-6fd62208","name":"SignCheck Pre-Sign Safety Checker","description":"Pre-sign safety check for AI agent wallets. Decodes a transaction, an EIP-712 signature request (EIP-2612 Permit, Permit2 allowance and transfer, EIP-3009 TransferWithAuthorization as used by x402, Seaport orders), an EIP-7702 delegation, or an x402 payment (402 terms + the payload about to be sent) into plain English, and returns SAFE / CAUTION / DANGER with risk flags: unlimited or EOA approvals, setApprovalForAll, fake USDC / Permit2 domains, x402 overpay / wrong payTo / wrong asset, ownership and proxy changes, OFAC SDN counterparties. The paid tier adds on-chain facts (EOA vs contract, token metadata) and an eth_call simulation on Base, Ethereum or Base Sepolia. Read-only, informational.","url":"https://signcheck.agentgate.workers.dev/v1/lite?utm_source=zero.xyz","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET"],"type":"string"},"queryParams":{"type":"object","required":["to"],"properties":{"to":{"type":"string","description":"tx.to"},"data":{"type":"string","description":"tx.data (0x hex)"},"from":{"type":"string","description":"tx.from (enables simulation)"},"chain":{"type":"string","description":"base (default), ethereum, base-sepolia or a chain id"},"value":{"type":"string","description":"tx.value in wei"}},"description":"Search intents: decode transaction, signature risk check, permit2 decoder, eip712 safety, wallet security api, approve risk check"}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"kind":{"type":"string"},"tier":{"type":"string"},"chain":{"type":"object"},"flags":{"type":"array"},"action":{"type":"string"},"engine":{"type":"string"},"onchain":{"type":"object"},"summary":{"type":"string"},"verdict":{"type":"string"},"sanctions":{"type":"object"},"risk_score":{"type":"number"},"counterparties":{"type":"array"}}}}}}},"responseSchema":{"type":"json","example":{"kind":"transaction","tier":"full","chain":{"id":8453,"name":"Base"},"flags":[{"code":"SPENDER_IS_EOA","message":"The token allowance goes to 0x3c1A…8d6F, a plain wallet (no contract code). Legitimate apps approve contracts; approvals to wallets are how drainer kits steal funds.","severity":"critical"},{"code":"UNLIMITED_APPROVAL","message":"Grants an UNLIMITED allowance to 0x3c1A…8d6F.","severity":"medium"}],"action":"erc20_approve","engine":"signcheck-0.1","onchain":{"block":52942270,"chain":"Base","tokens":[{"name":"USD Coin","symbol":"USDC","address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6}],"available":true,"simulation":{"success":true}},"summary":"Approve 0x3c1A…8d6F to spend UNLIMITED USDC from your wallet","verdict":"DANGER","sanctions":{"list":"US Treasury OFAC Specially Designated Nationals (SDN) list","matches":0,"list_date":"2026-10-21","evm_addresses":124},"risk_score":75,"counterparties":[{"type":"eoa","label":null,"roles":["spender"],"address":"0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F"}]}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.005","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.005/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_ilqjRk9BNcOTTNtAhetxV","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.005","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Decodes blockchain transactions, EIP-712 signatures, and x402 payments into plain English and returns a SAFE/CAUTION/DANGER verdict with specific risk flags","exampleAgentPrompt":"Before I sign this transaction, run it through SignCheck — the contract is 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 on Base, with calldata 0x095ea7b3000000000000000000000000...ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, and tell me if it's safe or dangerous.","exampleUseCases":[{"title":"Unlimited token approval safety check","prompt":"I'm about to approve a DApp to spend my USDC on Base — the spender is 0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F and the calldata is 0x095ea7b3... with max uint256 as the amount. Is this safe to sign or is something fishy going on?"},{"title":"x402 payment verification before sending","prompt":"Before my agent sends this x402 payment, check that the payTo address and asset are correct and I'm not overpaying — the destination is 0xABC123... on Base and the amount is 5 USDC."},{"title":"Phishing Permit2 signature detection","prompt":"Can you decode this EIP-712 Permit2 signature request I just got from a website and tell me if the domain looks legitimate or if it could be a fake draining my wallet?"}],"resultDescription":"A JSON object containing: a verdict (SAFE, CAUTION, or DANGER), a numeric risk score (0-100), a plain-English summary of what the transaction does, an array of risk flags with severity levels (critical/medium/low) and human-readable messages, decoded action type (e.g. erc20_approve), counterparty addresses with EOA/contract classification, OFAC sanctions match count, and optionally on-chain simulation results and token metadata for paid tier calls.","failureModes":["Missing required 'to' query parameter returns validation error","Malformed or non-hex 'data' parameter causes decode failure","Unsupported chain ID returns error or defaults to Base","Unrecognized transaction type may return generic or incomplete decoding","OFAC list lookup may be slightly stale based on list_date in response","Simulation (paid tier only) may fail if eth_call reverts on-chain"],"whenToPreferThis":"Use SignCheck when an AI agent wallet is about to sign any EVM transaction, EIP-712 permit, Permit2 allowance, Seaport order, EIP-7702 delegation, or x402 payment and needs a human-readable safety verdict before proceeding. It is especially valuable for catching drainer patterns (unlimited approvals to EOAs, fake token contract domains, setApprovalForAll abuse), OFAC sanctions hits, and x402 payment parameter mismatches. Prefer this over generic blockchain explorers when you need an automated, structured SAFE/DANGER verdict rather than raw decoded data.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-30T06:35:27.313Z","isFirstParty":false,"canonicalSlug":"signcheck-pre-sign-safety-checker-6fd62208"}