Kalshi Eye
Search 69B+ rows of Kalshi, Polymarket and Limitless order book history: markets, price paths, recording coverage and daily Parquet download links.
Documentation
Kalshi Eye MCP server
An MCP server that lets AI assistants such as Claude and Cursor search the Kalshi Eye archive of prediction market data. It can find Kalshi, Polymarket and Limitless markets, show how a market's price moved, check what was recorded, and list the order book files you can download.
It needs a Kalshi Eye API key: create one at API keys (a free account works) and set it as KALSHIEYE_API_KEY.
Install
Claude Code:
claude mcp add kalshieye -e KALSHIEYE_API_KEY=clab_your_key -- uvx kalshieye-mcp
Claude Desktop, Cursor and other clients (claude_desktop_config.json, .cursor/mcp.json, ...):
{
"mcpServers": {
"kalshieye": {
"command": "uvx",
"args": ["kalshieye-mcp"],
"env": { "KALSHIEYE_API_KEY": "clab_your_key" }
}
}
}
Without a key, or with a placeholder, every tool answers with how to get one. Listing files and download links cover the datasets your plan includes.
uvx comes with uv. With pip instead: pip install kalshieye-mcp, then use kalshieye-mcp as the command.
Tools
| Tool | What it does |
|---|---|
search | Find series, events and markets by keyword, venue, category or status. Series lead and come a page at a time (series_total, has_more, offset); events and markets are the 10 best whose words hold the query, with events_found / markets_found (exact up to 10,000, then *_found_exact: false) and more_events / more_markets, the paged calls that list every match |
get_series | One series: what it is, how often it runs, markets in the catalog, and days of data files |
list_markets | A series' markets, or the markets on every venue holding each word of q (venue narrows it), newest first, with status and result. A page at a time: total (with q, exact up to 10,000, then total_exact: false), and next_cursor (with q) or next_offset, passed back until it is null |
list_events | Every event on every venue whose title, series name or category holds each word of the query, newest first, a page at a time (next_cursor), with total and total_exact |
get_market | One market's terms, status, result, and how much of it was recorded |
market_price_history | The recorded YES bid/ask path, up to about 240 points over the market's busiest stretch; path_source is life, busiest or window |
list_datasets | Every dataset: what it holds, columns, plan, days available |
dataset_series | Which series have files in a dataset, with days, rows and size, up to 500 a page with total and next_offset |
recording_status | Whether recording is running, and the recorded share of recent days by venue |
list_files | Daily Parquet files for a dataset, date range and series, page by page |
download_links | Signed download URLs for up to 100 of those files (counts toward the monthly allowance) |
Things to ask:
- "Which bitcoin markets does Kalshi Eye record, and since when?"
- "What were the last few hours of the Bills vs Rams market on October 12 like?"
- "How much of the Fed decision series is in the order book files?"
- "Is the recorder running, and how complete was last week?"
Notes
- Kalshi is recorded since October 12, 2026; Polymarket, Limitless and Chainlink prices since October 15, 2026. Each UTC day is published the next morning.
- Prices are dollars between 0 and 1. A Kalshi YES ask is 1 minus the best NO bid. Times are UTC.
- Free data without any key: a one-day sample on Hugging Face and runnable examples. The Python client for downloading files is
kalshieye. KALSHIEYE_BASE_URLpoints the server at another deployment (defaulthttps://kalshieye.com).
Kalshi Eye is independent and is not affiliated with Kalshi, Polymarket or Limitless. MIT licensed.