# base-transaction-decoder > One MCP tool: explain_transaction(tx_hash) -> strict JSON explanation of any Base mainnet (chain id 8453) transaction. Deterministic onchain decode, no LLM in the response path. MCP endpoint (streamable HTTP): POST https://api.0200project.com/mcp REST endpoint (standard x402 HTTP flow): POST https://api.0200project.com/explain with {"tx_hash":"0x..."} Pricing: 50 free calls per 24h per IPv4 address or IPv6 /64, resets daily - then $0.02 per call in USDC on Base via x402 (MCP: challenge in-band, attach payment at _meta["x402/payment"] and retry; REST: standard 402 + PAYMENT-REQUIRED header). No account, no API key. Pass: $9 buys 30 days / 10,000 calls - POST https://api.0200project.com/pass or the buy_pass MCP tool; present the token as X-BTX-Pass (REST) or _meta["btx/pass"] (MCP). ## Contracts - [OpenAPI](https://api.0200project.com/openapi.json): request/response schemas for the tools/call envelope - [Health](https://api.0200project.com/healthz): liveness and demand counters ## Docs - [Documentation](https://0200project.com/docs/): request format, field contract, x402 payment loop, self-hosting - [Site](https://0200project.com/): product overview - [Source](https://github.com/0200project/base-tx-explain) - MCP registry name: io.github.0200project/base-transaction-decoder