Build a transaction to sign
build_transactionBuild an unsigned Sui transaction for an action and get it back already checked: tide adds the protocol's own calls, picks the sender's gas coins, sets the budget, dry-runs the exact bytes on current mainnet state and runs the pre-sign check. Returns tx_bytes, a plain description, what leaves and enters the wallet, gas and the verdict. If it would fail or the check says danger you get the reason and no bytes. Amounts are whole coins. Actions: stake {amount, validator}; unstake {staked_sui_id, validator, amount}; lst_mint {lst, amount}; lst_redeem {lst, amount}; swap {from, to, amount, slippage_pct}; supply {protocol, asset, amount}; withdraw {protocol, asset, amount}. Lending protocols: suilend, navi, scallop. Swaps use the Aftermath router with slippage_pct (default 0.5) enforced on chain. steps runs several actions in one transaction; a step without amount takes the previous output. tide never signs: sign tx_bytes with your own wallet. Example: { sender: "0x...", action: "supply", protocol: "navi", asset: "USDC", amount: 100 }.
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": "build_transaction"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | swap: coin to buy. | |
| lst | No | lst_mint / lst_redeem: afSUI, haSUI, vSUI, sSUI, stSUI. | |
| from | No | swap: coin to sell. | |
| pass | No | Agent Pass id: build for the pass's agent within the owner's rules (allowance, venues, caps, price floor), prechecked, with a signed receipt. Actions: swap, supply (NAVI), stake (validator address), transfer (listed recipient name); each step needs an amount. | |
| asset | No | supply / withdraw: the coin (USDC, SUI or a coin type). | |
| steps | No | Instead of action: [{ action, ...fields }, ...] in one transaction. | |
| action | No | What to do. | |
| amount | No | Whole coins, or "all" where allowed. | |
| sender | No | The wallet that will sign (0x address). Not needed with pass. | |
| protocol | No | supply / withdraw: suilend, navi or scallop. | |
| validator | No | stake / unstake: validator address or name (stake picks one when left out). | |
| slippage_pct | No | swap: percent, default 0.5. | |
| staked_sui_id | No | unstake: one StakedSui object id. |