Skip to main content
Glama

DepthFeed

kalshi_get_snapshots

Read-only

Historical yes/no depth snapshots for a Kalshi market by ticker. Every account plan; history is bounded by your plan window.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fillNoffill 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.
limitNoPage size (1–1000).
cursorNoOpaque pagination cursor from a previous response's pagination.next_cursor.
tickerYesKalshi market ticker.
end_timeNoEnd of time as ms-epoch or ISO-8601. History is clamped to your plan's window.
intervalNoDownsample bucket — 30s, 1m, 5m, 1h, up to 1d. Returns the newest book in each bucket. Omit for every recorded book change.
start_timeNoStart of time as ms-epoch or ISO-8601. History is clamped to your plan's window.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / fill
      Added value: +{
      +  "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"
      +}
    • addedInput schema / properties / interval
      Added value: +{
      +  "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"
      +}
  2. First observed

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, covering the safety profile. The description adds one useful behavioral detail: history is clamped to the account's plan window. It does not disclose pagination, fill behavior, or return format, but given the annotation coverage, a score of 3 is appropriate.

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

Conciseness4/5

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

The description is two sentences, with the primary purpose stated first and a secondary constraint (plan window) following. It is free of redundancy and efficiently communicates the core function, though it could have started with an action verb for even stronger clarity.

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

Completeness3/5

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

There is no output schema, so the description carries some burden for explaining return behavior, but it does not mention what the snapshot data looks like or whether pagination is needed. The parameter schema is exhaustive and annotations cover safety, yet the lack of return-value context leaves a notable gap for an agent deciding whether to call this tool.

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

Parameters3/5

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

Schema description coverage is 100%, so every parameter (ticker, fill, interval, start_time, end_time, limit, cursor) already has detailed descriptions in the schema. The tool description adds no additional parameter meaning beyond what the schema provides, so the baseline of 3 applies.

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

Purpose4/5

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

The description clearly identifies the resource (Kalshi market by ticker) and the data type (historical yes/no depth snapshots). It distinguishes from siblings like kalshi_get_orderbook by emphasizing 'Historical' and from other platforms by naming Kalshi. However, it lacks an explicit verb like 'fetch' or 'get', making it slightly less direct than ideal.

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

Usage Guidelines3/5

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

The description implies usage for historical depth snapshot retrieval and adds a meaningful constraint (plan window bounds), but it does not specify when to choose this over alternatives such as kalshi_get_orderbook or limitless_get_snapshots. No explicit when-not-to-use guidance is provided.

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.

Resources