Crypto Market Data MCP Server
Provides live cryptocurrency market data from over 100 exchanges, enabling AI agents to fetch prices, order books, funding rates, and more for trading analysis and arbitrage opportunities.
README
Crypto Market Data MCP Server
A read-only Model Context Protocol server that gives any AI agent (Claude, Cursor, Cline, Windsurf…) live cryptocurrency market data across 100+ exchanges via CCXT. No API keys required — everything uses public endpoints.
Supported exchanges: bybit, binance, okx, hyperliquid, gate, kucoin (add more
CCXT ids in SUPPORTED_EXCHANGES).
Connect via MCPize
Use this MCP server instantly with no local installation:
npx -y mcpize connect @eliasfire617/crypto-market-data --client claude
Or connect at: https://mcpize.com/mcp/crypto-market-data
Tools (13)
Discovery
| Tool | What it does |
|---|---|
list_exchanges |
Which exchanges are supported |
get_capabilities |
Matrix of which exchange supports which data (no network) |
search_symbols |
Find the exact symbol format for a coin |
Market data
| Tool | What it does |
|---|---|
get_price |
Last price + 24h stats |
get_order_book |
Top-of-book bids/asks |
get_ohlcv |
Recent OHLCV candles |
get_recent_trades |
Latest public trades |
Derivatives
| Tool | What it does |
|---|---|
get_funding_rate |
Current perpetual funding rate |
get_funding_rate_history |
Historical funding rates |
compare_funding |
Funding rate across many exchanges + arb spread |
get_open_interest |
Current open interest |
get_long_short_ratio |
Global long/short account ratio (Binance) |
get_liquidations |
Recent public liquidations (limited support) |
compare_funding is the differentiator: it surfaces funding-rate arbitrage
opportunities (which venue pays the most vs least) in one concurrent call.
Robustness
Built for production, not a demo:
- Retries with exponential backoff on transient network errors (3 attempts).
- Per-request + overall timeouts (10s / 25s) so a hung exchange can't stall a call.
- Capability guards: never calls a method an exchange lacks — returns a clean
error listing which exchanges do support it (see
get_capabilities). - Structured errors (
{"error": {type, message, retryable, supported_exchanges}}) instead of crashes — agents always get a parseable response. - TTL response cache (~660x faster on repeat calls; eases rate limits).
- Input validation and clamped limits on every tool.
- Guaranteed exchange cleanup; logs to stderr only (safe for stdio transport).
Run locally
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
# stdio transport (Claude Desktop, Cursor, Cline) — local, no auth:
python server.py
# OR streamable HTTP (hosted / remote) — API-key auth + rate limiting ON:
python server.py --http # binds :8000 (override with PORT=8799)
Authentication & billing (HTTP mode)
The hosted HTTP transport is gated — this is what makes it billable. Local stdio stays open for single-user dev.
-
Clients send
Authorization: Bearer <api-key>. -
Each key maps to a
client_idand a tier; unknown/missing keys get401. -
Tiers (
auth.py→TIERS) set per-minute rate + monthly quota:Tier req/min monthly quota free 10 1,000 pro 120 100,000 ultra 600 2,000,000 -
Over the limit → a clean
ToolError(Rate limit exceeded…/Monthly quota exceeded…), never a crash.
Configure keys (either source; file wins):
# inline
export CRYPTO_MCP_API_KEYS="sk_live_abc:acme:pro,sk_live_xyz:jane:free"
# or a file (see api_keys.example.json)
export CRYPTO_MCP_API_KEYS_FILE=./api_keys.json
If no keys are set in HTTP mode, a throwaway demo key (tier=pro) is generated and printed to stderr so you can test immediately.
Behind a gateway (e.g. MCPize)
If you deploy behind a platform that already authenticates and rate-limits
subscribers, set CRYPTO_MCP_DISABLE_AUTH=1. The server then trusts the gateway
and skips its own auth + rate limiting — no double authentication, no double
throttling. Only do this when the container is reachable solely through that
gateway.
Use with Claude Desktop
Copy claude_desktop_config.example.json into your Claude Desktop config
(~/Library/Application Support/Claude/claude_desktop_config.json on macOS,
%APPDATA%\Claude\claude_desktop_config.json on Windows), adjusting paths.
Symbols
- Spot:
BTC/USDT - Perpetual:
BTC/USDT:USDT
Roadmap
- Add more exchanges to
SUPPORTED_EXCHANGES. - More aggressive caching of hot symbols to cut latency.
- Optional websocket streaming for live order book / trades.
Maintainers: hosting, deployment and registry-listing notes live in PUBLISHING.md.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.