Overview
Karen exposes all wallet and DeFi capabilities as MCP tools, allowing any MCP-compatible AI agent (like Claude Desktop or OpenClaw) to manage Solana wallets and execute transactions autonomously. The MCP server runs on stdio, making it compatible with:- Claude Desktop (Anthropic)
- OpenClaw (AI-powered CLI)
- LangChain with MCP support
- Any MCP-compatible framework
Karen implements the Model Context Protocol specification from the
@modelcontextprotocol/sdk package.Installation
Configuration
Claude Desktop
Add Karen to your Claude Desktop MCP configuration:- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
OpenClaw
Add to your.openclaw/config.json:
Available Tools
Karen exposes 20 MCP tools for wallet and DeFi operations. All tools are prefixed withkaren_.
Wallet Management
karen_create_wallet
karen_create_wallet
Create a new managed Solana wallet.Parameters:Returns:Example usage in Claude:
Human-readable name for the wallet
“Create a new wallet called trading-bot”
karen_list_wallets
karen_list_wallets
List all managed wallets with their addresses and names.Parameters: NoneReturns:
karen_balance
karen_balance
Check SOL and SPL token balances for a wallet.Parameters:Returns:
Wallet ID returned from
karen_create_walletTransactions
karen_transfer
karen_transfer
karen_swap
karen_swap
Swap tokens using Jupiter DEX aggregator.Parameters:Example:
Wallet ID to swap from
Token to sell (e.g., “SOL”, “USDC”, or mint address)
Token to buy (e.g., “USDC”, “BONK”)
Amount of input token to swap
Max slippage in basis points (50 = 0.5%)
“Swap 0.5 SOL for USDC with 1% slippage”
DeFi: Token Launch
karen_launch_token
karen_launch_token
Create a new SPL token with initial supply. You become the mint and freeze authority.Parameters:Returns:
Token name (e.g., “Agent Coin”)
Token ticker symbol (e.g., “AGT”)
Decimal places
Initial supply in whole units
karen_mint_supply
karen_mint_supply
karen_revoke_authority
karen_revoke_authority
DeFi: Staking
karen_stake
karen_stake
karen_unstake
karen_unstake
karen_withdraw_stake
karen_withdraw_stake
karen_list_stakes
karen_list_stakes
DeFi: Token Account Operations
karen_burn
karen_burn
karen_close_account
karen_close_account
karen_wrap_sol
karen_wrap_sol
karen_unwrap_sol
karen_unwrap_sol
Usage Examples
In Claude Desktop
Once configured, you can use natural language to interact with Karen:- Create & Fund Wallet
- Token Swap
- Launch Token
You: Create a new wallet called “trading-agent” and fund it with 2 SOLClaude: I’ll create the wallet and request an airdrop.Claude calls:
karen_create_wallet({"name": "trading-agent"})karen_airdrop({"walletId": "...", "amount": 2})
Security & Guardrails
All MCP tools pass through Karen’s guardrails before execution:Spending Limits
- Max 2 SOL per transaction
- Daily cap of 10 SOL
Rate Limiting
- Max 5 transactions per minute
Program Whitelist
- Only approved Solana programs
- System, Token, Jupiter, Staking
Audit Logging
- All transactions logged
- Full history available via
karen_tx_history
Troubleshooting
MCP server not showing in Claude Desktop
MCP server not showing in Claude Desktop
- Check the config file location for your OS
- Verify the path to
server.tsis absolute - Restart Claude Desktop completely
- Check logs:
~/Library/Logs/Claude/mcp*.log(macOS)
Airdrop fails with 'rate limit exceeded'
Airdrop fails with 'rate limit exceeded'
Devnet faucet has rate limits. Wait 1-2 minutes and try again.
Transaction blocked by guardrails
Transaction blocked by guardrails
Check the error message in the tool response. Common causes:
- Amount exceeds
maxSolPerTransaction(2 SOL default) - Daily spending limit reached
- Rate limit exceeded (5 tx/min)
src/core/transaction/guardrails.ts if needed.Next Steps
REST API
Integrate Karen via HTTP endpoints
TypeScript SDK
Use Karen as a library in your Node.js app
API Reference
Detailed endpoint documentation
Guardrails
Configure security policies