get_tags_for_series_categoriesLABSCO SUMMARY
A live trading account, one connection away.
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.
What it is
An MCP server for Kalshi, the regulated prediction market, wrapping both the public search endpoints and the private portfolio and order endpoints.
What you get
- 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
Requirements
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.
Setup effort
Build from source — get the source, then follow the project's own run instructions
USE CASES
Finding out what is tradeable in a subject you follow
Browse categories and their tags without needing credentials at all.
Checking where you stand
Read the account balance and open positions before deciding anything.
Placing a position on a market
Submit the order with ticker, side and action, plus a price limit and a time-in-force that matches your intent.
Working out what happened to an order
Filter orders by status and time window, then pull the single order for its full detail.
Pulling an order back
Cancel a resting order when the thesis has changed rather than waiting for it to expire.
Keeping strategies in separate books
Create a subaccount and read balances per subaccount, so one strategy's P&L is not mixed with another's.
16 tools
Listed in project docs. Your client may show a different list.
get_balanceget_subaccount_balancescreate_subaccountget_ordersget_ordercreate_ordercancel_orderget_positionsget_categoriesget_tags_for_series_categoryget_series_listget_series_tickers_for_categoryget_marketsget_open_markets_for_seriesget_open_market_titles_for_seriesBEFORE YOU INSTALL
What to know first
Tools you get
16 tools named in the project's documentation. Eight tools work without a key; the other eight need KALSHI_API_KEY_ID and KALSHI_API_KEY_PATH and handle your balance, positions and real orders.
Requires
- KALSHI_API_KEY_ID in your environment
- KALSHI_API_KEY_PATH in your environment
INSTALLATION
Connect your client
Get the source, then follow the project's own run instructions. This one is built from source rather than installed with a single command.
Server setup
Command (installed/editable):
python3 -m pip install -e .then:
python3 -m kalshi_mcp.serverCommand (no install), as an alternative to the two steps above:
PYTHONPATH=src python3 -m kalshi_mcp.serverSet KALSHI_API_KEY_ID and KALSHI_API_KEY_PATH (or put them in a .env file at the repo root) if you want the private/portfolio tools; the public tools work without them.