AI agents invoke simulate to trigger actions in Gulltoppr. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call — builds kicked off, notifications sent, workflows started.
| Parameter | Type | Required | Description |
|---|---|---|---|
to | string | — | Raw form: target address. |
args | array | — | Function arguments, in order. Pass uint values as decimal strings. |
data | string | — | Raw form: calldata (0x…). |
from | string | Yes | The sender address (the user's wallet). No key is needed — nothing is signed. |
chain | string | Yes | Chain alias ("ethereum", "base", "optimism", "arbitrum", "polygon", "local") or numeric chain id. |
value | string | — | Native value in wei (decimal string), for payable functions. |
address | string | — | 0x contract address. |
rpc_url | string | — | Override RPC URL. Required for chains with no default (e.g. local/31337). |
function | string | — | Function name, or full signature like "transfer(address,uint256)" if overloaded. |
Parameters from the server's own tool schema.
Simulating a transaction executes it against the blockchain state (even if not broadcast), revealing state changes, asset movements, and gas costs. While it does not submit a real transaction, it triggers external computation and returns execution results including asset changes. This falls under Execute as it runs an operation whose effects depend on arguments.
From the tool's definition 'Simulate a call and return success, gas, decoded return, and best-effort state diff / asset changes / logs' — executes a blockchain call simulation including state diff and asset changes
Attacks that exploit this kind of access
Simulate a call and return success, gas, decoded return, and best-effort state diff / asset changes / logs. Provide a high-level call (address + function + args) or raw (to + data). It is categorised as a Execute tool in the Gulltoppr MCP Server, which means it can trigger actions or run processes. Use rate limits and argument validation.
simulate accepts 9 parameters: to, args, data, from, chain, value, address, rpc_url, function. Required: from, chain. The full parameter table on this page comes from the server's own tool schema.
Register the Gulltoppr MCP server in PolicyLayer and add a rule for simulate: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Gulltoppr. Nothing to install.
simulate is a Execute tool with high risk. Execute tools should be rate-limited and have argument validation enabled.
Yes. Add a rate_limit block to the simulate rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for simulate. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
simulate is provided by the Gulltoppr MCP server (https://mcp.gulltoppr.dev/mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
Every MCP server has a record like this.
Type a name, get the same breakdown: verified identity, auth posture, risk grade, capabilities, recommended policy.
Teams ship this data inside their own products. See what a licence covers →