DepthFeed
Order-book depth & history for Polymarket, Kalshi & Limitless. Keyless demo, key for full access.
使うべきか
品質と安全性
ツール定義とプロトコルへの準拠に関する自動分析に基づいています。
コンテキストコスト
これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。
インストール
ワンクリックインストール
これを `claude_desktop_config.json` ファイルに追加してください:
{
"mcpServers": {
"depthfeed": {
"url": "https://api.depthfeed.com/mcp"
}
}
}リモートエンドポイント
https://api.depthfeed.com/mcpstreamable-httpできること
ツール一覧
ツール(15)
🟢polymarket_all_markets
Paid data plan required. Return every active Polymarket market across all categories, not only crypto. AI execution credits do not unlock this export. The text result is one LLM-readable line per market: MARKET_NAME | OUTCOME PRICES | DEADLINE | MARKET_ID. The sweep fails closed if complete pagination cannot be verified and includes timestamp, count, source-page count, and SHA-256.
入力スキーマ
{
"type": "object",
"properties": {}
}🟢polymarket_search_markets(coin, cursor, end_time, limit, resolved, ...)
List Polymarket up/down crypto prediction markets for a coin. Returns market id, slug, window, status and timing. Use the returned id/slug with polymarket_get_market or polymarket_get_snapshots.
入力スキーマ
{
"type": "object",
"properties": {
"coin": {
"default": "btc",
"description": "Crypto asset. Every account plan reaches all seven; only the keyless demo surface is BTC-only.",
"enum": [
"btc",
"eth",
"sol",
"xrp",
"doge",
"bnb",
"hype"
],
"type": "string"
},
"cursor": {
"description": "Opaque pagination cursor from a previous response's pagination.next_cursor.",
"type": "string"
},
"end_time": {
"description": "Filter: markets active at/before this time as ms-epoch or ISO-8601. History is clamped to your plan's window.",
"type": "string"
},
"limit": {
"description": "Page size (1–100).",
"maximum": 100,
"minimum": 1,
"type": "integer"
},
"resolved": {
"description": "true → only resolved markets, false → only active.",
"type": "boolean"
},
"start_time": {
"description": "Filter: markets active at/after this time as ms-epoch or ISO-8601. History is clamped to your plan's window.",
"type": "string"
},
"type": {
"description": "Filter by market window/type, e.g. 5m, 15m, 1h, 4h, 24h.",
"type": "string"
}
}
}🟢polymarket_get_market(coin, market_id, slug)
Fetch a single Polymarket market by id (market_id) or by slug. Provide exactly one of market_id or slug.
入力スキーマ
{
"type": "object",
"properties": {
"coin": {
"default": "btc",
"description": "Crypto asset. Every account plan reaches all seven; only the keyless demo surface is BTC-only.",
"enum": [
"btc",
"eth",
"sol",
"xrp",
"doge",
"bnb",
"hype"
],
"type": "string"
},
"market_id": {
"description": "Market id from polymarket_search_markets.",
"type": "string"
},
"slug": {
"description": "Market slug (alternative to market_id).",
"type": "string"
}
}
}🟢polymarket_get_snapshots(coin, cursor, end_time, fill, include_orderbook, ...)
Historical order-book snapshots (time series) for one Polymarket market. Use interval to downsample and include_orderbook for the full ladder. History depth is gated by plan.
入力スキーマ
{
"type": "object",
"properties": {
"coin": {
"default": "btc",
"description": "Crypto asset. Every account plan reaches all seven; only the keyless demo surface is BTC-only.",
"enum": [
"btc",
"eth",
"sol",
"xrp",
"doge",
"bnb",
"hype"
],
"type": "string"
},
"cursor": {
"description": "Opaque pagination cursor from a previous response's pagination.next_cursor.",
"type": "string"
},
"end_time": {
"description": "End of time as ms-epoch or ISO-8601. History is clamped to your plan's window.",
"type": "string"
},
"fill": {
"description": "ffill returns ONE ROW PER BUCKET for the whole window, carrying the last captured book into buckets that held no capture. Each row then carries `filled` (0 = a capture, 1 = carried forward) and `as_of_ts`, the moment that book was recorded. Requires `interval`. Without it, `interval` returns only the buckets that held a capture — a short series means the market is quoted infrequently, not that data is missing.",
"enum": [
"ffill",
"none"
],
"type": "string"
},
"include_orderbook": {
"description": "Include the full bid/ask ladder per snapshot (default top-of-book).",
"type": "boolean"
},
"interval": {
"description": "Downsample bucket — 30s, 1m, 5m, 1h, up to 1d. Returns the newest book in each bucket. Omit for every recorded book change.",
"type": "string"
},
"limit": {
"description": "Page size (1–1000).",
"maximum": 1000,
"minimum": 1,
"type": "integer"
},
"market_id": {
"description": "Market id from polymarket_search_markets.",
"type": "string"
},
"start_time": {
"description": "Start of time as ms-epoch or ISO-8601. History is clamped to your plan's window.",
"type": "string"
}
},
"required": [
"market_id"
]
}🟢kalshi_search_markets(coin, cursor, limit, type)
List Kalshi crypto markets (full yes/no depth, DepthFeed-exclusive). Every account plan; the keyless demo surface returns a 402 upsell.
入力スキーマ
{
"type": "object",
"properties": {
"coin": {
"default": "btc",
"description": "Crypto asset. Every account plan reaches all seven; only the keyless demo surface is BTC-only.",
"enum": [
"btc",
"eth",
"sol",
"xrp",
"doge",
"bnb",
"hype"
],
"type": "string"
},
"cursor": {
"description": "Opaque pagination cursor from a previous response's pagination.next_cursor.",
"type": "string"
},
"limit": {
"description": "Page size (1–100).",
"maximum": 100,
"minimum": 1,
"type": "integer"
},
"type": {
"description": "Filter by market window/type.",
"type": "string"
}
}
}🟢kalshi_get_orderbook(ticker)
Latest yes/no order-book depth for a Kalshi market by ticker. Every account plan; only the keyless demo surface is refused.
入力スキーマ
{
"type": "object",
"properties": {
"ticker": {
"description": "Kalshi market ticker from kalshi_search_markets.",
"type": "string"
}
},
"required": [
"ticker"
]
}🟢kalshi_get_snapshots(cursor, end_time, fill, interval, limit, ...)
Historical yes/no depth snapshots for a Kalshi market by ticker. Every account plan; history is bounded by your plan window.
入力スキーマ
{
"type": "object",
"properties": {
"cursor": {
"description": "Opaque pagination cursor from a previous response's pagination.next_cursor.",
"type": "string"
},
"end_time": {
"description": "End of time as ms-epoch or ISO-8601. History is clamped to your plan's window.",
"type": "string"
},
"fill": {
"description": "ffill returns ONE ROW PER BUCKET for the whole window, carrying the last captured book into buckets that held no capture. Each row then carries `filled` (0 = a capture, 1 = carried forward) and `as_of_ts`, the moment that book was recorded. Requires `interval`. Without it, `interval` returns only the buckets that held a capture — a short series means the market is quoted infrequently, not that data is missing.",
"enum": [
"ffill",
"none"
],
"type": "string"
},
"interval": {
"description": "Downsample bucket — 30s, 1m, 5m, 1h, up to 1d. Returns the newest book in each bucket. Omit for every recorded book change.",
"type": "string"
},
"limit": {
"description": "Page size (1–1000).",
"maximum": 1000,
"minimum": 1,
"type": "integer"
},
"start_time": {
"description": "Start of time as ms-epoch or ISO-8601. History is clamped to your plan's window.",
"type": "string"
},
"ticker": {
"description": "Kalshi market ticker.",
"type": "string"
}
},
"required": [
"ticker"
]
}🟢kalshi_get_candles(cursor, end_time, interval, limit, start_time, ...)
Hourly OHLC candles (yes bid, yes ask, traded price) plus volume and open interest for a Kalshi market. This is the only history that exists for non-crypto Kalshi markets — Kalshi serves no historical order book — and it reaches back up to a year, far past the order-book capture. `price` is null in periods with no trade. Every account plan; history is bounded by your plan window.
入力スキーマ
{
"type": "object",
"properties": {
"cursor": {
"description": "Opaque pagination cursor from a previous response's pagination.next_cursor.",
"type": "string"
},
"end_time": {
"description": "End of time as ms-epoch or ISO-8601. History is clamped to your plan's window.",
"type": "string"
},
"interval": {
"description": "Candle period. Only 1h (60m) is recorded; omit for the default.",
"type": "string"
},
"limit": {
"description": "Page size (1–500).",
"maximum": 500,
"minimum": 1,
"type": "integer"
},
"start_time": {
"description": "Start of time as ms-epoch or ISO-8601. History is clamped to your plan's window.",
"type": "string"
},
"ticker": {
"description": "Exact Kalshi market ticker from kalshi_search_markets (never constructed from a timestamp).",
"type": "string"
}
},
"required": [
"ticker"
]
}🟢limitless_search_markets(coin, cursor, limit, type)
List currently-open Limitless (Base CLOB) markets, DepthFeed-exclusive. Every account plan; only the keyless demo surface is refused.
入力スキーマ
{
"type": "object",
"properties": {
"coin": {
"default": "btc",
"description": "Crypto asset. Every account plan reaches all seven; only the keyless demo surface is BTC-only.",
"enum": [
"btc",
"eth",
"sol",
"xrp",
"doge",
"bnb",
"hype"
],
"type": "string"
},
"cursor": {
"description": "Opaque pagination cursor from a previous response's pagination.next_cursor.",
"type": "string"
},
"limit": {
"description": "Page size (1–100).",
"maximum": 100,
"minimum": 1,
"type": "integer"
},
"type": {
"description": "Filter by market window/type.",
"type": "string"
}
}
}🟢limitless_get_orderbook(slug)
Latest L2 depth (bids desc / asks asc) for a Limitless market by slug. Every account plan; only the keyless demo surface is refused.
入力スキーマ
{
"type": "object",
"properties": {
"slug": {
"description": "Limitless market slug from limitless_search_markets.",
"type": "string"
}
},
"required": [
"slug"
]
}🟢limitless_get_snapshots(cursor, end_time, fill, interval, limit, ...)
Historical L2 depth snapshots (time series) for a Limitless market by slug. Every account plan; history is bounded by your plan window.
入力スキーマ
{
"type": "object",
"properties": {
"cursor": {
"description": "Opaque pagination cursor from a previous response's pagination.next_cursor.",
"type": "string"
},
"end_time": {
"description": "End of time as ms-epoch or ISO-8601. History is clamped to your plan's window.",
"type": "string"
},
"fill": {
"description": "ffill returns ONE ROW PER BUCKET for the whole window, carrying the last captured book into buckets that held no capture. Each row then carries `filled` (0 = a capture, 1 = carried forward) and `as_of_ts`, the moment that book was recorded. Requires `interval`. Without it, `interval` returns only the buckets that held a capture — a short series means the market is quoted infrequently, not that data is missing.",
"enum": [
"ffill",
"none"
],
"type": "string"
},
"interval": {
"description": "Downsample bucket — 30s, 1m, 5m, 1h, up to 1d. Returns the newest book in each bucket. Omit for every recorded book change.",
"type": "string"
},
"limit": {
"description": "Page size (1–1000).",
"maximum": 1000,
"minimum": 1,
"type": "integer"
},
"slug": {
"description": "Limitless market slug.",
"type": "string"
},
"start_time": {
"description": "Start of time as ms-epoch or ISO-8601. History is clamped to your plan's window.",
"type": "string"
}
},
"required": [
"slug"
]
}🟢bars(end_time, start_time, symbols, timeframe)
OHLCV price bars for US equities and ETFs, Binance spot pairs, and perpetual futures. One minute is the finest resolution; 5Min, 15Min, 1Hour and 1Day are rolled up from it and say so with `derived`. Spell a crypto pair the way the venue does (BTCUSDT, not BTC) and a perpetual with a .P suffix (BTCUSDT.P) — spot and perp are different instruments at different prices. BTCU, ETHU and WLDU are each both a US ETF and a Binance pair, and resolve to the equity — pass venue=binance to reach the pair instead. Optional `venue` selects the market explicitly: us-equities, binance (spot) or binance-futures (perpetuals). Bounded by the same plan history window as every other read (403 HISTORY_LIMIT_EXCEEDED past it); the plan also sets how many symbols one request may carry.
入力スキーマ
{
"type": "object",
"properties": {
"end_time": {
"description": "End of time as ms-epoch or ISO-8601. History is clamped to your plan's window.",
"type": "string"
},
"start_time": {
"description": "Start of time as ms-epoch or ISO-8601. History is clamped to your plan's window.",
"type": "string"
},
"symbols": {
"description": "Comma-separated symbols, e.g. \"AAPL,BTCUSDT,BTCUSDT.P\". 3 per request on Explorer, 8 Quant, 16 Research, 32 Desk.",
"type": "string"
},
"timeframe": {
"description": "1Min (default), 5Min, 15Min, 1Hour or 1Day.",
"type": "string"
}
},
"required": [
"symbols"
]
}🟢backtest_paths(coin, ids, interval)
Mid-price path per Polymarket market for backtesting, resampled to a fixed interval and bounded to each market's own lifetime so post-settlement books cannot leak in as risk-free fills. Returns {interval_seconds, markets:{<market_id>:{points:[[ts_ms, price_up, coin_price], …]}}} — up to 1000 points per market. Pass 1 to 50 market ids from polymarket_search_markets. History is bounded by the plan window and the interval floor by plan; both fail closed rather than silently coarsening.
入力スキーマ
{
"type": "object",
"properties": {
"coin": {
"default": "btc",
"description": "Crypto asset. Every account plan reaches all seven; only the keyless demo surface is BTC-only.",
"enum": [
"btc",
"eth",
"sol",
"xrp",
"doge",
"bnb",
"hype"
],
"type": "string"
},
"ids": {
"description": "Comma-separated Polymarket market ids, 1 to 50, from polymarket_search_markets.",
"type": "string"
},
"interval": {
"description": "Resample interval in seconds (default 60). The floor is set by plan; a finer value is refused, not rounded.",
"type": "integer"
}
},
"required": [
"ids"
]
}🟢screener
Cross-venue top-of-book snapshot for all assets across Polymarket, Kalshi, and Binance — a one-shot overview of the current state. No arguments.
入力スキーマ
{
"type": "object",
"properties": {}
}🟢whoami
Show the current session's plan, rate limits, history window, and coin access (reflects keyless demo vs. your API key).
入力スキーマ
{
"type": "object",
"properties": {}
}コミュニティ
エビデンス