✓ Verified 🛒 E-commerce ✓ Enhanced Data

Moonpay

Your agent needs money.

Rating
3.9 (462 reviews)
Downloads
4,324 downloads
Version
1.0.0

Overview

Your agent needs money.

Complete Documentation

View Source →

MoonPay CLI

Your agent needs money. Give your agents crypto.

MoonPay is the crypto onramp for AI agents — non-custodial wallets, swaps, bridges, transfers, DCA, limit orders, deposits, market data, and fiat on/off ramps. One CLI for everything.

Base URL: https://agents.moonpay.com

What is MoonPay CLI?

MoonPay CLI gives AI agents and humans full access to crypto:

  • Non-custodial — Local wallets with OS keychain encryption. Keys never leave the machine.
  • Multi-chain — Solana, Ethereum, Base, Polygon, Arbitrum, Optimism, BNB, Avalanche, TRON, Bitcoin
  • Multi-surface — MoonPay CLI (mp), local MCP server (mp mcp), web chat
  • Trading — Swap, bridge, transfer, DCA, limit orders, stop losses
  • Market intelligence — Trending tokens, token analysis, price data, price alerts
  • Deposits — Multi-chain deposit links with automatic stablecoin conversion
  • Fiat on/off-ramp — Buy crypto with fiat (USD), virtual accounts with KYC
  • Deposits — Multi-chain deposit links with automatic stablecoin conversion

Quick Start

Option A: CLI (Recommended)

bash
# Install
npm install -g @moonpay/cli

# Login (opens browser for captcha verification)
mp login --email [email protected]
# Open the URL, solve captcha, get code from email
mp verify --email [email protected] --code 123456

# Create a wallet
mp wallet create --name main

# List tools
mp tools

# Search for a token
mp token search --query "SOL" --chain solana --limit 5

# Check balances
mp token balance list --wallet main --chain solana

Option B: MCP Server (Local)

Run mp mcp to start a local MCP server over stdio. This exposes all CLI + remote tools to any MCP-compatible client (Claude Desktop, Cursor, Claude Code).

json
{
  "mcpServers": {
    "moonpay": {
      "command": "mp",
      "args": ["mcp"]
    }
  }
}

Option C: REST API

bash
curl -X POST https://agents.moonpay.com/api/tools/token_search \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"query": "SOL", "chain": "solana", "limit": 5}'

Authentication

CLI: Run mp login --email [email protected] to open a browser page with hCaptcha. After solving the captcha, a verification code is sent to your email. Run mp verify --email [email protected] --code 123456. Credentials are stored encrypted at ~/.config/moonpay/credentials.json and auto-refresh. Run mp logout to clear stored credentials.

REST API: Use a Bearer token in the Authorization header. Obtain tokens via the login/verify flow or OAuth 2.0 with PKCE.

Rate limits: 5 requests/min (anonymous), 60 requests/min (authenticated).

Terms of Use: https://www.moonpay.com/legal/terms_of_use_europe_hypermint


Core Tools

Wallet Management

Wallets are HD (BIP39) — one mnemonic derives addresses for all chains. EVM wallets share a single address across Ethereum, Base, Polygon, Arbitrum, Optimism, BNB, and Avalanche.

bash
mp wallet create --name main          # Create HD wallet (Solana + EVM + Bitcoin + TRON)
mp wallet import --name funded        # Import from mnemonic or private key (interactive)
mp wallet list                         # List all wallets (shows all chain addresses)
mp wallet retrieve --wallet main       # Get wallet details
mp wallet rename --wallet old --name new  # Rename a wallet
mp wallet export --wallet main         # Export mnemonic (interactive only)
mp wallet delete --wallet old          # Permanently delete a wallet

Token Trading

Swaps, bridges, and transfers sign locally — keys never leave the machine.

bash
# Swap (same chain)
mp token swap \
  --wallet main --chain solana \
  --from-token EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v \
  --from-amount 5 \
  --to-token So11111111111111111111111111111111111111111

