🔗 MCP API
Market Data Tools
Reference for the Market Data MCP tools that expose exchange rates, OHLCV, quotes, trades, order books, and options data.
These tools return live market state, historical time series, and liquidity snapshots.
| Tool | Required arguments | Optional arguments | Use when |
|---|
exchangerate_get_rate | asset_id_base, asset_id_quote | time | You need one asset-level rate such as BTC/USD. |
exchangerate_get_all_rates | asset_id_base | filter_asset_id, invert, time | You need one base asset quoted in many currencies or tokens. |
exchangerate_get_history | asset_id_base, asset_id_quote, period_id, time_start, time_end | limit | You need historical OHLC rate data between two assets. |
exchangerate_list_periods | none | none | You need valid period IDs for historical exchange-rate requests. |
filter_asset_id accepts comma- or semicolon-delimited quote lists such as USD;EUR;GBP.
invert: true returns reciprocal rates such as USD/BTC instead of BTC/USD.
time lets exchangerate_get_rate and exchangerate_get_all_rates act as historical lookups.
| Tool | Required arguments | Optional arguments | Use when |
|---|
ohlcv_get_history | symbol_id, period_id | time_start, time_end, limit | You need historical candles for one symbol in ascending order. |
ohlcv_get_latest | symbol_id, period_id | limit | You need recent candles without specifying a time window. |
ohlcv_get_history_by_exchange | exchange_id, period_id, time_start, time_end | none | You need exchange-level OHLCV series. |
ohlcv_list_periods | none | none | You need valid candle granularities. |
- Typical
period_id values include 1MIN, 1HRS, 1DAY, and longer intervals.
ohlcv_get_history returns candles in ascending order, while ohlcv_get_latest is the shortcut for most recent bars.
- Every 100 returned items count as one request for billing on history-style endpoints.
| Tool | Required arguments | Optional arguments | Use when |
|---|
quotes_get_current | none | filter_symbol_id | You need current bid/ask snapshots across all or filtered symbols. |
quotes_get_current_by_symbol | symbol_id | none | You need one live quote with nested last trade information. |
quotes_get_latest | none | filter_symbol_id, limit | You need recent quote updates in descending time order. |
quotes_get_latest_by_symbol | symbol_id | limit | You need recent quote updates for one symbol. |
quotes_get_history | symbol_id, time_start | time_end, limit | You need historical quote changes over time. |
filter_symbol_id matches symbol fragments such as BTC_USD.
quotes_get_current_by_symbol is a good first call for realtime UI cards because it includes bid, ask, and last_trade.
- Historical quote responses are ordered ascending by time.
| Tool | Required arguments | Optional arguments | Use when |
|---|
trades_get_latest | none | filter_symbol_id, limit | You need the newest trades across all or filtered symbols. |
trades_get_latest_by_symbol | symbol_id | limit | You need the latest executions for one symbol. |
trades_get_history | symbol_id, time_start | time_end, limit | You need historical executions in ascending order. |
- Latest trade endpoints return data in descending order.
- History endpoints return executed trades in ascending order.
- Trade payloads are useful for tape views, event-driven analytics, and slippage studies.
| Tool | Required arguments | Optional arguments | Use when |
|---|
orderbooks_get_current | symbol_id | limit_levels | You need the current L2 bid/ask snapshot for one symbol. |
orderbooks_get_depth | symbol_id | limit_levels | You need aggregated cumulative depth at price levels. |
orderbooks_get_latest | symbol_id | limit, limit_levels | You need the newest order-book snapshots for one symbol. |
orderbooks_get_history | symbol_id, time_start | time_end, limit, limit_levels | You need historical order-book snapshots. |
orderbooks3_get_current | none | filter_symbol_id, limit_levels | You need current L3 books across all or filtered symbols. |
orderbooks3_get_current_by_symbol | symbol_id | limit_levels | You need individual order-level L3 data for one symbol. |
- L2 history and latest endpoints are limited to 20 levels per side.
limit_levels trims response size on both L2 and L3 endpoints.
- L3 data is more detailed than L2 and may not be available for every exchange.
| Tool | Required arguments | Optional arguments | Use when |
|---|
options_get_current_by_exchange | exchange_id | none | You need the current options chain grouped by underlying, quote currency, expiration, and strike. |
- This endpoint is useful for derivatives dashboards and volatility workflows.
- Returned quotes can include both calls and puts at each strike.
- Resolve a
symbol_id with symbols_list.
- Call
quotes_get_current_by_symbol.
- Add
trades_get_latest_by_symbol.
- Add
orderbooks_get_current or orderbooks_get_depth if you need liquidity context.
- Call
ohlcv_list_periods.
- Use
ohlcv_get_history for bars.
- Join with
trades_get_history or quotes_get_history for microstructure detail.
- Use
exchangerate_get_rate for one pair.
- Use
exchangerate_get_all_rates when one base asset fans out to many quotes.
- Use
exchangerate_get_history for historical conversion series.