MCP server for cross-chain token swaps between Solana and Base using x402 payments for fees
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add clawswap --env SOLANA_PRIVATE_KEY='<SOLANA_PRIVATE_KEY>' --env BASE_PRIVATE_KEY='<BASE_PRIVATE_KEY>' -- npx -y @clawswap/mcp-server~/.codex/config.toml
[mcp_servers.clawswap]
command = "npx"
args = ["-y", "@clawswap/mcp-server"]
env = { SOLANA_PRIVATE_KEY = "<SOLANA_PRIVATE_KEY>", BASE_PRIVATE_KEY = "<BASE_PRIVATE_KEY>" }
# codex mcp add clawswap --env SOLANA_PRIVATE_KEY='<SOLANA_PRIVATE_KEY>' --env BASE_PRIVATE_KEY='<BASE_PRIVATE_KEY>' -- npx -y @clawswap/mcp-server~/.cursor/mcp.json
{
"mcpServers": {
"clawswap": {
"command": "npx",
"args": [
"-y",
"@clawswap/mcp-server"
],
"env": {
"SOLANA_PRIVATE_KEY": "<SOLANA_PRIVATE_KEY>",
"BASE_PRIVATE_KEY": "<BASE_PRIVATE_KEY>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"clawswap": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@clawswap/mcp-server"
],
"env": {
"SOLANA_PRIVATE_KEY": "<SOLANA_PRIVATE_KEY>",
"BASE_PRIVATE_KEY": "<BASE_PRIVATE_KEY>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"clawswap": {
"command": "npx",
"args": [
"-y",
"@clawswap/mcp-server"
],
"env": {
"SOLANA_PRIVATE_KEY": "<SOLANA_PRIVATE_KEY>",
"BASE_PRIVATE_KEY": "<BASE_PRIVATE_KEY>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"clawswap": {
"command": "npx",
"args": [
"-y",
"@clawswap/mcp-server"
],
"env": {
"SOLANA_PRIVATE_KEY": "<SOLANA_PRIVATE_KEY>",
"BASE_PRIVATE_KEY": "<BASE_PRIVATE_KEY>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"clawswap": {
"command": "npx",
"args": [
"-y",
"@clawswap/mcp-server"
],
"env": {
"SOLANA_PRIVATE_KEY": "<SOLANA_PRIVATE_KEY>",
"BASE_PRIVATE_KEY": "<BASE_PRIVATE_KEY>"
}
}
}
}Environment variables
SOLANA_PRIVATE_KEYBASE_PRIVATE_KEY
Replace the placeholders with your own credentials and keep them out of version control.