# Bridge (cross chain)
mp token bridge \
  --from-wallet main --from-chain polygon \
  --from-token 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174 \
  --from-amount 6 \
  --to-chain solana \
  --to-token EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v \
  --to-wallet <solana-address>

# Transfer
mp token transfer \
  --wallet main --chain solana \
  --token EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v \
  --amount 10 \
  --to <recipient-address>

Market Data

bash
# Search tokens
mp token search --query "BONK" --chain solana --limit 5

# Token details + market data
mp token retrieve --token <address> --chain solana

# Trending tokens
mp token trending list --chain solana --limit 10 --page 1

# Check balances
mp token balance list --wallet <address> --chain solana

Fiat On-Ramp

bash
# Buy crypto with fiat (amount in USD, returns checkout URL)
mp buy --token sol --amount 50 --wallet <address> --email <email>

# Virtual account (KYC-based fiat on-ramp)
mp virtual-account create
mp virtual-account wallet register --wallet main --chain solana
mp virtual-account onramp create --name "USD to USDC" --fiat USD --chain solana --stablecoin USDC

Deposits

bash
# Create a multi-chain deposit link
mp deposit create --name "My Deposit" --wallet <address> --chain solana --token USDC

# Check deposit details
mp deposit retrieve --id <deposit-id>

# List deposit transactions
mp deposit transaction list --id <deposit-id>

Signing

bash
# Sign a message
mp message sign --wallet main --chain solana --message "hello"

# Sign a transaction
mp transaction sign --wallet main --chain solana --transaction <base64>

# Send a signed transaction
mp transaction send --chain solana --transaction <signed-base64>


Safety Rules

CLI tools (mp token swap, mp token bridge, mp token transfer) handle the full build, sign, broadcast flow automatically. Keys are signed locally and never sent to the server.

For server-side tools (REST API / MCP), use the simulate-then-execute pattern:

  • Always simulate first — call with "simulation": true to get a quote
  • Show the quote — display expected output, fees, slippage
  • Get explicit confirmation — never auto-execute without user approval
  • Execute — call with "simulation": false only after confirmation

CLI Tools by Category

Auth

ToolDescription
loginOpen browser for hCaptcha verification, sends email code
verifyVerify login code and store encrypted credentials
logoutLog out and clear stored credentials
user retrieveGet the currently authenticated user
consent checkCheck whether Terms of Service have been accepted
consent acceptAccept the Terms of Service and Privacy Policy

Wallet

ToolDescription
wallet createCreate multi-chain HD wallet
wallet importImport from mnemonic or private key
wallet listList all local wallets
wallet retrieveGet wallet details
wallet renameRename a wallet
wallet deleteDelete a local wallet
wallet exportExport mnemonic (interactive only)

Token Trading

ToolDescription
token swapSwap tokens on the same chain
token bridgeBridge tokens across chains
token transferTransfer tokens to another address

Market Data

ToolDescription
token searchSearch tokens by name/symbol/address
token retrieveToken metadata + market data
token trending listTrending tokens by chain
token balance listList token balances for a wallet
bitcoin balance retrieveGet BTC balance

Transactions

ToolDescription
transaction listList swap/bridge transaction history
transaction retrieveGet transaction details
transaction signSign a transaction locally
transaction sendBroadcast a signed transaction
message signSign a message (EIP-191, ed25519, ECDSA)

Fiat

ToolDescription
buyBuy crypto with fiat via MoonPay checkout (amount in USD)
virtual-account createCreate virtual account + start KYC
virtual-account retrieveGet account status
virtual-account wallet listList wallets registered for fiat on-ramp
virtual-account wallet registerRegister wallet for fiat on-ramp
virtual-account onramp createCreate fiat to stablecoin onramp
virtual-account onramp retrieveGet onramp details and banking info
virtual-account onramp listList onramps
virtual-account onramp deleteCancel an onramp
virtual-account onramp payment createCreate open banking payment link
virtual-account onramp payment retrieveGet payment status
virtual-account transaction listList fiat to stablecoin conversion history
virtual-account kyc restartStart or restart KYC verification
virtual-account kyc continueCheck KYC status or get verification link
virtual-account agreement listList legal agreements (pending or accepted)
virtual-account agreement acceptAccept a required legal agreement

