Skip to main content

Bands

BandWhat it includesTypical use
readbalances, prices, fee quotes, asset resolution, transaction queriessafe default
preparetransaction preparation toolsprepare transactions before signing or execution
signlocal OWS wallet and signing toolslocal detached signing
broadcastlocal OWS sign-and-sendexecute on-chain actions
If OWS is disabled, the sign and broadcast tools are not exposed even if the band set includes them.

Token-transfer pattern

When you are working with token transfers, use this order:
  1. Call resolve_asset with the chain and a token symbol, name, or contract
  2. Choose the intended candidate
  3. Pass the selected tokenContract into the transaction-preparation step
WalletSuite MCP does not guess token contracts from symbols or names.

Read Tools

get_balance

What it does: Returns the native balance for one address on one chain. Band: read Required inputs:
  • address
  • chain
Optional inputs:
  • fiat (defaults to USD)
Returns: Native asset balance and valuation details for the selected chain. Example prompt: Check the native balance for 0x... on ethereum.

get_all_balances

What it does: Returns native and token balances for one address on one chain. Band: read Required inputs:
  • address
  • chain
Optional inputs:
  • fiat (defaults to USD)
  • assetIds
  • includeNative (defaults to true)
Returns: A broader portfolio view for the selected chain. Example prompt: Show all balances for 0x... on ethereum.

get_price

What it does: Returns the current price for a token by symbol or by contract address. Band: read Required inputs:
  • either symbol
  • or both contractAddress and chain
Optional inputs:
  • base (defaults to USD)
Returns: Current token price data for the requested pair. Example prompt: What's the price of ETH?

get_fee_quote

What it does: Estimates the network fee for a native or token transfer before execution. Band: read Required inputs:
  • chain
  • from
  • to
  • amountWei
Optional inputs:
  • tokenContract
  • memo
  • fiat
Returns: Estimated network fee details for the proposed transfer. Example prompt: Estimate the fee to send 1000000 smallest-unit USDC from 0x... to 0x... on ethereum.

resolve_asset

What it does: Resolves a token symbol, name, or exact contract into one or more chain-specific asset candidates. Band: read Required inputs:
  • chain
  • exactly one of tokenContract, symbol, or name
Optional inputs:
  • limit (defaults to 5, max 10)
Returns: A candidate list plus a resolution status of unique, ambiguous, or not_found. Example prompt: Resolve USDC on ethereum so I can prepare a transfer.

get_tx_status

What it does: Returns the status of one transaction hash on one chain. Band: read Required inputs:
  • hash
  • chain
Returns: A transaction status such as PENDING, SUCCEEDED, FAILED, or UNKNOWN. Example prompt: What's the status of transaction 0x... on ethereum?

get_tx_history

What it does: Returns recent transaction history for one address on one chain. Band: read Required inputs:
  • address
  • chain
Optional inputs:
  • limit (defaults to 10, max 50)
Returns: A trimmed list of recent transactions for the address. Example prompt: Show me the last 10 transactions for 0x... on ethereum.

Prepare Tools

prepare_transfer

What it does: Prepares a structured transfer request for later execution. Band: prepare Required inputs:
  • chain
  • from
  • to
  • either amount or amountWei
Optional inputs:
  • symbol
  • tokenContract
  • nonce
  • maxPriorityFeePerGasWei
  • priorityFeeMultiplier
Important rules:
  • provide either amount or amountWei, never both
  • token transfers require tokenContract
  • if you only know the token symbol or name, resolve it first with resolve_asset
Returns: A structured prepared transfer result for the requested transaction. Example prompt: Prepare a transfer of 1 ETH from 0x... to 0x... on ethereum.

prepare_serialized_unsigned_tx

What it does: Prepares signing-ready raw unsigned transaction hex for local OWS signing or local OWS broadcast. Band: prepare Required inputs:
  • chain
  • to
  • either walletName or from
  • either amount or amountWei
Optional inputs:
  • walletName
  • from
  • symbol
  • tokenContract
  • nonce
  • maxPriorityFeePerGasWei
  • priorityFeeMultiplier
Important rules:
  • provide either amount or amountWei, never both
  • token transfers require tokenContract
  • if you only know the token symbol or name, resolve it first with resolve_asset
  • currently supports the OWS signing chains: ethereum and tron
