MCP • Model Context Protocol for Solana
Solana MCP Server
This page documents and helps you configure an MCP server for Solana blockchain with tools for accounts, transactions, blocks, and wallet management on Devnet and Testnet.
Integrations
Register the server in your MCP-aware host configuration.
Important: Wallet Configuration Required
This MCP server requires a Solana wallet private key to perform on-chain operations (signing messages, transactions, etc.).
⚠️ You must provide your own private key:
-
For local use: Set
AGENT_SECRET_KEYin your.envfile -
For Claude Desktop: Add
AGENT_SECRET_KEYto the env section in your config - For hosted deployment: Configure as environment variable in your platform
Format:
AGENT_SECRET_KEY=your_base58_private_key
(base58-encoded Solana keypair)
Security: Never share your private key. Use a
test wallet for Devnet/Testnet development.
{
"mcpServers": {
"solanaMcp": {
"url": "https://server.smithery.ai/@fozagtx/solanaaiterminal/mcp",
"type": "streamable-http",
"env": {
"AGENT_SECRET_KEY": "your_base58_private_key_here",
"ENVIRONMENT": "DEVNET"
}
}
}
}
Note: Replace
your_base58_private_key_here with your
actual Solana private key in base58 format. Set
ENVIRONMENT to DEVNET or
TESTNET depending on which network you
want to use.
Tool list
A read-only list of the available tools. Use these names when constructing MCP requests.
Solana Documentation
-
search_documentation— Search Solana Documentation.
Solana RPC Methods
Accounts
-
get_account_info— Get Solana account information including balance, owner, and data. -
get_balance— Get SOL balance of an account in lamports and SOL.
Transactions
-
get_transaction— Retrieve details of a Solana transaction by signature.
Blocks
-
get_block— Get Solana block information by slot number. -
get_slot— Get the current slot that the node is processing.
Devnet/Testnet Tools
-
request_airdrop— Request SOL airdrop on Devnet or Testnet (max 5 SOL per request).
Wallet Management
-
create_wallet— Generate a new Solana wallet with mnemonic phrase (12 or 24 words). -
get_wallet_address— Get the public key of the currently configured wallet. -
sign_message— Sign an arbitrary message with the wallet's private key.