Decode a transaction and compare with declared intent (free)
check_calldata_intentDecode EVM calldata and Solana transactions, compare them with the intended payment, and flag mismatches or undecodable data as unsafe to sign.
Instructions
Anti blind-signing. EVM: decodes what calldata will actually do (ERC-20 transfer/approve/permit, setApprovalForAll, ownership transfer, native transfer). Solana: decodes a whole base64 transaction (SPL Token / Token-2022 Transfer, TransferChecked, Approve, SetAuthority, CloseAccount, Burn; System Transfer / Assign; ATA creation). Compares it with the payment the agent believes it is making. decision match = does what you declared; mismatch = different recipient/amount/asset, or an approval / authority change instead of a payment — do not sign; unknown = could not decode (including address-lookup-table accounts), which is NOT the same as safe. Free, no API key.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "check_calldata_intent"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| data | No | EVM only: 0x-prefixed hex calldata. | |
| value | No | EVM only: native value in wei. | |
| intent | No | ||
| network | No | 'solana' to decode a Solana transaction; EVM chain name or CAIP-2 id otherwise. | |
| contract | No | EVM only: the transaction's `to` (token contract, or the recipient for native transfers). | |
| transaction | No | Solana only: base64-serialized transaction or message. |