Deposits

ToolDescription
deposit createCreate multi-chain deposit link (USDC, USDC.e, USDT)
deposit retrieveGet deposit details
deposit transaction listList incoming deposit transactions

x402

ToolDescription
x402 requestMake paid API request with automatic payment

Skills

ToolDescription
skill listList available AI skills
skill retrieveGet skill instructions
skill installInstall skills for Claude Code

Feedback

ToolDescription
feedback createSubmit feedback (type: bug, feature, or general)

x402 Rate Limit Upgrade

Pay to increase your API rate limit via the x402 protocol.

Endpoint: POST https://agents.moonpay.com/x402/upgrade

DurationPriceLength
day$1 USDC24 hours
month$20 USDC30 days
bash
# With CLI (handles payment automatically)
mp upgrade --duration day --wallet main --chain solana

Payment: USDC via x402 on Solana or Base. Requires login. Payment is only settled on success.


Pre-Built Skills

Install AI skills for Claude Code:

bash
mp skill install

SkillDescription
moonpay-authCLI setup, login, wallet creation
moonpay-block-explorerOpen tx/wallet/token in chain explorers
moonpay-buy-cryptoBuy crypto with fiat
moonpay-check-walletView balances and portfolio
moonpay-depositCreate deposit links with stablecoin conversion
moonpay-discover-tokensSearch, trending, risk assessment
moonpay-export-dataExport portfolio/tx history to CSV/JSON
moonpay-feedbackSubmit bug reports and feature requests
moonpay-mcpConfigure MoonPay as MCP server
moonpay-missionsGuided walkthrough of capabilities
moonpay-polymarket-readyFund Polygon wallet for Polymarket
moonpay-price-alertsDesktop notifications at target prices
moonpay-swap-tokensSwap and bridge tokens
moonpay-trading-automationDCA, limit orders, stop losses via cron/launchd
moonpay-upgradeUpgrade rate limit via x402 payment
moonpay-virtual-accountFiat on-ramp with KYC
moonpay-x402Paid API requests

Supported Chains

ChainChain IDFeatures
SolanasolanaFull trading, limit orders, DCA
EthereumethereumSwap, bridge, transfer, market data
BasebaseSwap, bridge, transfer, market data
PolygonpolygonSwap, bridge, transfer, market data
ArbitrumarbitrumSwap, bridge, transfer, market data
OptimismoptimismSwap, bridge, transfer, market data
BNBbnbSwap, bridge, transfer, market data
AvalancheavalancheSwap, bridge, transfer, market data
TRONtronWallet addresses
BitcoinbitcoinBalance, bridges

Tips for Agents

  • Resolve token addresses first — call token search before trading if you only have a name/symbol
  • Check balances — use token balance list before trading to confirm available amounts
  • Native token addresses — Solana: So11111111111111111111111111111111111111111, EVM: 0x0000000000000000000000000000000000000000
  • EVM wallets share one address across Ethereum, Base, Polygon, Arbitrum, Optimism, BNB, Avalanche
  • CLI signs locallymp token swap, mp token bridge, mp token transfer handle the full flow (build → sign → broadcast)
  • Use -f compact when piping CLI output to jq for scripting

Links

  • Web App: https://agents.moonpay.com
  • CLI: npm install -g @moonpay/cli
  • MCP Server: mp mcp (local, stdio)
  • Skills: mp skill install

Installation

Terminal bash

openclaw install moonpay
    
Copied!

💻Code Examples

mp token balance list --wallet main --chain solana

mp-token-balance-list---wallet-main---chain-solana.txt
### Option B: MCP Server (Local)

Run `mp mcp` to start a local MCP server over stdio. This exposes all CLI + remote tools to any MCP-compatible client (Claude Desktop, Cursor, Claude Code).

-d '{"query": "SOL", "chain": "solana", "limit": 5}'

