mcp-server-ccxt
by: Nayshins
Cryptocurrency Market Data MCP Server
📌Overview
Purpose: The MCP server provides real-time and historical cryptocurrency market data integration for LLMs, enabling them to analyze market trends and retrieve trading information.
Overview: This Model Context Protocol (MCP) server facilitates direct access to both current prices and extensive historical data across major cryptocurrency exchanges, allowing for detailed market analysis and insights.
Key Features:
-
Real-time Market Data: Offers current prices, market summaries, and top trading pairs across multiple exchanges to help users stay updated on market conditions.
-
Historical Analysis: Provides OHLCV (candlestick) data, price change statistics, and volume history with customizable timeframes for comprehensive market evaluation.
Cryptocurrency Market Data MCP Server
A Model Context Protocol (MCP) server that provides real-time and historical cryptocurrency market data through integration with major exchanges. This server enables language models like Claude to fetch current prices, analyze market trends, and access detailed trading information.
Features
-
Real-time Market Data
- Current cryptocurrency prices
- Market summaries with bid/ask spreads
- Top trading pairs by volume
- Multiple exchange support
-
Historical Analysis
- OHLCV (candlestick) data
- Price change statistics
- Volume history tracking
- Customizable timeframes
-
Exchange Support
- Binance
- Coinbase
- Kraken
- KuCoin
- HyperLiquid
- Huobi
- Bitfinex
- Bybit
- OKX
- MEXC
Installation
Installing via Smithery
To install the Cryptocurrency Market Data Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install mcp-server-ccxt --client claude
Installing Manually
# Using uv (recommended)
uv pip install mcp ccxt
# Using pip
pip install mcp ccxt
Usage
Running the Server
python crypto_server.py
Connecting with Claude Desktop
-
Open your Claude Desktop configuration at:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
-
Add the server configuration:
{
"mcpServers": {
"crypto": {
"command": "python",
"args": ["/path/to/crypto_server.py"]
}
}
}
- Restart Claude Desktop
Available Tools
-
get-price
- Get the current price for any trading pair
-
get-market-summary
- Fetch detailed market information
-
get-top-volumes
- List top trading pairs by volume
-
list-exchanges
- Show all supported exchanges
-
get-historical-ohlcv
- Get historical candlestick data
-
get-price-change
- Calculate price changes over different timeframes
-
get-volume-history
- Track trading volume over time
Example Queries
Here are some example questions you can ask Claude once the server is connected:
- What's the current Bitcoin price on Binance?
- Show me the top 5 trading pairs by volume on Coinbase
- How has ETH/USDT performed over the last 24 hours?
- Give me a detailed market summary for SOL/USDT on Kraken
- What's the trading volume history for BNB/USDT over the last week?
Technical Details
Dependencies
mcp
: Model Context Protocol SDKccxt
: Cryptocurrency Exchange Trading Library- Python 3.9 or higher
Architecture
The server uses:
- CCXT's async support for efficient exchange communication
- MCP's tool system for LLM integration
- Standardized data formatting for consistent outputs
- Connection pooling for optimal performance
Error Handling
The server implements robust error handling for:
- Invalid trading pairs
- Exchange connectivity issues
- Rate limiting
- Malformed requests
- Network timeouts
Development
Running Tests
# To be implemented
pytest tests/
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
Local Development
# Clone the repository
git clone [repository-url]
cd crypto-mcp-server
# Install dependencies
uv pip install -e .
Troubleshooting
Common Issues
-
Exchange Connection Errors
- Check your internet connection
- Verify the exchange is operational
- Ensure the trading pair exists on the selected exchange
-
Rate Limiting
- Implement delays between requests
- Use different exchanges for high-frequency queries
- Check exchange-specific rate limits
-
Data Formatting Issues
- Verify trading pair format (e.g., BTC/USDT)
- Check timeframe specifications
- Ensure numerical parameters are within valid ranges
License
MIT License - See LICENSE file for details
Acknowledgments
- CCXT for exchange integrations
- Model Context Protocol for the MCP specification
- The cryptocurrency exchanges for providing market data APIs