crypto-orderbook-mcp
加密订单簿 MCP
MCP 服务器可分析主要加密货币交易所的订单簿深度和不平衡情况,为 AI 代理和交易系统提供实时市场结构洞察。
特征
订单簿指标:计算给定交易所中指定交易对的买入/卖出深度和不平衡。
跨交易所比较:在统一的 Markdown 表中比较多个交易所的订单簿深度和不平衡情况。
支持的交易所:Binance、Kraken、Coinbase、Bitfinex、Okx、Bybit
Related MCP server: crypto-sentiment-mcp
安装
先决条件
Python 3.10 或更高版本
uv (Python 包和项目管理器)
设置
克隆存储库
git clone https://github.com/kukapay/crypto-orderbook-mcp.git cd crypto-orderbook-mcp安装依赖项
使用
uv安装所需的包:uv sync配置 MCP 客户端(Claude Desktop)
"mcpServers": { "crypto-orderbook-mcp": { "command": "uv", "args": [ "--directory", "/absolute/path/to/crypto-orderbook-mcp", "run", "main.py" ] } }
用法
该服务器提供两个主要工具:
calculate_orderbook:计算指定交易所的交易对的买入深度、卖出深度和不平衡程度。compare_orderbook:比较多个交易所的买入深度、卖出深度和不平衡性,返回 Markdown 表。
示例:计算订单簿指标
提示:“计算币安上 BTC/USDT 的订单簿指标,深度范围为 1%。”
预期输出(JSON 对象):
{
"exchange": "binance",
"symbol": "BTC/USDT",
"bid_depth": 123.45,
"ask_depth": 234.56,
"imbalance": 0.1234,
"mid_price": 50000.0,
"timestamp": 1698765432000
}示例:比较不同交易所的订单簿
提示:“将币安、Kraken 和 OKX 的 BTC/USDT 订单簿指标与 1% 的深度范围进行比较。”
预期输出(Markdown 表):
| exchange | bid_depth | ask_depth | imbalance |
|----------|-----------|-----------|-----------|
| binance | 123.45 | 234.56 | 0.1234 |
| kraken | 89.12 | 178.34 | 0.0987 |
| okx | 145.67 | 256.78 | 0.1345 |执照
本项目遵循 MIT 许可证。详情请参阅LICENSE文件。
Available Tools
2 toolscalculate_orderbookA
Calculate the order book depth and imbalance for a given trading pair on a specified exchange.
Args:
exchange_id: The exchange identifier (e.g., 'binance', 'kraken')
symbol: The trading pair (e.g., 'BTC/USDT')
depth_percentage: Percentage range from mid-price to calculate depth and imbalance (default: 1.0%)
Returns:
Dictionary containing bid depth, ask depth, imbalance, mid-price, and timestamp.
| Name | Required | Description | Default |
|---|---|---|---|
| exchange_id | Yes | ||
| symbol | Yes | ||
| depth_percentage | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It mentions what the tool returns but lacks details on rate limits, authentication needs, error handling, or whether it's a read-only operation. The description is minimal beyond basic functionality.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and concise, with a clear purpose statement followed by parameter and return value sections. Every sentence adds value without redundancy, making it easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a financial calculation tool with no annotations and no output schema, the description is moderately complete. It covers parameters and return values but lacks behavioral context like performance implications or error conditions, which are important for such operations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds significant meaning beyond the input schema, which has 0% description coverage. It explains each parameter's purpose with examples (e.g., 'binance', 'BTC/USDT', '1.0%'), clarifying semantics that the schema alone does not provide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('calculate') and resources ('order book depth and imbalance'), specifying it's for a trading pair on an exchange. It distinguishes from the sibling tool 'compare_orderbook' by focusing on calculation rather than comparison.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus the sibling 'compare_orderbook' or other alternatives. It mentions the parameters but offers no context about appropriate use cases or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_orderbookA
Compare order book depth and imbalance for a trading pair across multiple exchanges, returning a Markdown table.
Args:
symbol: The trading pair (e.g., 'BTC/USDT')
depth_percentage: Percentage range from mid-price to calculate depth and imbalance (default: 1.0%)
exchanges: List of exchange IDs to compare (default: all supported exchanges)
Returns:
String containing a Markdown table with exchanges as rows and bid/ask depths and imbalance as columns.
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | ||
| depth_percentage | No | ||
| exchanges | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the tool's behavior (comparison across exchanges, Markdown table output) and default values, but lacks details on potential limitations like rate limits, authentication requirements, or what happens with unsupported exchanges. It doesn't contradict any annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficiently structured with a clear purpose statement followed by Args and Returns sections. Every sentence adds value: the first establishes the tool's function, the parameter explanations provide necessary context, and the return statement clarifies output format. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 3 parameters with 0% schema coverage and no output schema, the description does well by explaining all parameters and the return format. However, as a comparison tool with no annotations, it could benefit from mentioning performance considerations or data freshness, though the current information is largely complete for basic usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds meaningful context for all 3 parameters: explains 'symbol' as trading pair with an example, clarifies 'depth_percentage' as percentage range from mid-price with default, and describes 'exchanges' as list of IDs with default. However, it doesn't specify format for exchange IDs or valid ranges for depth_percentage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('compare order book depth and imbalance'), the resource ('for a trading pair across multiple exchanges'), and the output format ('returning a Markdown table'). It distinguishes itself from the sibling tool 'calculate_orderbook' by focusing on comparison across exchanges rather than calculation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool (comparing order books across exchanges) and mentions a default behavior ('default: all supported exchanges'). However, it doesn't explicitly state when NOT to use it or provide alternatives to the sibling tool 'calculate_orderbook'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- First observed
calculate_orderbook - First observed
compare_orderbook
TDQS
Scored across 2 tools
The two tools have clearly distinct purposes: calculate_orderbook focuses on a single exchange, while compare_orderbook aggregates data across multiple exchanges. There is no overlap in functionality, and the descriptions clearly differentiate between individual analysis and comparative analysis.
Both tools follow a consistent verb_noun pattern (calculate_orderbook, compare_orderbook) with clear, descriptive names that reflect their actions. The naming is uniform and predictable across the tool set.
With only 2 tools, the server feels thin for a crypto orderbook domain. While the tools cover calculation and comparison, there are likely missing operations such as fetching raw orderbook data, historical analysis, or alerts for imbalances, making the scope incomplete.
The tool set is severely incomplete for a crypto orderbook server. It lacks basic CRUD operations like fetching raw orderbook data, updating or deleting calculations, and monitoring features. The two tools provide only calculation and comparison, leaving significant gaps for agent workflows.
Maintenance
Related MCP Connectors
MCP server with quote and live cryptocurrency price tools, local and cloud-deployed transports.
Real-time crypto market data: candles, tickers, orderbooks across 13+ exchanges via MCP.
Unlock the power of real-time cryptocurrency data with our Crypto Price Insights MCP server.
MCP server for OpenMM — exposes market data, account, trading, and strategy tools to AI agents
Related MCP Servers
- AlicenseBqualityFmaintenanceAn MCP server implementation that integrates with Hyperliquid exchange, providing access to crypto market data including mid prices, historical candles, and L2 order books.31744MIT
- AlicenseAqualityFmaintenanceAn MCP server that delivers cryptocurrency sentiment analysis to AI agents.547MIT
- AlicenseNot gradedqualityFmaintenanceAn MCP server that provides real-time funding rate data across major crypto exchanges.8MIT
- AlicenseBqualityDmaintenanceAn MCP server that analyzes stock trading volume to identify significant price levels (volume walls), supporting features like order book data fetching, trade analysis, and volume distribution tracking.357ISC