Phantom Wallet MCP

SkillCommunication

Execute wallet operations through the Phantom MCP server. Use when the user wants to interact with their Phantom wallet directly — get addresses, transfer SOL or SPL tokens, buy/swap tokens, sign transactions, and sign messages across Solana, Ethereum, Bitcoin, and Sui. Requires the @phantom/mcp-server to be configured as an MCP server.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Phantom Wallet MCP skill

What this skill tells your AI

The instructions your AI receives, as published by dflowprotocol/dflow_phantom-connect-skill in phantom-wallet-mcp/SKILL.md and read by ahel’s review.

Use the phantom MCP server to interact with the user's Phantom wallet directly — no SDK integration code needed.

Setup

Add the Phantom MCP server to your MCP configuration:

{
  "mcpServers": {
    "phantom": {
      "command": "npx",
      "args": ["-y", "@phantom/mcp-server"],
      "env": {
        "PHANTOM_APP_ID": "<your-app-id>"
      }
    }
  }
}

Get your PHANTOM_APP_ID from Phantom Portal. On first use, the server opens a browser for OAuth authentication via Google or Apple login.

Available Tools

ToolDescription
get_wallet_addressesGet blockchain addresses (Solana, Ethereum, Bitcoin, Sui) for the connected wallet
transfer_tokensTransfer SOL or SPL tokens on Solana — builds, signs, and sends the transaction
buy_tokenFetch Solana swap quotes from Phantom API; optionally sign and send
sign_transactionSign a transaction (base64url for Solana, RLP hex for Ethereum)
sign_messageSign a UTF-8 message with automatic chain-specific routing

Supported Networks

ChainNetworksCAIP-2 Examples
Solanamainnet, devnet, testnetsolana:mainnet, solana:devnet
EthereumMainnet, Sepolia, Polygon, Base, Arbitrumeip155:1, eip155:137
BitcoinMainnetbip122:000000000019d6689c085ae165831e93
SuiMainnet, Testnetsui:mainnet

Examples

Get wallet addresses

Retrieve the user's wallet addresses across all supported chains:

Use the phantom MCP's get_wallet_addresses tool to list the user's addresses.

Returns addresses for each connected chain (Solana, Ethereum, Bitcoin, Sui).

Transfer SOL

Send SOL to a recipient address:

Use the phantom MCP's transfer_tokens tool:
- token: "SOL"
- recipientAddress: "<recipient>"
- amount: "0.1"
- network: "solana:mainnet"

The MCP handles transaction building, signing, and submission.

Transfer SPL tokens

Send any SPL token by its mint address:

Use the phantom MCP's transfer_tokens tool:
- token: "<token-mint-address>"
- recipientAddress: "<recipient>"
- amount: "10"
- network: "solana:mainnet"

Buy / swap tokens

Get a swap quote and optionally execute it:

Use the phantom MCP's buy_token tool:
- tokenMint: "<token-mint-to-buy>"
- amount: "1000000"  (in lamports for SOL input)
- network: "solana:mainnet"

Sign a message

Sign a UTF-8 message for verification or authentication:

Use the phantom MCP's sign_message tool:
- message: "Hello, verifying ownership"
- network: "solana:mainnet"

The MCP routes to the correct chain-specific signing based on the network parameter.

Important Notes

  • Preview software — use a separate wallet with minimal funds for testing
  • Sessions persist locally in ~/.phantom-mcp/session.json
  • The MCP server runs via stdio transport (launched by npx -y @phantom/mcp-server)
  • Token transfers on Solana support both native SOL and any SPL token
  • Swap quotes come from Phantom's API and include fee and slippage info

Signals

GitHub stars
40
Forks
8
Last commit
Jul 2026
Advanced
Catalog kind
skill
Gateway key
phantom-wallet-mcp
Source
github.com/dflowprotocol/dflow_phantom-connect-skill