Returns: Signing-ready raw unsigned transaction hex plus a review summary. Example prompt: Prepare a signing-ready transaction to send 1 ETH from my local wallet to 0x... on ethereum.

prepare_onramp

What it does: Prepares a MoonPay on-ramp widget URL for funding a destination address or a local OWS wallet on a supported chain. Band: prepare Required inputs:
  • chain
  • exactly one of address or walletName
Optional inputs:
  • currencyCode (defaults to the chain-native asset)
  • baseCurrencyCode (required if baseCurrencyAmount or quoteCurrencyAmount is provided)
  • one of baseCurrencyAmount or quoteCurrencyAmount
  • lockAmount (only valid with baseCurrencyAmount)
  • redirectUrl (HTTPS)
Returns: A MoonPay widget URL plus the resolved destination address and next-action hint. Notes:
  • Requires MoonPay credentials on the server. If unconfigured, the call returns a structured not_available error.
  • If walletName is provided, the tool resolves the chain-specific OWS address before building the widget URL.
Example prompt: Prepare an on-ramp to fund my treasury wallet with 500 USD on ethereum.

OWS Sign Tools

create_wallet

What it does: Creates a new local OWS wallet and derives addresses for the supported OWS chains. Band: sign Required inputs:
  • walletName
Availability: Owner mode only. Returns: Wallet metadata, derived addresses, and default policy metadata. Example prompt: Create a wallet called treasury.

get_wallet_address

What it does: Returns the address for a named local OWS wallet on a supported OWS chain. Band: sign Required inputs:
  • walletName
  • chain
Returns: The local wallet address for the selected chain. Example prompt: Get the ethereum address for my local wallet named treasury.

sign_transaction

What it does: Signs a raw unsigned transaction hex blob with a local OWS wallet. Band: sign Required inputs:
  • walletName
  • chain
  • unsignedTxHex
Returns: A signature and recovery id when available. Important note: This works with raw unsigned transaction hex. Example prompt: Sign this raw unsigned ethereum transaction hex with my treasury wallet.

create_custom_policy

What it does: Registers a local OWS custom policy with declarative chain and expiry constraints, and returns the resulting policyId for later agent-key binding. Band: sign Required inputs:
  • policyName
  • at least one of allowedChains or expiresAt
Optional inputs:
  • allowedChains (defaults to all OWS signing chains)
  • expiresAt (ISO 8601; defaults to 30 days from now)
  • maxPerTxNative, dailyNativeBudget — accepted in schema for forward compatibility; currently return an upstream-blocked error on calls that set them
Availability: Owner mode only. Returns: The new policy’s id, name, allowed chains, and expiry. Example prompt: Create a local OWS policy called trader-90d limited to ethereum and tron, expiring in 90 days.

create_agent_api_key

What it does: Mints a local OWS agent API key bound to a wallet (and optionally a specific policy), writes the secret token to a mode-0600 file, and returns metadata only. The raw token is never returned in chat. Band: sign Required inputs:
  • walletName
Optional inputs:
  • policyId (defaults to the wallet’s default policy)
  • tokenFile (defaults to ~/.walletsuite/ows-agent-token)
  • expiryMode — one of policy_default (default), one_year, or custom
    • policy_default inherits the bound policy’s expiry exactly as stored (wallet default policy: 90 days; custom policy without explicit expiresAt: 30 days)
    • one_year caps at 365 days from creation, but never later than the bound policy’s expiry
    • custom requires an explicit expiresAt that must stay within the bound policy’s expiry
  • expiresAt — required only when expiryMode=custom
Availability: Owner mode only. Returns: Key metadata (keyId, keyName, walletId, policyId, expiryMode, expiresAt), the token file path, and a nextAction hint to restart the server in agent mode with OWS_AGENT_TOKEN set from the file. Example prompt: Create an agent API key for my treasury wallet bound to the trader-90d policy.

OWS Broadcast Tools

send_transaction

What it does: Signs and broadcasts a raw unsigned transaction hex blob with a local OWS wallet. Band: broadcast Required inputs:
  • walletName
  • chain
  • unsignedTxHex
  • confirmBroadcast=true
Returns: The resulting transaction hash. Important notes:
  • this is the destructive path
  • explicit confirmation is required
  • the matching RPC URL must be configured
  • this works with raw unsigned transaction hex
Example prompt: Broadcast this unsigned ethereum transaction with my treasury wallet.