cejor6 avatar

Kalshi Prediction Markets

cejor6/kalshi-mcp-server

Connects Claude to Kalshi prediction markets with native RSA-PSS authentication and client-side rate limiting that mirrors Kalshi's token bucket model. Exposes 26 tools across REST and WebSocket for reading market data, placing orders, and managing positions, plus 4 resources for structured market access. Built with a two-step prepare/confirm flow and configurable safety caps (order size, daily limits, cash reserves) that refuse to start against production without explicit opt-in flags. Ships with an optional OAuth proxy for remote MCP deployments and works in demo mode by default. Designed for users who need production-grade guardrails when letting an LLM interact with real trading APIs.

GitHub stars
1
tools
41
auth
Secret needed
transport
STDIO
env vars
6
last updated
May 31, 2026

Tools

41 tools

Public tool metadata for what this MCP can expose to an agent.

kalshi_get_exchange_status

No parameter schema in public metadata yet.

kalshi_get_exchange_schedule

No parameter schema in public metadata yet.

kalshi_get_api_limits

No parameter schema in public metadata yet.

kalshi_get_environment

No parameter schema in public metadata yet.

kalshi_set_safety_limits

No parameter schema in public metadata yet.

kalshi_get_markets

No parameter schema in public metadata yet.

kalshi_find_liquid_markets

No parameter schema in public metadata yet.

kalshi_get_market

No parameter schema in public metadata yet.

kalshi_get_event

No parameter schema in public metadata yet.

kalshi_get_events

No parameter schema in public metadata yet.

kalshi_get_series

No parameter schema in public metadata yet.

kalshi_get_series_list

No parameter schema in public metadata yet.

kalshi_get_series_summary

No parameter schema in public metadata yet.

kalshi_get_milestones

No parameter schema in public metadata yet.

kalshi_get_trades

No parameter schema in public metadata yet.

kalshi_get_orderbook

No parameter schema in public metadata yet.

kalshi_get_orderbooks

No parameter schema in public metadata yet.

kalshi_get_market_candlesticks

No parameter schema in public metadata yet.

kalshi_get_event_candlesticks

No parameter schema in public metadata yet.

kalshi_get_batch_candlesticks

No parameter schema in public metadata yet.

kalshi_get_event_forecast_history

No parameter schema in public metadata yet.

kalshi_get_market_trades

No parameter schema in public metadata yet.

kalshi_get_combo_collections

No parameter schema in public metadata yet.

kalshi_get_combo_collection

No parameter schema in public metadata yet.

kalshi_get_combo_events

No parameter schema in public metadata yet.

kalshi_get_combo_legs

No parameter schema in public metadata yet.

kalshi_create_combo_marketWrite tool. Materializes a combo market ticker for a chosen leg set; places no order. Registered only when MCP_ALLOW_COMBO_CREATION=1.

Write tool. Materializes a combo market ticker for a chosen leg set; places no order. Registered only when MCP_ALLOW_COMBO_CREATION=1.

No parameter schema in public metadata yet.

kalshi_get_balance

No parameter schema in public metadata yet.

kalshi_get_positions

No parameter schema in public metadata yet.

kalshi_get_orders

No parameter schema in public metadata yet.

kalshi_get_fills

No parameter schema in public metadata yet.

kalshi_get_settlements

No parameter schema in public metadata yet.

kalshi_prepare_order

No parameter schema in public metadata yet.

kalshi_confirm_order

No parameter schema in public metadata yet.

kalshi_cancel_order

No parameter schema in public metadata yet.

kalshi_decrease_order

No parameter schema in public metadata yet.

kalshi_get_order

No parameter schema in public metadata yet.

kalshi_get_live_orderbook

No parameter schema in public metadata yet.

kalshi_sample_trades

No parameter schema in public metadata yet.

kalshi_fetch_external_dataHost-allowlisted, GET-only, https-only fetch of public data feeds; no credentials attached, redirects not followed, body size- and time-capped, returned wrapped in UNTRUSTED-EXTERNAL-DATA delimiters.

Host-allowlisted, GET-only, https-only fetch of public data feeds; no credentials attached, redirects not followed, body size- and time-capped, returned wrapped in UNTRUSTED-EXTERNAL-DATA delimiters.

No parameter schema in public metadata yet.

kalshi_score_marketsRanks liquid markets by apparent edge using Jev; read-only, places no orders. Registered only when MCP_ALLOW_JEV_SCORING=1.

Ranks liquid markets by apparent edge using Jev; read-only, places no orders. Registered only when MCP_ALLOW_JEV_SCORING=1.

No parameter schema in public metadata yet.

Sponsors

Configuration

KALSHI_API_KEY_ID*

Kalshi API key ID from https://kalshi.com/account/profile

KALSHI_PRIVATE_KEY_PATH

Filesystem path to the RSA private key PEM. Set this or KALSHI_PRIVATE_KEY_PEM.

KALSHI_PRIVATE_KEY_PEMsecret

Inline PEM contents, for hosted deploys without filesystem access.

KALSHI_ENV

demo or prod. Defaults to demo for safety.

KALSHI_ALLOW_PROD

Must be 1 for the server to start with KALSHI_ENV=prod. Defaults to 0.

KALSHI_TRADING_ENABLED

Must be 1 for order-placement tools to operate. Read-only by default (0).

Readme

kalshi-mcp-server

PyPI CI License: MIT Python 3.11+ Code style: ruff

📦 PyPI  ·  🗂️ MCP Registry  ·  🐳 Container image  ·  🚀 Deploy guide


View the full README on GitHub

Details

Repository
github.com/cejor6/kalshi-mcp-server
Package
kalshi-mcp-server
Transport
STDIO
Auth
Required
Registry
MCP registry, active