Skip to main content
Glama

DepthFeed

backtest_paths

Read-only

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:{:{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.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idsYesComma-separated Polymarket market ids, 1 to 50, from polymarket_search_markets.
coinNoCrypto asset. Every account plan reaches all seven; only the keyless demo surface is BTC-only.btc
intervalNoResample interval in seconds (default 60). The floor is set by plan; a finer value is refused, not rounded.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed1 schema field changed
    • changedInput schema / properties / coin / description
      Previous value: -"Crypto asset. Keyless/demo and Free plans are BTC-only; all 7 require a paid plan."New value: +"Crypto asset. Every account plan reaches all seven; only the keyless demo surface is BTC-only."
  2. Added

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, and the description adds substantial behavioral context: resampling behavior, market-lifetime bounding to avoid risk-free post-settlement fills, the 1000-point cap, and plan-based limits that fail closed rather than silently coarsening. This goes beyond the annotations and helps an agent trust the returned data.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but efficient, front-loading the core purpose before returning format and parameter constraints. Every sentence contributes: what the data is, the output shape, the source of ids, and the plan-based bounds.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description supplies the return shape inline, including interval_seconds, per-market points with timestamp and price fields, and the point cap. It also covers allowed inputs, defaults, and failure semantics, making it sufficient for an agent to call the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already covers 100% of parameters, and the description still adds meaning: ids must come from polymarket_search_markets, interval has a plan-defined floor that is refused rather than rounded, and coin behavior distinguishes keyless demo (BTC-only) from full plans. This is meaningful enrichment over the raw schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific resource and action: it provides resampled mid-price paths per Polymarket market for backtesting. It differentiates itself from sibling tools by emphasizing backtesting-specific constraints such as bounding to each market's lifetime and preventing post-settlement leakage.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear usage context: pass 1 to 50 market ids from polymarket_search_markets, and notes that history and interval floor are determined by the plan. It does not explicitly enumerate exclusions versus sibling tools like bars or snapshots, but the backtesting framing makes the intended use clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.1/5.0
Disambiguation5/5

Each tool targets a distinct venue and data type: Polymarket/Kalshi/Limitless-specific search, orderbook, and snapshot tools are clearly separated by prefix, while bars, backtest_paths, screener, and whoami serve unique purposes. No two tools could plausibly be confused in agent selection.

Naming Consistency4/5

Most tools follow a clear `<venue>_<action>_<object>` pattern (e.g., kalshi_get_orderbook, limitless_get_snapshots, polymarket_search_markets). A few like backtest_paths, bars, screener, and whoami break the pattern, but they are descriptive and consistent with their domain. Overall predictable and legible.

Tool Count5/5

15 tools is well-scoped for a multi-venue market data API. Each tool adds meaningful functionality—search, snapshots, candles, orderbooks, screener, session info—without redundancy. The count aligns well with the apparent coverage of prediction markets, crypto, and equities.

Completeness5/5

The surface covers read operations for all major venues: search, market detail, orderbook, historical snapshots, and OHLCV bars. It also includes backtesting, cross-venue screener, and session introspection. No obvious dead ends or missing critical operations for a data-centric server.

Resources