DexPaprika Cryptocurrency Data
STDIOMCP server providing cryptocurrency and DEX data API access for AI assistants.
MCP server providing cryptocurrency and DEX data API access for AI assistants.
A Model Context Protocol (MCP) server that provides on-demand access to DexPaprika's cryptocurrency and DEX data API. Built specifically for AI assistants like Claude to programmatically fetch real-time token, pool, and DEX data with zero configuration.
# Install globally npm install -g dexpaprika-mcp # Start the server dexpaprika-mcp # Or run directly without installation npx dexpaprika-mcp
DexPaprika MCP connects Claude to live DEX data across multiple blockchains. No API keys required. Installation | Configuration | API Reference
Breaking Change: The global /pools
endpoint has been removed. If you're upgrading from v1.0.x, please see the Migration Guide below.
To install DexPaprika for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @coinpaprika/dexpaprika-mcp --client claude
# Install globally (recommended for regular use) npm install -g dexpaprika-mcp # Verify installation dexpaprika-mcp --version # Start the server dexpaprika-mcp
The server runs on port 8010 by default. You'll see MCP server is running at http://localhost:8010
when successfully started.
Watch our step-by-step tutorial on setting up and using the DexPaprika MCP server:
Add the following to your Claude Desktop configuration file:
macOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{ "mcpServers": { "dexpaprika": { "command": "npx", "args": ["dexpaprika-mcp"] } } }
After restarting Claude Desktop, the DexPaprika tools will be available to Claude automatically.
The global getTopPools
function has been removed due to API deprecation.
Before (v1.0.x):
// This will no longer work getTopPools({ page: 0, limit: 10, sort: 'desc', orderBy: 'volume_usd' })
After (v1.1.0):
// Use network-specific queries instead getNetworkPools({ network: 'ethereum', page: 0, limit: 10, sort: 'desc', orderBy: 'volume_usd' }) getNetworkPools({ network: 'solana', page: 0, limit: 10, sort: 'desc', orderBy: 'volume_usd' }) // To query multiple networks, call getNetworkPools for each network // Or use the search function for cross-network searches
The MCP server exposes these specific endpoints Claude can access:
Function | Description | Example |
---|---|---|
getNetworks | Retrieves all supported blockchain networks and metadata | {"id": "ethereum", "name": "Ethereum", "symbol": "ETH", ...} |
getNetworkDexes | Lists DEXes available on a specific network | {"dexes": [{"id": "uniswap_v3", "name": "Uniswap V3", ...}]} |
Function | Description | Required Parameters | Example Usage |
---|---|---|---|
getNetworkPools | [PRIMARY] Gets top pools on a specific network | network , limit | Get Solana's highest liquidity pools |
getDexPools | Gets top pools for a specific DEX | network , dex | List pools on Uniswap V3 |
getPoolDetails | Gets detailed pool metrics | network , poolAddress | Complete metrics for USDC/ETH pool |
getPoolOHLCV | Retrieves time-series price data for various analytical purposes (technical analysis, ML models, backtesting) | network , poolAddress , start , interval | 7-day hourly candles for SOL/USDC |
getPoolTransactions | Lists recent transactions in a pool | network , poolAddress | Last 20 swaps in a specific pool |
Function | Description | Required Parameters | Output Fields |
---|---|---|---|
getTokenDetails | Gets comprehensive token data | network , tokenAddress | price_usd , volume_24h , liquidity_usd , etc. |
getTokenPools | Lists pools containing a token | network , tokenAddress | Returns all pools with liquidity metrics |
search | Finds tokens, pools, DEXes by name/id | query | Multi-entity search results |
// With Claude, get details about a specific token: const solanaJupToken = await getTokenDetails({ network: "solana", tokenAddress: "JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN" }); // Find all pools for a specific token with volume sorting: const jupiterPools = await getTokenPools({ network: "solana", tokenAddress: "JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN", orderBy: "volume_usd", limit: 5 }); // Get top pools on Ethereum (v1.1.0 approach): const ethereumPools = await getNetworkPools({ network: "ethereum", orderBy: "volume_usd", limit: 10 }); // Get historical price data for various analytical purposes (technical analysis, ML models, backtesting): const ohlcvData = await getPoolOHLCV({ network: "ethereum", poolAddress: "0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640", // ETH/USDC on Uniswap V3 start: "2023-01-01", interval: "1d", limit: 30 });
When working with Claude, try these specific technical queries (updated for v1.1.0):
Common Issues:
Migration Issues:
getNetworkPools
instead with a specific network parameter# Clone the repository git clone https://github.com/coinpaprika/dexpaprika-mcp.git cd dexpaprika-mcp # Install dependencies npm install # Run with auto-restart on code changes npm run watch # Build for production npm run build # Run tests npm test
See CHANGELOG.md for detailed release notes and migration guides.
This project is licensed under the MIT License - see the LICENSE file for details.