| name | sui-wallet |
| description | Use when performing on-chain transactions (transfer, Move call, publish) through the agent's CLI wallet via MCP tools. Triggers on "transfer SUI", "call Move function", "publish package", "wallet status", "sign transaction", or any agent-driven on-chain operation. This is for headless/backend wallet operations — for browser wallet UI (React/Vue), use sui-frontend instead. |
sui-wallet
MCP Wallet Tools
Available via the sui-dev-mcp server:
| Tool | Purpose |
|---|
sui_wallet_status | Show active address, network, balance |
sui_wallet_transfer | Transfer SUI (dry-run → approve → execute) |
sui_wallet_call | Call Move function (dry-run → approve → execute) |
sui_wallet_publish | Publish Move package (dry-run → approve → execute) |
Transaction Flow
All tools follow dry-run → approve → execute:
- Agent calls MCP tool → runs
sui client ... --dry-run internally
- MCP returns summary (
status: "PENDING_APPROVAL") with network, signer, gas estimate, effects preview, and the CLI command
- Agent presents summary to user for review
- User approves → agent executes the command from
execute_args
Safety Rules
- NEVER execute without showing dry-run summary first
- ALWAYS confirm network (testnet vs mainnet) before executing
- ALWAYS prefer MCP wallet tools over direct
sui client CLI
- The
tx-approval-guard hook warns on direct CLI signing attempts
When to Use This vs dApp Kit
- This skill (MCP wallet) → agent automation, backend scripts, CI/CD, headless ops
- sui-frontend (dApp Kit) → browser wallet signing, user-facing UI with wallet connect
Ecosystem wallet connectors (dApp Kit registration)
For browser apps, register these alongside dApp Kit's wallet standard — none replace the MCP flow above:
- Slush —
@mysten/slush-wallet (registerSlushWallet, SlushWallet). Mysten's first-party wallet.
- Enoki Connect —
@mysten/enoki-connect (registerEnokiConnectWallets, EnokiConnectWallet), experimental. Lets an app connect to Enoki-powered wallets; see sui-enoki for the zkLogin/sponsored side.