Troubleshooting
Symptom-first fixes for common mm CLI issues.
Authentication and access
MISSING_REFRESH_TOKEN or INVALID_CLI_TOKEN
Sign in again:
mm login
mm auth status
For CI or headless agents, use mm login --token "<cliToken:cliRefreshToken>".
Early Access required
If commands fail with authorization errors after sign-in, confirm your account has Early Access at metamask.io/agent-wallet.
Reset local session
mm reset
mm login
mm init --wallet server-wallet --mode guard
Perpetuals
PerpsRuntimeError: User or API Wallet does not exist
Deposit USDC before opening a position:
mm perps deposit --venue hyperliquid --amount <AMOUNT>
mm perps balance --venue hyperliquid
See Trade perpetuals.
Prediction markets
JsonRpcError: execution reverted on predict deposit
Run setup and fund the predict wallet:
mm predict setup
mm predict deposit --amount <AMOUNT>
Swaps
NO_QUOTES or no quote ID from mm swap quote
Liquidity may be unavailable for the token pair or chain. Do not call mm swap execute without a
valid quoteId from a successful quote step.
Swap execute fails after a quote
Re-run mm swap quote and execute immediately. Quotes can expire.
Transfers
Insufficient balance on the target chain
mm transfer only spends balances on the chain specified by --chain-id. Bridge tokens with
mm swap execute first.
ENS names not resolving
ENS is not supported for --to. Use a hex address.
Server-wallet polling
Command returned a pollingId but no hash
Use --wait on signing and transfer commands, or watch the job:
mm wallet requests watch --polling-id <POLLING_ID>
See Architecture.
MFA approval pending
If a job status is AWAITING_MFA, approve or reject the transaction in MetaMask Mobile or through
the email approval link.