Agent Wallet MCP
# Agent Wallet MCP
**Give Claude a Solana wallet.**
An MCP (Model Context Protocol) server that lets Claude send USDC, check balances, and manage transactions on Solana.
## Demo
```
You: "What's my wallet balance?"
Claude: Let me check your wallet balance.
{
"sol": 1.5,
"usdc": 25.00,
"network": "devnet",
"address": "7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU"
}
You: "Send $5 USDC to [address] for the API calls I just used"
Claude: I'll send 5 USDC to that address now.
{
"success": true,
"signature": "5UfgJ3...",
"recipient": "...",
"amount": 5,
"explorer": "https://explorer.solana.com/tx/..."
}
Done! Transaction confirmed on Solana devnet.
```
## Installation
```bash
# Clone the repo
git clone https://github.com/noah-ing/agent-wallet-mcp.git
cd agent-wallet-mcp
# Install dependencies
npm install
# Build
npm run build
```
## Setup with Claude Desktop
Add to your Claude Desktop config (`~/Library/Application Support/Claude/claude_desktop_config.json`):
```json
{
"mcpServers": {
"agent-wallet": {
"command": "node",
"args": ["/path/to/agent-wallet-mcp/dist/index.js"]
}
}
}
```
Then restart Claude Desktop.
## Available Tools
| Tool | Description |
|------|-------------|
| `get_wallet_address` | Get the agent's Solana wallet address |
| `get_balance` | Check USDC and SOL balance |
| `send_usdc` | Send USDC to another address |
| `get_recent_transactions` | View recent transaction history |
| `request_devnet_airdrop` | Get free devnet SOL for fees |
## How It Works
1. **Persistent Wallet**: Creates a keypair stored at `~/.agent-wallet/keypair.json`
2. **Devnet Only**: All transactions happen on Solana devnet (test network)
3. **Real Transactions**: These are actual blockchain transactions, just on testnet
## Getting Devnet USDC
The wallet starts empty. To test sending USDC:
1. Get your wallet address: Ask Claude "What's my wallet address?"
2. Get devnet SOL: Ask Claude "Request a devnet airdrop"
3. Get devnet USDC from [Circle's faucet](https://faucet.circle.com/) or [Solana faucet](https://solfaucet.com/)
## Development
```bash
# Watch mode
npm run dev
# Test with MCP Inspector
npm run inspector
```
## Why This Exists
AI agents will eventually need to pay for things - API calls, compute, services from other agents.
This is a simple demo of what that looks like: Claude with a wallet, making real (testnet) transactions.
## Security Notes
- **Devnet only** - No real money involved
- **Local keypair** - Private key never leaves your machine
- **No mainnet support** - Intentionally limited to devnet for safety
## License
MIT
TDQS
Scored across 5 tools
Each tool has a clearly distinct purpose with no overlap: get_balance (check balances), get_recent_transactions (view transaction history), get_wallet_address (retrieve address), request_devnet_airdrop (obtain test funds), and send_usdc (execute transfers). The descriptions are specific enough to prevent misselection.
All tools follow a consistent verb_noun pattern (e.g., get_balance, send_usdc) using snake_case throughout. The naming is predictable and readable, with no deviations in style or convention.
With 5 tools, the set is well-scoped for managing a Solana devnet wallet, covering essential operations like checking balances, viewing transactions, handling addresses, obtaining test funds, and executing transfers. Each tool earns its place without being excessive or insufficient.
The tool surface covers core wallet management tasks on Solana devnet, including balance checks, transaction history, address retrieval, funding, and USDC transfers. A minor gap exists in not supporting SOL transfers (only USDC), but agents can work around this using airdrops for SOL needs.