Skip to main content

Interactive Brokers MCP Server for TWS API

Project description

IBKR-MCP-Server

A Model Context Protocol (MCP) Server for Interactive Brokers TWS API that enables AI assistants to access portfolio data, account information, and real-time market prices.

Features

  • get_portfolio() - Retrieve current portfolio with positions and P&L
  • get_account_summary() - Get account balances and key metrics
  • get_stock_price(symbol) - Look up current stock prices
  • get_option_price(symbol, expiry, strike, right) - Get option prices

Prerequisites

  1. Interactive Brokers Account (Paper or Live)
  2. TWS (Trader Workstation) or IB Gateway running
  3. Python 3.10+

Quick Start

1. Install Dependencies

# Clone and setup
git clone https://github.com/your-username/IBKR-MCP-Server.git
cd IBKR-MCP-Server

# Install with UV (recommended)
curl -LsSf https://astral.sh/uv/install.sh | sh
uv sync

# Or with pip
python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate
pip install -e .

2. Configure Connection

# Copy example config
cp env.example .env

# Edit .env file:
IBKR_HOST=127.0.0.1
IBKR_PORT=7497              # 7497 for paper, 7496 for live
IBKR_CLIENT_ID=1
IBKR_IS_PAPER=true          # true for paper, false for live

3. Configure TWS

In TWS, go to ConfigureGlobal ConfigurationAPISettings:

  • Enable ActiveX and Socket Clients
  • Socket port: 7497 (paper) or 7496 (live)
  • Read-Only API (must be disabled)

4. Test Setup

# Test connection
uv run python test_connection.py

5. Run Server

# Start the MCP server
uv run python src/ibkr_mcp/server.py

6. Claude Desktop Integration

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "ibkr": {
      "command": "uv",
      "args": ["run", "python", "src/ibkr_mcp/server.py"],
      "cwd": "/path/to/IBKR-MCP-Server",
      "env": {
        "IBKR_PORT": "7497",
        "IBKR_IS_PAPER": "true"
      }
    }
  }
}

Usage Examples

  • "Analyze my current portfolio performance"
  • "What's the current price of AAPL and MSFT?"
  • "Show me my account summary"

Troubleshooting

Connection Issues:

  • Ensure TWS/IB Gateway is running
  • Check API settings are enabled in TWS
  • Verify correct port (7497 vs 7496)

Permission Issues:

  • Disable "Read-Only API" in TWS settings
  • Enable API in TWS global configuration

⚠️ Disclaimer: This software is for educational purposes. Use at your own risk. Start with paper trading.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iflow_mcp_xiao81_ibkr_mcp_server-0.1.0.tar.gz (14.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file iflow_mcp_xiao81_ibkr_mcp_server-0.1.0.tar.gz.

File metadata

  • Download URL: iflow_mcp_xiao81_ibkr_mcp_server-0.1.0.tar.gz
  • Upload date:
  • Size: 14.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_xiao81_ibkr_mcp_server-0.1.0.tar.gz
Algorithm Hash digest
SHA256 863e04cf0d3e5d96beb7cb6db47f4fc06e220bad6c96bab4722eb5954ce83934
MD5 3a4384f66a11ed73711518e7526d8a40
BLAKE2b-256 e2b043b12cf621fba6ab823c3e5e3d42a9a9c4fd759b77a3a093828283f82435

See more details on using hashes here.

File details

Details for the file iflow_mcp_xiao81_ibkr_mcp_server-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: iflow_mcp_xiao81_ibkr_mcp_server-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 15.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_xiao81_ibkr_mcp_server-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a5675771f0f8e8de363dfc9c375547c4e7c82d12d26d7f2e94f2113c70f6977a
MD5 8ac22edf1c8e5b69298117df0cd0fd87
BLAKE2b-256 733aa4c9dafb665f6d83179b1af198de03b091bd1801a497ab4328393495bf37

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page