Read stages touch no key. Every sign or broadcast intent clears the policy engine before any MPC share is released — a denied intent produces no signature, so it cannot be signed by anyone.
Stages
1. Query — R0 Read (read)
Check balances, prices, and fees before deciding to transact.
No keys involved. No state modified.
2. Prepare — R1 Prepare (prepare)
Construct an unsigned transaction payload. The blockchain is not touched — this builds the data structure you or the agent will later sign.
Token transfers are two-step: First call
resolve_asset to get the token contract address, then call the prepare tool with that contract. WalletSuite does not guess token contracts from symbols.
Amount handling: Provide either amount (human-readable, e.g., "1.5") or amountWei (smallest units, e.g., "1500000000000000000"). Never both — the server rejects ambiguous input.
3. Sign — R2 Execute (execute · wallets:sign)
Sign the prepared transaction. Signing runs through non-custodial MPC threshold signing — no full key ever assembled.
The policy engine is evaluated before any signature is produced. A denied intent is never signed.
Signing is idempotent — signing the same payload produces the same signature.
4. Broadcast — R2 Execute (execute · wallets:sign)
Submit the signed transaction to the blockchain.
Requirements:
confirmBroadcast: true— explicit confirmation- The agent holds the Execute level (
wallets:signscope) and the intent clears the policy engine
MPC Signing Flow
The end-to-end sequence that the Sign and Broadcast stages follow in a single MCP session:Data Flow Diagram
Related
Execution Levels
Which stages an agent can reach — tool profile plus token scopes.
Policy Gates
What the sign and broadcast stages are allowed to do.
Token Exchange
How scopes and tool profile reach the agent as a short-lived token.
Tool Reference
Full input/output schemas for every tool.