Skip to main content
Glama
nullpointer-hq

exchange-data-mcp

exchange-data-mcp

面向加密货币交易所的只读市场数据 MCP 服务器,仅使用公开端点,无需 API 密钥和账户。将 Binance、KuCoin 和 Coinbase 的数据标准化为一种形态,并为 LLM 上下文进行序列化。

既可以作为面向 agent 客户端的 MCP 服务器运行,也可以作为零依赖的普通 Python 库使用。

为什么存在

与市场打交道的 agent 需要订单簿、成交记录和 K 线,而现有方案交给模型的是交易所的原始 JSON。原始负载往往包含模型不会读的多余无用内容,而这个方案不会;此外,它还统一了不同交易所的信息。这个包先对各类方言做一次归一化,然后就能更轻松地序列化。

Related MCP server: PredMCP

值得注意的地方:

  • 交易对方言。KuCoin 和 Coinbase 上的 BTC-USDT、Binance 上的 BTCUSDT 被聚合为一种规范形式(BASE-QUOTE)。

  • 时间戳单位因交易所和端点而异。Binance 是毫秒,KuCoin 的统计和订单簿是毫秒,KuCoin 的成交历史是纳秒,KuCoin 和 Coinbase 的 K 线是秒,Coinbase 的 ticker 是 ISO 字符串。所有数据模型输出的时间戳均为自 epoch 起的毫秒数。

  • Coinbase 的 K 线行是 [time, low, high, open, close, volume],最新的在前。这是文档记载的列顺序。KuCoin 的 K 线则使用 [time, open, close, high, low, ...]。可以通过带测试的位置映射来处理,或让解析器反转 K 线。

  • 速率限制按 IP 计算,而 agent 工具会突发唤醒。缓存为每个端点保存 TTL,并将并发的未命中合并为一次请求(single-flight),因此五个工具在同一秒读取同一个订单簿时,只花费一次 HTTP 调用。失败不会被缓存;当带头请求抛错时,等待中的调用者会立即重试。

  • 点差运算全程使用 Decimal。

  • 精简的序列化器在短键名下保留精确的十进制字符串。在记录的 fixture 上实测:24 小时 ticker 从原始封装的 605 字节降到 207 字节(34%)。对于已经非常紧凑的订单簿快照,体积大致持平;真正的收益是三个交易所共用一种 schema。

用法

作为库使用(零依赖):

from exchange_data_mcp import MarketDataService
from exchange_data_mcp.transport import urllib_fetcher

svc = MarketDataService(urllib_fetcher())
svc.ticker("kucoin", "BTC-USDT")
svc.compare("BTC-USDT")   # same pair on every venue, executable spread from top of book

作为 MCP 服务器:

pip install -e ".[mcp]"
python -m exchange_data_mcp.server

暴露的工具:get_ticker, get_orderbook, get_recent_trades, get_candles, compare_price。

错误分类如下:可重试类(携带 retry_after 的 RateLimited、ExchangeUnavailable)、修正输入类(SymbolNotFound、UnsupportedRequest),或交易所行为变化类(BadResponse)。

测试

37 个测试,完全离线,基于记录的 fixture 运行:

python3 -m unittest discover -s tests -t .

状态

用于作品集展示。REST 加 TTL 缓存。同一工程中面向实时 10 ms 流式处理的部分,请参阅 kucoin-fast-stream。

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    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.
    13
    2
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Safe, read-only market data for AI trading agents, offering 44 tools to query prediction markets, perpetuals, and cross-venue signals without the ability to execute trades.
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to query cryptocurrency network and market data through tools for time-series metrics, OHLCV candles, bid/ask quotes, index levels, and asset or market metadata.
    MIT