Install
openclaw skills install @mermail/mermail-agent-walletopenclaw skills install @mermail/mermail-agent-walletAgent Wallet tools are OAuth-only. API keys never expose them. Read tools.md and security.md before any transfer or funding handoff.
x-api-key alone) and the grant includes wallet:read. Transfers also need wallet:transact.tools/list (or inspect the host MCP panel). If get_agent_wallet is missing, stop: reconnect Mermail MCP OAuth, approve wallet:read / wallet:transact on consent, and ensure PayBox is connected in the console Agent Wallet page.$mermail-mcp only for connection troubleshooting; keep wallet workflows here.$mermail-cli supports mermail auth login and mermail wallet * (same OAuth-gated MCP tools). Prefer in-IDE MCP tools when already connected.MERMAIL_API_KEY may still be present for other Mermail skills. It cannot authorize Agent Wallet tools.
Checkout and buy links are browser-only. Mermail MCP redacts them as [redacted] in model-visible tool output. You cannot paste a MoonPay URL into chat, and you cannot un-redact or fetch an “alternate channel” for the same link.
For funding / onramp / Apple Pay / MoonPay / “nạp vào ví”:
list_mailboxes (prefer public_id).get_agent_wallet once. Confirm PayBox is connected. Note whether an EVM credential exists (console Funding uses a delegated EVM wallet for MoonPay).https://console.mermail.app/mailbox/{public_id}/agent-walletget_agent_wallet or get_agent_wallet_portfolio to check balances.If a paybox_* / buy-link tool returns url: "[redacted]", treat that as creation success with a browser-only handoff. Do not invent another retrieval method.
list_mailboxes (prefer public_id as mailboxId). Agent Wallet requires the workspace owner.get_agent_wallet with that mailboxId. Summarize connection status, credentials (never invent secrets), portfolio, limits, and open proposals.list_agent_wallet_credentials or get_agent_wallet_portfolio. Poll known requests with get_agent_wallet_request or get_paybox_invocation — never create or retry a transfer while polling.BASE or SOLANA), USDC amount, and destination from the user. Confirm the exact preview before writing.create_agent_wallet_transfer_proposal (does not submit or sign). Show proposal id, version, amount, chain, destination, and status.prepare_destructive_action for submit_agent_wallet_transfer with the exact final arguments, then call submit_agent_wallet_transfer once with that token, matching destination confirmation, and acknowledgeIrreversibleMainnetTransfer: true.pending, pending_paybox_approval, and SUBMISSION_UNKNOWN as not success. Never retry an uncertain submit. Ask the user to finish any PayBox passkey approval in the console when required.