MCP Server Kalshi
This is an MCP server for the Kalshi REST API
Configuration
Claude Desktop
Setting up with UVX
"mcpServers": {
"kalshi": {
"command": "uvx",
"args": ["mcp-server-kalshi"],
"env": {
"KALSHI_PRIVATE_KEY_PATH": "PATH TO YOUR RSA KEY FILE",
"KALSHI_API_KEY": "<YOUR KALSHI API KEY>",
"BASE_URL": "https://api.elections.kalshi.com"
}
}
}
Setting up with Docker
-
Build the container from root directory
docker build -t mcp-server-kalshi . -
Configure client to run the container (ensure the bind command gives the container access to your rsa key files)
"mcpServers": {
"kalshi": {
"command": "docker",
"args": ["run", "--rm", "-i", "--mount", "type=bind,src=/Users/username,dst=/Users/username", "-e", "KALSHI_PRIVATE_KEY_PATH", "-e", "KALSHI_API_KEY","-e", "BASE_URL", "mcp-server-kalshi"],
"env": {
"KALSHI_PRIVATE_KEY_PATH": "PATH TO YOUR RSA KEY FILE",
"KALSHI_API_KEY": "<YOUR KALSHI API KEY>",
"BASE_URL": "https://api.elections.kalshi.com"
}
}
}
Local Development
-
Create a
.envfile in the root directory with the following variablesBASE_URLThe kalshi API URLKALSHI_API_KEYThe API key for the corresponding environmentKALSHI_PRIVATE_KEY_PATHA filepath to a file containing your Kalshi RSA private key
-
Install deps via
uv pip install -e .Dev deps can be installed withuv pip install -e .[dev] -
Run with
uv run start
Getting Kalshi API Creds
To get Kalshi API creds, follow the instrictions here
Getting a Test Account
You may want to run the server against a kalshi demo account. To get an account, follow the instructions here
Then, set BASE_URL=https://demo-api.kalshi.co for this MCP server and update your KALSHI_API_KEY and KALSHI_PRIVATE_KEY_PATH to point towards credentials generated in the testing environment
UVX
To run in MCP inspector
npx @modelcontextprotocol/inspector uv --directory /path/to/your/mcp-server-kalshi run start
To run in claud desktop, update your MCP config to:
{
"mcpServers": {
"kalshi": {
"command": "uv",
"args": [
"--directory",
"/<path to repo root directory>",
"run",
"start"
],
"env": {
"KALSHI_PRIVATE_KEY_PATH": "PATH TO YOUR RSA KEY FILE",
"KALSHI_API_KEY": "<YOUR KALSHI API KEY>",
"BASE_URL": "https://api.elections.kalshi.com"
}
}
}
}
