io.github.ExpertVagabond/solana
Solana MCP server for wallet, transactions & programs
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
solana-mcp-serverclaude mcp add solana -- npx -y solana-mcp-server@1.1.1
{
"mcpServers": {
"solana": {
"command": "npx",
"args": [
"-y",
"solana-mcp-server@1.1.1"
]
}
}
}
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Contents
solana-mcp-server
Full Solana blockchain MCP server. 25 tools for wallet management, SPL token operations, DeFi, staking, and network queries. Built on @solana/web3.js and @solana/spl-token with Anchor support.
The most actively maintained Solana MCP. Covers the complete SPL token lifecycle (create, mint, burn, freeze, thaw, delegate, authority management) that competitors skip.
Install
npx solana-mcp-server
Or install globally:
npm install -g solana-mcp-server
solana-mcp-server
Configure
Add to your MCP config (claude_desktop_config.json or ~/.mcp.json):
{
"mcpServers": {
"solana": {
"command": "npx",
"args": ["-y", "solana-mcp-server"],
"env": {
"SOLANA_RPC_URL": "https://api.mainnet-beta.solana.com"
}
}
}
}
Tools (25)
Wallet Management (4)
| Tool | Description | Key Params |
|---|---|---|
create_wallet | Create a new Solana keypair (in-memory only) | -- |
import_wallet | Import from a base58-encoded private key | privateKey |
list_wallets | List all wallets in the current session | -- |
get_balance | Get SOL balance for any address | address |
SPL Token Operations (10)
| Tool | Description | Key Params |
|---|---|---|
create_spl_token | Create a new SPL token with custom decimals | walletName, decimals |
mint_tokens | Mint tokens to any address | walletName, tokenMint, amount |
burn_tokens | Burn tokens from an account | walletName, tokenMint, amount |
freeze_account | Freeze a token account | walletName, tokenMint, accountAddress |
thaw_account | Unfreeze a token account | walletName, tokenMint, accountAddress |
set_token_authority | Change token authority (mint, freeze, owner, close) | walletName, tokenMint, authorityType |
get_token_supply | Total supply and metadata for a token | tokenMint |
close_token_account | Close an account and reclaim rent | walletName, tokenAccount |
approve_delegate | Approve a delegate for token transfers | walletName, tokenAccount, delegate, amount |
revoke_delegate | Revoke delegate approval | walletName, tokenAccount |
Transfers (3)
| Tool | Description | Key Params |
|---|---|---|
transfer_sol | Transfer SOL between wallets | from, to, amount |
transfer_tokens | Transfer SPL tokens | from, to, tokenMint, amount |
airdrop_sol | Request SOL airdrop (devnet/testnet only) | address, amount |
Account Queries (4)
| Tool | Description | Key Params |
|---|---|---|
get_account_info | Detailed account information | address |
get_transaction | Transaction details by signature | signature |
create_token_account | Create an associated token account | walletName, tokenMint |
get_token_accounts | List all token accounts for a wallet | address |
Token Data (1)
| Tool | Description | Key Params |
|---|---|---|
get_token_balance | SPL token balance for a specific account | address, tokenMint |
Network (3)
| Tool | Description | Key Params |
|---|---|---|
switch_network | Switch between mainnet, devnet, testnet, localhost | network |
get_network_info | Current network status and info | -- |
get_recent_blockhash | Recent blockhash for transaction building | -- |
Why This One?
- Complete SPL token lifecycle. Create, mint, burn, freeze, thaw, set authority, delegate, close -- 10 token tools covering every operation. Competitors stop at create/transfer.
- Production-ready infrastructure. Lazy connection initialization (no startup timeouts), 10-second network call timeouts, comprehensive error handling, and Smithery deployment support.
- Anchor integration. Built with
@coral-xyz/anchorsupport for interacting with Anchor programs alongside raw SPL token operations.
Networks
| Network | Endpoint |
|---|---|
mainnet | https://api.mainnet-beta.solana.com |
devnet | https://api.devnet.solana.com |
testnet | https://api.testnet.solana.com |
localhost | http://127.0.0.1:8899 |
Security
- Private keys stored in memory only -- never persisted to disk
- Keys cleared on process exit
- All inputs validated with Zod schemas
Environment Variables
| Variable | Required | Description |
|---|---|---|
SOLANA_RPC_URL | No | Solana RPC endpoint (default: mainnet) |
Development
git clone https://github.com/ExpertVagabond/solana-mcp-server.git
cd solana-mcp-server
npm install
npm run build
npm start
npm test # Basic functionality tests
npm run type-check # TypeScript type checking
npm run lint # ESLint
npm run quality # Full quality check (lint + types + tests)
License
MIT -- Purple Squirrel Media
Frequently asked questions
What is io.github.ExpertVagabond/solana?
Solana MCP server for wallet, transactions & programs
How do I install io.github.ExpertVagabond/solana?
It runs on your machine. In Claude Code: claude mcp add solana -- npx -y solana-mcp-server@1.1.1. For other clients, paste the JSON configuration from this page into their MCP settings.
Does io.github.ExpertVagabond/solana need an API key?
Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.
Is io.github.ExpertVagabond/solana open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains io.github.ExpertVagabond/solana?
It is published by ExpertVagabond. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.