kalshi_price_history

Pack: kalshi · Connect: https://pipeworx.io/mcp (see Connect below for a single-pack URL)

No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/kalshi_price_history for the schema, then POST the same URL with its arguments for the data.

How a Kalshi market’s Yes-price moved over time, as a timestamped series.

Tool description as the model sees it

Historical price/probability time-series (candlesticks) for a Kalshi market — how the YES odds moved over time, for ANY window, including one that ended long ago. Pass a market ticker (e.g. “KXFEDDECISION-28JAN-H26”) plus either an explicit start_ts/end_ts window (“what did this market think in March?”) or lookback_days as sugar for a window ending now. Returns OHLC candles: YES price (open/high/low/close/mean as probability 0-1), best bid/ask, volume, and open interest per interval. Kalshi serves at most 5,000 candles per request; a window larger than that comes back as page 1 with next_cursor and complete: false — pass the cursor straight back for the next slice, oldest-first — so a long window is never silently shortened. Kalshi also MOVES older markets out of its live endpoints, where they 404; this routes to Kalshi’s historical archive automatically and reports which one answered in source, so backtesting a resolved 2024 market works the same way as charting a live one. The Kalshi analogue of polymarket_price_history.

Parameters

NameTypeRequiredDescription
tickerstringnoKalshi market ticker (e.g. “KXFEDDECISION-28JAN-H26”). The series is derived from the ticker automatically. Required unless you are passing cursor.
intervalstringno”1h” (hourly) | “1d” (daily, default) | “1m” (per-minute). Coarser intervals cover longer history per request.
lookback_daysnumbernoSugar for a window length in days (1-365, default 30). Anchors to start_ts if you gave one, to end_ts if you gave that, and to now if you gave neither. Ignored when both start_ts and end_ts are set.
start_tsstringnoWindow START — ISO date (“2026-03-01”), ISO datetime (“2026-03-01T00:00:00Z”), or unix seconds. Use with end_ts to ask about a window that does NOT end today.
end_tsstringnoWindow END — same formats as start_ts. Defaults to now when omitted.
cursorstringnoPass back next_cursor from a previous response to fetch the next slice of a window too large for one request (>5,000 candles). The cursor carries the ticker, interval and remaining window, so no other argument is needed with it.

Example call

Arguments

{
  "ticker": "KXFED-26OCT-T3.50"
}

curl

curl -X POST https://gateway.pipeworx.io/kalshi/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"kalshi_price_history","arguments":{"ticker":"KXFED-26OCT-T3.50"}}}'

TypeScript (@pipeworx/sdk)

import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();

const result = await pipeworx.call('kalshi_price_history', {
  "ticker": "KXFED-26OCT-T3.50"
});

More examples

{
  "ticker": "KXALIENS-27",
  "interval": "1h",
  "lookback_days": 7
}
{
  "ticker": "KXFEDDECISION-28JAN-H26",
  "interval": "1d",
  "start_ts": "2026-03-01",
  "end_ts": "2026-04-01"
}
{
  "ticker": "PRES-2024-DJT",
  "interval": "1d",
  "start_ts": "2024-10-05",
  "end_ts": "2024-11-10"
}

Connect

Add this to your MCP client config — every tool in the catalog, including this one — or use one-click install buttons:

{
  "mcpServers": {
    "pipeworx": {
      "url": "https://pipeworx.io/mcp"
    }
  }
}
Connect to just the kalshi pack
{
  "mcpServers": {
    "kalshi": {
      "url": "https://gateway.pipeworx.io/kalshi/mcp"
    }
  }
}

See Getting Started for client-specific install steps.

Regenerated from source · build October 27, 2026