--d-query-sol-chain-solana-limit-5.txt
## Authentication

**CLI:** Run `mp login --email [email protected]` to open a browser page with hCaptcha. After solving the captcha, a verification code is sent to your email. Run `mp verify --email [email protected] --code 123456`. Credentials are stored encrypted at `~/.config/moonpay/credentials.json` and auto-refresh. Run `mp logout` to clear stored credentials.

**REST API:** Use a Bearer token in the `Authorization` header. Obtain tokens via the login/verify flow or OAuth 2.0 with PKCE.

**Rate limits:** 5 requests/min (anonymous), 60 requests/min (authenticated).

**Terms of Use:** https://www.moonpay.com/legal/terms_of_use_europe_hypermint

---

## Core Tools

### Wallet Management

Wallets are HD (BIP39) — one mnemonic derives addresses for all chains. EVM wallets share a single address across Ethereum, Base, Polygon, Arbitrum, Optimism, BNB, and Avalanche.

mp wallet delete --wallet old # Permanently delete a wallet

mp-wallet-delete---wallet-old--permanently-delete-a-wallet.txt
### Token Trading

Swaps, bridges, and transfers sign locally — keys never leave the machine.

mp transaction send --chain solana --transaction <signed-base64>

mp-transaction-send---chain-solana---transaction-signed-base64.txt
---

## Safety Rules

CLI tools (`mp token swap`, `mp token bridge`, `mp token transfer`) handle the full build, sign, broadcast flow automatically. Keys are signed locally and never sent to the server.

For server-side tools (REST API / MCP), use the **simulate-then-execute** pattern:

1. **Always simulate first** — call with `"simulation": true` to get a quote
2. **Show the quote** — display expected output, fees, slippage
3. **Get explicit confirmation** — never auto-execute without user approval
4. **Execute** — call with `"simulation": false` only after confirmation

---

## CLI Tools by Category

### Auth
| Tool | Description |
|------|-------------|
| `login` | Open browser for hCaptcha verification, sends email code |
| `verify` | Verify login code and store encrypted credentials |
| `logout` | Log out and clear stored credentials |
| `user retrieve` | Get the currently authenticated user |
| `consent check` | Check whether Terms of Service have been accepted |
| `consent accept` | Accept the Terms of Service and Privacy Policy |

### Wallet
| Tool | Description |
|------|-------------|
| `wallet create` | Create multi-chain HD wallet |
| `wallet import` | Import from mnemonic or private key |
| `wallet list` | List all local wallets |
| `wallet retrieve` | Get wallet details |
| `wallet rename` | Rename a wallet |
| `wallet delete` | Delete a local wallet |
| `wallet export` | Export mnemonic (interactive only) |

### Token Trading
| Tool | Description |
|------|-------------|
| `token swap` | Swap tokens on the same chain |
| `token bridge` | Bridge tokens across chains |
| `token transfer` | Transfer tokens to another address |

### Market Data
| Tool | Description |
|------|-------------|
| `token search` | Search tokens by name/symbol/address |
| `token retrieve` | Token metadata + market data |
| `token trending list` | Trending tokens by chain |
| `token balance list` | List token balances for a wallet |
| `bitcoin balance retrieve` | Get BTC balance |

### Transactions
| Tool | Description |
|------|-------------|
| `transaction list` | List swap/bridge transaction history |
| `transaction retrieve` | Get transaction details |
| `transaction sign` | Sign a transaction locally |
| `transaction send` | Broadcast a signed transaction |
| `message sign` | Sign a message (EIP-191, ed25519, ECDSA) |

