The order tool takes the full set of Kalshi order parameters — time in force, post-only, reduce-only, max cost — so it is a real trading surface rather than a demonstration. The public category lookups need no key, which makes research and trading cleanly separable if you want them to be.
An MCP server for Kalshi, the regulated prediction market, wrapping both the public search endpoints and the private portfolio and order endpoints.
- Market discovery without credentials: tags by category, and the category list
- Portfolio state: account balance, subaccount balances, and open positions
- Subaccounts created, up to the per-user cap
- Orders listed with filters on ticker, event ticker, status (resting, canceled, executed), time range, subaccount and a page size, with a pagination cursor
- A single order fetched by its ID with all fields
- Orders placed with ticker, side (yes or no) and action (buy or sell), plus price in cents or dollars, contract count, client order ID, expiry timestamp, time in force (fill or kill, good till canceled, immediate or cancel), max buy cost, post-only and reduce-only
- Orders cancelled after the fact
A Kalshi account with API key authentication: the key's ID, and the path to its private key file, both set in the environment. The category and tag lookups work without a key; everything touching the portfolio or an order requires one — and an order placed here is a real position.
Build from source — clone the repository and build it
