A coding agent can do more with Kalshi Eye than a chat can: it finds the markets with the connector, downloads the Parquet files with the Python client, and writes and runs the code that reads them. This guide sets that up in Claude Code, Codex, Cursor and VS Code.
Updated November 13, 2026.
1. Add the connector
The URL is the same everywhere. The first time the agent connects, sign in to Kalshi Eye and press Allow.
Claude Code
claude mcp add --transport http -s user kalshieye https://kalshieye.com/mcp # then, inside Claude Code: /mcp, pick kalshieye, sign in
Codex
codex mcp add kalshieye --url https://kalshieye.com/mcp codex mcp login kalshieye
The Codex IDE extension and the ChatGPT desktop app read the same config.
Cursor
Put this in ~/.cursor/mcp.json, or .cursor/mcp.json for one project:
{
"mcpServers": {
"kalshieye": { "url": "https://kalshieye.com/mcp" }
}
}VS Code
Run MCP: Add Server from the Command Palette, choose HTTP and paste https://kalshieye.com/mcp.
2. Add the Python client
The connector finds things; the Python client downloads them. Create a key on API and put it where the agent's code can read it, not in the chat:
pip install "kalshieye[pandas]" duckdb echo 'KALSHIEYE_API_KEY=clab_...' >> .env # keep .env out of git
Client() reads KALSHIEYE_API_KEY from the environment; tell the agent to load the .env file, or export the variable in the shell it runs. Files land in ./kalshieye-data, laid out by dataset and day, and are checked against their checksums. Files already there are skipped and don't count again.
3. Give it work
Tasks that name the series, the days and what you want back work best:
- Find the Kalshi series for 15-minute ether markets and download its trades for October 25 to 27.
- Download book_l2 for KXBTC15M on October 25, 2026 and show the top three levels of KXBTC15M-26OCT251200-00 at 11:55 AM Eastern.
- For every KXBTC15M market on October 25, compare the YES ask five minutes before close with how it settled, by 10-cent bucket.
- Check how complete recording was last week, then download only the days that are complete.
The agent looks things up with the tools (search, get_series, recording_status, list_files), then downloads with the client and reads the files with DuckDB or pandas. The columns are in the data dictionary; point the agent there when it guesses.
4. For backtests, give it the rules
Backtests need care that agents skip: fills at the ask, no bar used before it ends, Kalshi's fee, recorder gaps. The agent backtesting guide has an AGENTS.md to drop in the project, and tested examples for NautilusTrader, hftbacktest and backtesting.py.
Limits
Tool calls and client calls both use API requests from your plan; on Explorer that is 100 a day. Downloads count toward the monthly allowance, and each dataset follows your plan. BTC 15 min (KXBTC15M) on October 25, 2026 is the free sample: every dataset, on any plan.
Questions
Why does the agent need an API key if the connector signs in?
The connector finds markets and files. Downloading files to disk for code to read uses the Python client, which signs in with an API key. A free account gets one.
Can the agent work without the connector?
Yes. The Python client and the REST API cover everything the tools do. The connector saves the agent from writing calls just to look things up, and its answers come back shaped for it.
Is there a local MCP server?
Yes: uvx kalshieye-mcp runs the same tools on your machine with an API key. See the MCP server page.
Next
- Backtest with an AI agent: the rules and the backtesters.
- Kalshi order book data: rebuilding a book from book_l2.
- MCP server: every tool and the sign-in details.