IBKR MCP
MCP server for Interactive Brokers via IB Gateway on Windows. Runs in Docker and connects to IB Gateway on the host through host.docker.internal.
Features
- Live account (port 4001): read positions, quotes, option chains, day-trade status
- Paper account (port 4002): same reads plus place/cancel stock and option orders
Quick start
- Configure IB Gateway API (see SETUP_GUIDE.md)
- Install Python deps for local dev:
pip install -e ".[dev]"
- Install Cursor launchers:
.\scripts\Install-IbkrMcpLaunchers.ps1
- Add
ibkr-liveand/oribkr-paperto Claude Desktop MCP config (Store app path below) - Restart Claude Desktop, start IB Gateway, then use the MCP tools in chat
Claude config (Microsoft Store): C:\Users\rodri\AppData\Local\Packages\Claude_pzs8sxrjxfjjc\LocalCache\Roaming\Claude\claude_desktop_config.json
Local run (no Docker)
set IBKR_HOST=127.0.0.1
set IBKR_PORT=4002
set IBKR_TRADING_ENABLED=true
python -m ibkr_mcp.server
Dev container
Open the repo in a dev container (.devcontainer/devcontainer.json). The container uses host.docker.internal to reach IB Gateway on Windows.
Tools
| Tool | Live | Paper | |------|------|-------| | ibkr_health_check | yes | yes | | ibkr_get_positions | yes | yes | | ibkr_get_account_summary | yes | yes | | ibkr_get_daytrade_status | yes | yes | | ibkr_get_quote | yes | yes | | ibkr_get_historical_bars | yes | yes | | ibkr_get_option_chain | yes | yes | | ibkr_place_stock_order | no | yes | | ibkr_place_option_order | no | yes | | ibkr_cancel_order | no | yes | | ibkr_get_open_orders | yes | yes |
Stack
Tests
pytest