### Fiat
| Tool | Description |
|------|-------------|
| `buy` | Buy crypto with fiat via MoonPay checkout (amount in USD) |
| `virtual-account create` | Create virtual account + start KYC |
| `virtual-account retrieve` | Get account status |
| `virtual-account wallet list` | List wallets registered for fiat on-ramp |
| `virtual-account wallet register` | Register wallet for fiat on-ramp |
| `virtual-account onramp create` | Create fiat to stablecoin onramp |
| `virtual-account onramp retrieve` | Get onramp details and banking info |
| `virtual-account onramp list` | List onramps |
| `virtual-account onramp delete` | Cancel an onramp |
| `virtual-account onramp payment create` | Create open banking payment link |
| `virtual-account onramp payment retrieve` | Get payment status |
| `virtual-account transaction list` | List fiat to stablecoin conversion history |
| `virtual-account kyc restart` | Start or restart KYC verification |
| `virtual-account kyc continue` | Check KYC status or get verification link |
| `virtual-account agreement list` | List legal agreements (pending or accepted) |
| `virtual-account agreement accept` | Accept a required legal agreement |

### Deposits
| Tool | Description |
|------|-------------|
| `deposit create` | Create multi-chain deposit link (USDC, USDC.e, USDT) |
| `deposit retrieve` | Get deposit details |
| `deposit transaction list` | List incoming deposit transactions |

### x402
| Tool | Description |
|------|-------------|
| `x402 request` | Make paid API request with automatic payment |

### Skills
| Tool | Description |
|------|-------------|
| `skill list` | List available AI skills |
| `skill retrieve` | Get skill instructions |
| `skill install` | Install skills for Claude Code |

### Feedback
| Tool | Description |
|------|-------------|
| `feedback create` | Submit feedback (type: bug, feature, or general) |

---

## x402 Rate Limit Upgrade

Pay to increase your API rate limit via the x402 protocol.

**Endpoint:** `POST https://agents.moonpay.com/x402/upgrade`

| Duration | Price | Length |
|----------|-------|--------|
| day | $1 USDC | 24 hours |
| month | $20 USDC | 30 days |

mp upgrade --duration day --wallet main --chain solana

mp-upgrade---duration-day---wallet-main---chain-solana.txt
Payment: USDC via x402 on Solana or Base. Requires login. Payment is only settled on success.

---

## Pre-Built Skills

Install AI skills for Claude Code:
example.sh
# Install
npm install -g @moonpay/cli

# Login (opens browser for captcha verification)
mp login --email [email protected]
# Open the URL, solve captcha, get code from email
mp verify --email [email protected] --code 123456

# Create a wallet
mp wallet create --name main

# List tools
mp tools

# Search for a token
mp token search --query "SOL" --chain solana --limit 5

# Check balances
mp token balance list --wallet main --chain solana
example.json
{
  "mcpServers": {
    "moonpay": {
      "command": "mp",
      "args": ["mcp"]
    }
  }
}
example.sh
curl -X POST https://agents.moonpay.com/api/tools/token_search \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"query": "SOL", "chain": "solana", "limit": 5}'
example.sh
mp wallet create --name main          # Create HD wallet (Solana + EVM + Bitcoin + TRON)
mp wallet import --name funded        # Import from mnemonic or private key (interactive)
mp wallet list                         # List all wallets (shows all chain addresses)
mp wallet retrieve --wallet main       # Get wallet details
mp wallet rename --wallet old --name new  # Rename a wallet
mp wallet export --wallet main         # Export mnemonic (interactive only)
mp wallet delete --wallet old          # Permanently delete a wallet
example.sh
# Swap (same chain)
mp token swap \
  --wallet main --chain solana \
  --from-token EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v \
  --from-amount 5 \
  --to-token So11111111111111111111111111111111111111111

# Bridge (cross chain)
mp token bridge \
  --from-wallet main --from-chain polygon \
  --from-token 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174 \
  --from-amount 6 \
  --to-chain solana \
  --to-token EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v \
  --to-wallet <solana-address>

# Transfer
mp token transfer \
  --wallet main --chain solana \
  --token EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v \
  --amount 10 \
  --to <recipient-address>

Tags

#shopping_and-e-commerce

Quick Info

Category E-commerce
Model Claude 3.5
Complexity Multi-Agent
Author kevarifin14
Last Updated 3/10/2026
🚀
Optimized for
Claude 3.5
🧠

Ready to Install?

Get started with this skill in seconds

openclaw install moonpay