Skip to main content
Glama
clear-signing-mcp

clear-signing-mcp

Official
by B3Pay

Simulate a transaction

simulate_transaction
Read-onlyIdempotent

Simulate EVM calls against current chain state as a given account without signing or sending, returning success status, balance changes, approvals with unlimited ones flagged, and token transfers.

Instructions

Simulate one EVM call, or several in order, against current chain state with eth_simulateV1, as the given account, without signing or sending anything. Returns whether each call succeeds, the account's balance changes, the approvals granted with unlimited ones flagged, and token transfer events. Use it with explain_transaction before proposing a transaction.

Input Schema

NameRequiredDescriptionDefault
fromYesThe account the calls run as; no key is needed
callsYesOne call, or a batch run in order
chainIdYesEIP-155 chain ID: 1 Ethereum, 8453 Base, 42161 Arbitrum One, 10 OP Mainnet, 11155111 Sepolia, 84532 Base Sepolia
blockNumberNoSimulate on top of this block instead of the latest

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/non-destructive, and the description still adds real substance beyond them: no signing or sending occurs, calls execute in order against current state, and the return payload is characterized (per-call success, balance changes, approvals with unlimited ones flagged, token transfer events). That is exactly the behavioral and return-shape context an agent needs for a simulation tool with no output schema.

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?

Two sentences, front-loaded with the action and mechanism, then the return contents, then the workflow instruction. Every clause carries information; nothing is redundant padding.

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

Completeness5/5

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

With no output schema, the description correctly takes on the burden of describing return values, and with annotations covering safety it need not re-explain side effects. Purpose, execution mode, return contents, and sibling workflow are all covered, leaving no gap an agent would hit before invoking it.

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?

Schema coverage is 100% and the schema already explains `from` ("no key is needed"), `calls` ("a batch run in order"), and `blockNumber`. The description's mentions of "as the given account" and "several in order" largely restate those field descriptions, and it says nothing about `blockNumber`, so it adds only marginal meaning over the schema.

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 names a specific verb and resource ("Simulate one EVM call, or several in order") and pins down the mechanism (eth_simulateV1, current chain state, as the given account, no signing or sending). It is clearly distinguishable from the sibling explain_transaction, which analyzes rather than simulates, and the batch capability is stated up front.

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?

It gives an explicit workflow cue: "Use it with explain_transaction before proposing a transaction," which tells the agent this is a pre-flight check tool. It stops short of stating when not to use it or what to do instead for pure read-only queries, so no explicit alternative/exclusion is offered.

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