Skip to main content
Glama

eth_decode_revert

Read-only

Decode raw EVM revert data from a failed transaction or eth_call on Ethereum mainnet. Handles Error(string) reverts, Panic(uint256) assertions, custom Solidity errors (requires ABI), and silent reverts. Pure computation — no RPC call needed. Pass the hex revert data from a transaction receipt or eth_call error response.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
abiNoContract ABI for decoding custom errors. Pass as a JSON array of error definitions (or as a JSON-encoded string of that array). Only needed for custom errors beyond the built-in Error(string) and Panic(uint256).
revert_dataYesRaw revert data as hex (0x-prefixed). Use "0x" or empty string for a silent revert.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnlyHint and openWorldHint annotations, the description adds valuable behavioral context: it is 'pure computation — no RPC call needed,' handles specific revert types (Error(string), Panic(uint256), custom errors with ABI, and silent reverts), and specifies that '0x' or empty string represents a silent revert. This gives the agent a clear understanding of what the tool does without needing to infer from annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a compact two-sentence structure that front-loads the core purpose. It covers the tool's functionality, supported error types, the need for ABI in custom errors, and usage context without any redundant or filler content. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with moderate complexity, the description covers the essential aspects: what it decodes, input sources, special cases (silent reverts, custom errors), and the fact that no RPC call is needed. While there is no output schema, the description does not explicitly describe the return format, which might be a minor gap for an agent expecting decoded error details. However, the description is sufficient for selecting and invoking the tool confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides 100% coverage for both parameters, with detailed descriptions for revert_data and abi. The description adds minor clarification about the source of the revert data (from a transaction receipt or eth_call response) and that custom errors require an ABI, but it largely reinforces what the schema already states. Given the high schema coverage, a baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Decode raw EVM revert data from a failed transaction or eth_call on Ethereum mainnet.' It uses a specific verb and resource, and explicitly distinguishes from sibling tools by specifying 'Ethereum mainnet' and mentioning the types of reverts handled, which sets it apart from similar tools like eth_decode_calldata or mezo_decode_revert.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context on when to use the tool: it accepts revert data from a transaction receipt or eth_call error response, and notes that it is 'pure computation — no RPC call needed,' which implies it is appropriate when you already have the revert data and don't need to make a network call. However, it does not explicitly name alternative tools or state when not to use it, though the mainnet scope and sibling names provide implicit differentiation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.4/5.0
Disambiguation5/5

Every tool has a clearly distinct purpose with no ambiguity. The tools are organized into two parallel sets (Ethereum and Mezo) with identical functions, each targeting specific operations like contract calls, data decoding, and batching. Descriptions explicitly differentiate between read-only calls, pure computations, and revert handling, ensuring agents can easily select the correct tool.

Naming Consistency5/5

Tool names follow a highly consistent verb_noun pattern with a clear prefix (eth_ or mezo_) for network distinction. All tools use snake_case uniformly, and verbs like 'call', 'decode', and 'encode' are applied predictably across both sets, making the naming scheme intuitive and easy to parse.

Tool Count5/5

The 13 tools are well-scoped for an advanced blockchain MCP, covering essential operations for two EVM-compatible networks. Each tool earns its place by providing distinct functionality, such as contract interactions and ABI decoding, without redundancy. The count is appropriate for the domain, enabling comprehensive coverage without being overwhelming.

Completeness5/5

The tool surface is complete for its stated purpose of advanced blockchain interactions, offering full CRUD-like coverage for read-only operations and data decoding. It includes contract calls, multicall batching, and comprehensive decoding for calldata, logs, returns, and reverts on both Ethereum and Mezo, with no obvious gaps that would hinder agent workflows.

Resources