# EVM Transaction Explainer

> EVM Transaction Explainer is a paid API for AI agents from agent-data-tools.revmesh2074.workers.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-26).

Decodes and explains an EVM transaction in plain English: status, sender, contract, ETH value, fee, function called, and all token transfers/approvals/mints/burns

## Facts

- Endpoint: GET https://agent-data-tools.revmesh2074.workers.dev/pack/tx-explain?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-26
- Activations on Zero: 0
- Provider: agent-data-tools.revmesh2074.workers.dev
- Website: https://agent-data-tools.revmesh2074.workers.dev
- Tags: x402
- Canonical page: https://www.zero.xyz/c/agent-data-tools-revmesh2074-workers-dev-evm-transaction-explainer-2d94cb39
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_mddv0VrsF-X5LV8J4Js1Y

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability agent-data-tools-revmesh2074-workers-dev-evm-transaction-explainer-2d94cb39
```

Example prompt: Can you explain what this Ethereum transaction actually did — hash 0x4a3b...c9f1 on Base — did it succeed, what function was called, and were any tokens transferred or approved?

## When to prefer this

Choose this endpoint when you need a human-readable breakdown of exactly what an on-chain EVM transaction did, across Base, Ethereum, Arbitrum, Optimism, or Polygon. It is ideal for verifying payments before trusting them, debugging failed or reverted transactions, auditing token approvals, or reporting on DeFi activity — especially when token transfers, mints, burns, or multicall patterns need to be decoded. Prefer this over a raw RPC eth_getTransactionReceipt call when you need decoded function names, token symbols, and plain-English summaries rather than raw hex data.

## Known failure modes

- Transaction hash not found on the specified chain — returns error if hash doesn't exist or wrong chain selected
- Invalid hash format — non-0x or malformed hash returns validation error
- Unrecognized function selector — function call decoded as raw calldata if not in known ABI list (ERC-20, ERC-721, WETH, permit, multicall)
- Network timeout or RPC error — upstream chain node unavailable
- Payment required error (402) if free call quota exhausted and no credits available

## How this service works

Explain transaction, decoded. Explain an EVM transaction in plain words: success or revert, sender and contract, ETH value, fee, the function called (decoded for common ERC-20, ERC-721, WETH, permit and multicall calls), and every token transfer, mint, burn and approval it emitted with amounts and symbols, plus one-line summaries. Base, Ethereum, Arbitrum, Optimism or Polygon. Use to check what a payment or contract call really did before trusting it or reporting it.

## Output

Returns a structured object containing: transaction hash, block number, chain, status (success/revert), from/to addresses, ETH value transferred, fee in ETH, gas used, decoded function call with name and arguments, array of token events (transfers, mints, burns, approvals) each with from/to, token address, amount, and symbol, plus an array of plain-English one-line summary strings describing what the transaction did overall.

## Request schema (JSON Schema)

```json
{
 "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": [
      "hash"
     ],
     "properties": {
      "hash": {
       "type": "string",
       "pattern": "^0x[0-9a-fA-F]{64}$",
       "examples": [
        "0x7d108fa131ed949c76d50caf2e7dfe25fc9903b9d276c40a0446d8afbdfe86b0"
       ],
       "description": "0x transaction hash"
      },
      "chain": {
       "type": "string",
       "examples": [
        "base"
       ],
       "description": "Network: base (default), eth, arb, op or polygon"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "to": {
       "type": "string"
      },
      "call": {
       "type": "object",
       "properties": {
        "args": {
         "type": "array",
         "items": {
          "type": "object",
          "properties": {
           "type": {
            "type": "string"
           },
           "value": {
            "type": "string"
           }
          }
         }
        },
        "function": {
         "type": "string"
        }
       }
      },
      "from": {
       "type": "string"
      },
      "hash": {
       "type": "string"
      },
      "pack": {
       "type": "string"
      },
      "block": {
       "type": "number"
      },
      "chain": {
       "type": "string"
      },
      "events": {
       "type": "array",
       "items": {
        "type": "object",
        "properties": {
         "to": {
          "type": "string"
         },
         "from": {
          "type": "string"
         },
         "kind": {
          "type": "string"
         },
         "token": {
          "type": "string"
         },
         "amount": {
          "type": "string"
         },
         "symbol": {
          "type": "string"
         }
        }
       }
      },
      "feeEth": {
       "type": "string"
      },
      "status": {
       "type": "string"
      },
      "gasUsed": {
       "type": "string"
      },
     
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "to": "0x…",
  "call": {
   "args": [
    {
     "type": "address",
     "value": "0x…"
    },
    {
     "type": "uint256",
     "value": "10000000"
    }
   ],
   "function": "transfer(address,uint256)"
  },
  "from": "0x…",
  "hash": "0x7d10…",
  "pack": "tx-explain",
  "block": 123456789,
  "chain": "Base",
  "events": [
   {
    "to": "0x…",
    "from": "0x…",
    "kind": "transfer",
    "token": "0x8335…",
    "amount": "10",
    "symbol": "USDC"
   }
  ],
  "feeEth": "0.0000012",
  "status": "success",
  "gasUsed": "52000",
  "summary": [
   "10 USDC sent from 0x1234…abcd to 0x5678…ef01"
  ],
  "valueEth": "0"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agent-data-tools-revmesh2074-workers-dev-evm-transaction-explainer-2d94cb39/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agent-data-tools.revmesh2074.workers.dev](https://www.zero.xyz/host/agent-data-tools.revmesh2074.workers.dev/llms.txt)
