Multi-chain DEX meta-aggregator for AI agents. Queries 15+ DEX aggregators, returns the best price.
MCP (Model Context Protocol) server that enables AI agents to execute token swaps. We query 0x, 1inch, Paraswap, DODO, Uniswap, Li.Fi, and 10+ more sources, returning only the best available quotes.
- Meta-Aggregator: Queries 15+ DEX aggregators (0x, 1inch, Paraswap, Li.Fi, etc.) and returns the best available price
- 13 Chains: Ethereum, Base, Arbitrum, Optimism, Polygon, BSC, Avalanche, Solana, and more
- One Integration: Single API call to access all DEX liquidity across all chains
- AI-Native: Built for MCP - works with Claude Desktop, Cursor, and any MCP client
| Tool | Description |
|---|---|
get_quote | Get swap quotes from multiple DEX aggregators |
build_swap_tx | Build unsigned swap transaction (ready for client-side signing) |
execute_swap | Execute swap end-to-end with embedded wallet (Privy) |
get_portfolio | Get user token holdings across chains |
get_tx_status | Check transaction status |
estimate_gas | Estimate gas for a transaction |
search_token | Search tokens by name or symbol |
npx @onlyswaps/mcp-serverAdd to ~/.claude/claude_desktop_config.json:
{
"mcpServers": {
"onlyswaps": {
"command": "npx",
"args": ["-y", "@onlyswaps/mcp-server", "stdio"],
"env": {
"ONLYSWAPS_API_URL": "https://api.onlyswaps.fyi"
}
}
}
}Connect to our hosted MCP server:
https://mcp.onlyswaps.fyi/mcp
| Chain | ID | Native Token |
|---|---|---|
| Ethereum | 1 | ETH |
| Optimism | 10 | ETH |
| BSC | 56 | BNB |
| Gnosis | 100 | xDAI |
| Polygon | 137 | MATIC |
| Fantom | 250 | FTM |
| zkSync Era | 324 | ETH |
| Base | 8453 | ETH |
| Arbitrum | 42161 | ETH |
| Avalanche | 43114 | AVAX |
| Linea | 59144 | ETH |
| Scroll | 534352 | ETH |
| Solana | solana | SOL |
Get the best swap quote across all aggregators.
{
"fromToken": "ETH",
"toToken": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "1000000000000000000",
"chainId": "base"
}Returns:
{
"bestQuote": {
"provider": "1inch",
"buyAmount": "3245000000",
"sellAmount": "1000000000000000000",
"estimatedGas": "150000",
"priceImpact": "0.05"
},
"allQuotes": [...],
"meta": { "chain": "Base", "chainId": 8453, "sourcesQueried": 5 }
}Build an unsigned transaction ready for client-side signing.
{
"fromToken": "ETH",
"toToken": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "1000000000000000000",
"chainId": "base",
"userAddress": "0xYourWalletAddress",
"slippage": 1
}Returns transaction data (to, data, value, gas, chainId) ready to sign.
Execute a swap end-to-end using an embedded Privy wallet. Requires Privy configuration.
{
"fromToken": "ETH",
"toToken": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "1000000000000000000",
"chainId": "base",
"userId": "privy-user-id"
}Get user token holdings across all supported chains.
{
"address": "0xYourWalletAddress",
"chainIds": ["ethereum", "base", "arbitrum"]
}Check the status of a transaction.
{
"txHash": "0xabc123...",
"chainId": "base"
}Estimate gas for a swap transaction.
{
"fromToken": "ETH",
"toToken": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "1000000000000000000",
"chainId": "base",
"userAddress": "0xYourWalletAddress"
}Search for tokens by name or symbol.
{
"query": "USDC",
"chainId": "base"
}| Variable | Default | Description |
|---|---|---|
MCP_PORT | 3001 | HTTP server port |
MCP_TRANSPORT | http | Transport mode: http or stdio
|
ONLYSWAPS_API_URL | - | OnlySwaps backend API URL |
ONLYSWAPS_API_KEY | - | API key for authenticated access |
CORS_ORIGINS | * | Comma-separated CORS origins |
PRIVY_APP_ID | - | Privy App ID (for execute_swap) |
PRIVY_APP_SECRET | - | Privy App Secret (for execute_swap) |
PRIVY_AUTHORIZATION_PRIVATE_KEY | - | Privy auth key (for execute_swap) |
# Install dependencies
pnpm install
# Build
pnpm build
# Run HTTP server
pnpm start
# Run stdio mode (for Claude Desktop)
node dist/index.js stdio
docker build -t onlyswaps-mcp .
docker run -p 3001:3001 \
-e ONLYSWAPS_API_URL=https://api.onlyswaps.fyi \
onlyswaps-mcp| Endpoint | Description |
|---|---|
GET /health | Health check |
GET /capabilities | Supported chains and tools |
GET /mcp | MCP SSE connection endpoint |
POST /mcp/messages | MCP message handler |
- Website: https://onlyswaps.fyi
- Hosted MCP: https://mcp.onlyswaps.fyi
- GitHub: https://github.com/Delegueinu/onlyswaps
MIT