crypto-orderbook-mcp
The Crypto Orderbook MCP server provides real-time order book depth and imbalance analysis across major crypto exchanges.
Calculate Order Book Metrics: Compute bid/ask depth and imbalance for specific trading pairs
Compare Exchanges: View unified comparisons across Binance, Kraken, Coinbase, Bitfinex, Okx, and Bybit
Customizable Analysis: Specify depth percentage ranges for tailored market structure insights
Analyzes order book depth and imbalance for cryptocurrency trading pairs on Binance, providing real-time market structure insights.
Retrieves and analyzes order book metrics for cryptocurrency trading pairs on Coinbase, enabling cross-exchange comparison of market depth.
Formats order book comparison data across multiple exchanges as Markdown tables for clear visualization and analysis.
Calculates bid/ask depth and imbalance for cryptocurrency trading pairs on OKX (listed as Okx in the README), supporting cross-exchange market analysis.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@crypto-orderbook-mcpcompare BTC/USDT orderbook depth across Binance, Coinbase, and Kraken"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Crypto Orderbook MCP
An MCP server that analyzes order book depth and imbalance across major crypto exchanges, empowering AI agents and trading systems with real-time market structure insights.
Features
Order Book Metrics: Calculate bid/ask depth and imbalance for a specified trading pair on a given exchange.
Cross-Exchange Comparison: Compare order book depth and imbalance across multiple exchanges in a unified Markdown table.
Supported Exchanges: Binance, Kraken, Coinbase, Bitfinex, Okx, Bybit
Related MCP server: crypto-sentiment-mcp
Installation
Prerequisites
Python 3.10 or higher
uv (Python package and project manager)
Setup
Clone the Repository
git clone https://github.com/kukapay/crypto-orderbook-mcp.git cd crypto-orderbook-mcpInstall Dependencies
Use
uvto install the required packages:uv syncConfigure the MCP Client(Claude Desktop)
"mcpServers": { "crypto-orderbook-mcp": { "command": "uv", "args": [ "--directory", "/absolute/path/to/crypto-orderbook-mcp", "run", "main.py" ] } }
Usage
The server provides two main tools:
calculate_orderbook: Computes bid depth, ask depth, and imbalance for a trading pair on a specified exchange.compare_orderbook: Compares bid depth, ask depth, and imbalance across multiple exchanges, returning a Markdown table.
Example: Calculate Order Book Metrics
Prompt: "Calculate the order book metrics for BTC/USDT on Binance with a 1% depth range."
Expected Output (JSON object):
{
"exchange": "binance",
"symbol": "BTC/USDT",
"bid_depth": 123.45,
"ask_depth": 234.56,
"imbalance": 0.1234,
"mid_price": 50000.0,
"timestamp": 1698765432000
}Example: Compare Order Book Across Exchanges
Prompt: "Compare the order book metrics for BTC/USDT across Binance, Kraken, and OKX with a 1% depth range."
Expected Output (Markdown table):
| 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 |License
This project is licensed under the MIT License. See the LICENSE file for details.
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.
TDQS
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
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
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
Agent-native crypto market-data over MCP+REST: order flow, whales, liquidations, calibrated scores
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.32844MIT
- AlicenseAqualityFmaintenanceAn MCP server that delivers cryptocurrency sentiment analysis to AI agents.548MIT
- 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.3157ISC
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/kukapay/crypto-orderbook-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server