crypto-price-mcp
crypto-price-mcp
MCP (Model Context Protocol) server that fetches cryptocurrency prices from multiple exchanges.
Features
Fetch real-time prices from 8 exchanges in parallel
Compare prices across all exchanges and find the best rate
Get 24-hour volume rankings per exchange
List all tradable pairs on a given exchange
Supported Exchanges
Exchange | Region | Quote Currency |
Binance | Global | USDT |
Coinbase | Global | USD |
Kraken | Global | USD |
Bybit | Global | USDT |
OKX | Global | USDT |
Bitget | Global | USDT |
bitFlyer | Japan | JPY |
GMO Coin | Japan | JPY |
MCP Tools
get_price
Fetch the current price of a cryptocurrency from one or more exchanges.
symbol : Asset symbol (e.g., BTC, ETH, SOL)
exchanges : (optional) List of exchanges to query. Defaults to all.compare_prices
Compare prices across all exchanges and show the lowest/highest price with spread percentage.
symbol : Asset symbol (e.g., BTC, ETH, SOL)get_top_ranking
Get the top N cryptocurrencies ranked by 24-hour volume on a given exchange.
exchange : Exchange name
limit : (optional) Number of results. Default: 10, max: 50get_pairs
List all tradable pairs available on a given exchange.
exchange : Exchange nameSetup
Requires Python 3.12+ and uv.
git clone https://github.com/your-username/crypto-price-mcp.git
cd crypto-price-mcp
uv syncUsage
Run the server directly
uv run python -m crypto_price_mcp.serverConnect to Claude Desktop
Add the following to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"crypto-price-mcp": {
"command": "/path/to/uv",
"args": [
"--directory",
"/path/to/crypto-price-mcp",
"run",
"python",
"-m",
"crypto_price_mcp.server"
]
}
}
}Development
# Run tests
uv run pytest
# Lint
uv run ruff check src tests
# Type check
uv run mypy srcTech Stack
MCP Python SDK — MCP server framework
httpx — Async HTTP client
uv — Package manager