putty
MCPOnchainTransactions

simulate_transaction

Simulate an EVM transaction before anyone signs it, and report whether it would succeed. Runs `eth_call` (and a trace where the RPC supports one) against the chain's own RPC — it never signs and never sends, so it is safe against a mainnet endpoint. Returns either success with the balance changes and the emitted events, or a failure with the node's own revert reason. A revert is never reported as a success. The `from` address matters: an `eth_call` runs against that account's state, so simulate from the wallet the user will actually sign with or the answer is about the wrong account. Use this to check a transaction before handing it to a user for approval; the signing tools run the same check automatically and attach the result as the `simulation` on the returned `TxRequest`.

Simulate an EVM transaction before anyone signs it, and report whether it would succeed. Runs eth_call (and a trace where the RPC supports one) against the chain's own RPC — it never signs and never sends, so it is safe against a mainnet endpoint.

Input

The tool takes a single JSON object. Every field, its type, and an example are on the generated reference at GET /mcp/tools, under this tool's name.

Calling it

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": { "name": "simulate_transaction", "arguments": {} }
}

Put your arguments in place of the empty object. A call that fails comes back as a normal result carrying isError: true and a message naming what went wrong, not as a JSON-RPC protocol error.

Notes

Returns either success with the balance changes and the emitted events, or a failure with the node's own revert reason. A revert is never reported as a success. The from address matters: an eth_call runs against that account's state, so simulate from the wallet the user will actually sign with or the answer is about the wrong account. Use this to check a transaction before handing it to a user for approval; the signing tools run the same check automatically and attach the result as the simulation on the returned TxRequest.

The full request and response shape, and a live playground, live on the generated reference at GET /mcp/tools.

On this page