withdraw
Transfer tokens to an external wallet only after explicit user approval. Records paper transfers or enforces owner-only live transfers with confirmed amount and destination.
Instructions
Withdraw to an external wallet. ALWAYS requires explicit per-action approval: pass confirmed=true only after reading the amount AND destination back to the user and getting a yes — the server records the read-back values. Paper mode: records the withdrawal and debits the paper balance; status PAPER_RECORDED, no real movement. Live mode (Phase 2): Turnkey policy enforces withdrawals to the owner's pre-registered wallet only. Never auto-executes.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"trader_id": "<trader_id>",
"chain": "<chain>",
"token_address": "<token_address>",
"symbol": "<symbol>",
"amount": "<amount>",
"destination": "<destination>",
"confirmed": "<confirmed>"
},
"name": "withdraw"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| chain | Yes | ||
| amount | Yes | Human decimal amount | |
| symbol | Yes | ||
| confirmed | Yes | True only after the user explicitly confirmed amount + destination | |
| trader_id | Yes | ||
| destination | Yes | Destination address — read this back to the user before confirming | |
| token_address | Yes |