{"x402Version":2,"name":"FabTally Decode — on-chain decoder for developers & agents","description":"Per-call decoding reads that turn raw EVM bytes into human-readable JSON — the capability buried inside $49-999/mo RPC plans: decode-log (event LOGS -> event name + typed named args, nailing tuple/array/nested/anonymous/indexed cases), decode-calldata (function call -> signature + typed args), selector-lookup (4-byte selector or event topic -> signature), abi-fetch (verified ABI + proxy resolution). No ABI needed — resolves via Sourcify/Blockscout verified source + 4byte.directory. All read-only, keyless, stateless, descriptive. Paid via x402 (USDC on Base) or a prepaid credit key; each has a rate-limited free teaser. Also available as an MCP server. Chains: ethereum, base, arbitrum, optimism, polygon, bsc.","contact":"hello@fabtally.com","discovery":"https://decode.fabtally.com/agent/overview","resources":[{"resource":"https://decode.fabtally.com/v1/decode-log","type":"http","method":"POST","x402Version":2,"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"3000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xccB5d25C698FdfdaA7B21d54088774cF512A90e3","resource":"https://decode.fabtally.com/v1/decode-log","description":"Decode EVM event LOGS to human-readable JSON. Give {chain, tx_hash} to decode every log in a transaction, OR {chain, address, topics[], data} for a single log; optional {abi}. Returns each event's name, canonical signature, and named/typed args — correctly handling tuple/array/nested params, anonymous events, and indexed vs non-indexed. Resolves the ABI via Sourcify/Blockscout verified source + 4byte event signatures when none is supplied. Read-only, stateless.","mimeType":"application/json","maxTimeoutSeconds":60}]},{"resource":"https://decode.fabtally.com/v1/decode-calldata","type":"http","method":"POST","x402Version":2,"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"2000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xccB5d25C698FdfdaA7B21d54088774cF512A90e3","resource":"https://decode.fabtally.com/v1/decode-calldata","description":"Decode a contract function call. Give {chain, to?, data, abi?}; get the 4-byte selector resolved to a function signature (via provided ABI, the verified contract source, or 4byte.directory) plus fully decoded, typed arguments (tuples/arrays/nested included). Read-only, stateless.","mimeType":"application/json","maxTimeoutSeconds":60}]},{"resource":"https://decode.fabtally.com/v1/selector-lookup","type":"http","method":"POST","x402Version":2,"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"1000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xccB5d25C698FdfdaA7B21d54088774cF512A90e3","resource":"https://decode.fabtally.com/v1/selector-lookup","description":"Resolve a 4-byte function selector (0x + 8 hex) OR a 32-byte event topic hash (0x + 64 hex) to its human-readable signature(s) via 4byte.directory + openchain.xyz. Returns all matches (selectors can collide) with a verified flag. Read-only, stateless.","mimeType":"application/json","maxTimeoutSeconds":60}]},{"resource":"https://decode.fabtally.com/v1/abi-fetch","type":"http","method":"POST","x402Version":2,"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"2000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xccB5d25C698FdfdaA7B21d54088774cF512A90e3","resource":"https://decode.fabtally.com/v1/abi-fetch","description":"Fetch the verified ABI + metadata for a contract. Give {address, chain}; get the ABI JSON, verification status/source (Sourcify or Blockscout), the callable function/event signatures, and full proxy-implementation resolution (EIP-1967/1822/OZ-legacy/beacon) — returning the implementation's ABI when it's a proxy. Read-only, stateless.","mimeType":"application/json","maxTimeoutSeconds":60}]}],"lastUpdated":"2026-08-01T07:29:17.461Z"}