Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,545Letters: 14Defects: 1,324counted 3 min ago
teppi

Server definition

Hash
sha256:2363d490457cec05bab6258ab086608f00d138794d2f2be5dfccc2f7f5b8e67c
What it is
What a remote MCP server returned when asked what it offers: 15 tools

The blob, as servednamed by its sha256

{ "instructions": "DepthFeed serves prediction-market order-book depth and history for Polymarket, Kalshi, and Limitless across BTC/ETH/SOL/XRP/DOGE/BNB/HYPE up/down markets. Paid data plans can use polymarket_all_markets for the complete current Polymarket universe in a compact MARKET_NAME | PRICE | DEADLINE format. Then use the *_search_markets tools or the returned market ids to inspect depth and history with *_get_orderbook / *_get_snapshots tools for live and historical depth; `screener` gives a cross-venue top-of-book view. Without an API key you are on the keyless demo tier (BTC + Polymarket, top-of-book only). Set a DepthFeed API key (Authorization: Bearer df_…, from https://depthfeed.com) to unlock all coins, Kalshi, Limitless, the full ladder, and deep history. Timestamps accept ms-epoch or ISO-8601.", "tools": [ { "description": "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.", "inputSchema": { "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" ], "type": "object" }, "name": "backtest_paths", "outputSchema": null }, { "description": "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.", "inputSchema": { "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" ], "type": "object" }, "name": "bars", "outputSchema": null }, { "description": "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.", "inputSchema": { "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" ], "type": "object" }, "name": "kalshi_get_candles", "outputSchema": null }, { "description": "Latest yes/no order-book depth for a Kalshi market by ticker. Every account plan; only the keyless demo surface is refused.", "inputSchema": { "properties": { "ticker": { "description": "Kalshi market ticker from kalshi_search_markets.", "type": "string" } }, "required": [ "ticker" ], "type": "object" }, "name": "kalshi_get_orderbook", "outputSchema": null }, { "description": "Historical yes/no depth snapshots for a Kalshi market by ticker. Every account plan; history is bounded by your plan window.", "inputSchema": { "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" ], "type": "object" }, "name": "kalshi_get_snapshots", "outputSchema": null }, { "description": "List Kalshi crypto markets (full yes/no depth, DepthFeed-exclusive). Every account plan; the keyless demo surface returns a 402 upsell.", "inputSchema": { "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" } }, "type": "object" }, "name": "kalshi_search_markets", "outputSchema": null }, { "description": "Latest L2 depth (bids desc / asks asc) for a Limitless market by slug. Every account plan; only the keyless demo surface is refused.", "inputSchema": { "properties": { "slug": { "description": "Limitless market slug from limitless_search_markets.", "type": "string" } }, "required": [ "slug" ], "type": "object" }, "name": "limitless_get_orderbook", "outputSchema": null }, { "description": "Historical L2 depth snapshots (time series) for a Limitless market by slug. Every account plan; history is bounded by your plan window.", "inputSchema": { "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" ], "type": "object" }, "name": "limitless_get_snapshots", "outputSchema": null }, { "description": "List currently-open Limitless (Base CLOB) markets, DepthFeed-exclusive. Every account plan; only the keyless demo surface is refused.", "inputSchema": { "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" } }, "type": "object" }, "name": "limitless_search_markets", "outputSchema": null }, { "description": "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.", "inputSchema": { "properties": {}, "type": "object" }, "name": "polymarket_all_markets", "outputSchema": null }, { "description": "Fetch a single Polymarket market by id (market_id) or by slug. Provide exactly one of market_id or slug.", "inputSchema": { "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" } }, "type": "object" }, "name": "polymarket_get_market", "outputSchema": null }, { "description": "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.", "inputSchema": { "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" ], "type": "object" }, "name": "polymarket_get_snapshots", "outputSchema": null }, { "description": "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.", "inputSchema": { "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" } }, "type": "object" }, "name": "polymarket_search_markets", "outputSchema": null }, { "description": "Cross-venue top-of-book snapshot for all assets across Polymarket, Kalshi, and Binance — a one-shot overview of the current state. No arguments.", "inputSchema": { "properties": {}, "type": "object" }, "name": "screener", "outputSchema": null }, { "description": "Show the current session's plan, rate limits, history window, and coin access (reflects keyless demo vs. your API key).", "inputSchema": { "properties": {}, "type": "object" }, "name": "whoami", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:2363d490457cec05bab6258ab086608f00d138794d2f2be5dfccc2f7f5b8e67c | sha256sum