{
  "serverInfo": {
    "name": "ibkr",
    "title": "IBKR MCP Server",
    "version": "1.8.0",
    "description": "Local Interactive Brokers MCP server for agentic portfolio analysis, trading research, risk checks, and market workflows through IB Gateway or TWS.",
    "homepage": "https://osauer.dev/ibkr/",
    "repository": "https://github.com/osauer/ibkr",
    "license": "MIT"
  },
  "authentication": {
    "required": false,
    "schemes": []
  },
  "transports": [
    {
      "type": "stdio",
      "command": "ibkr",
      "args": ["mcp"]
    }
  ],
  "requirements": [
    "IB Gateway 10.37+ or TWS running locally",
    "IBKR Pro account with TWS API access"
  ],
  "compatibleHosts": [
    "Claude Desktop",
    "Claude Code",
    "Cursor",
    "Continue",
    "Zed",
    "any local stdio MCP host"
  ],
  "tools": [
    {
      "name": "ibkr_status",
      "description": "Daemon, gateway, account, and subsystem health for troubleshooting data freshness or connectivity.",
      "inputSchema": {"type": "object", "properties": {}, "additionalProperties": false}
    },
    {
      "name": "ibkr_account",
      "description": "Account-level net liquidation, buying power, cash, margin, daily P&L, and currency exposure.",
      "inputSchema": {"type": "object", "properties": {}, "additionalProperties": false}
    },
    {
      "name": "ibkr_positions",
      "description": "Open positions, option legs, Greeks, quote context, and exposure grouped by underlying.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "symbol": {"type": "string"},
          "type": {"type": "string", "enum": ["stock", "option"]}
        },
        "additionalProperties": false
      }
    },
    {
      "name": "ibkr_quote",
      "description": "Snapshot stock and ETF quotes with close context, freshness, spread, liquidity, and session warnings.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "symbols": {"type": "array", "items": {"type": "string"}, "minItems": 1},
          "market": {"type": "string"},
          "exchange": {"type": "string"},
          "primary_exchange": {"type": "string"},
          "currency": {"type": "string"}
        },
        "required": ["symbols"],
        "additionalProperties": false
      }
    },
    {
      "name": "ibkr_watch",
      "description": "Saved local watchlist symbols with optional enriched quotes and held-position context.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "include_positions": {"type": "boolean"},
          "include_quotes": {"type": "boolean"},
          "timeout_ms": {"type": "integer"}
        },
        "additionalProperties": false
      }
    },
    {
      "name": "ibkr_calendar",
      "description": "Official market-session calendars for supported US equity, US option, and Xetra markets.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "market": {"type": "string"},
          "date": {"type": "string"},
          "days": {"type": "integer"}
        },
        "additionalProperties": false
      }
    },
    {
      "name": "ibkr_chain",
      "description": "Option expiries, implied volatility, expected move, strike grids, deltas, open interest, and liquidity gates.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "symbol": {"type": "string"},
          "expiry": {"type": "string"},
          "width": {"type": "integer"},
          "side": {"type": "string"},
          "min_dte": {"type": "integer"},
          "max_dte": {"type": "integer"},
          "target_dte": {"type": "integer"},
          "all_expiries": {"type": "boolean"},
          "no_iv": {"type": "boolean"},
          "require_live_iv": {"type": "boolean"}
        },
        "required": ["symbol"],
        "additionalProperties": false
      }
    },
    {
      "name": "ibkr_history",
      "description": "Daily equity or ETF OHLCV history for lookback, range, and moving-average analysis.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "symbol": {"type": "string"},
          "days": {"type": "integer"}
        },
        "required": ["symbol"],
        "additionalProperties": false
      }
    },
    {
      "name": "ibkr_technical",
      "description": "One-call trend, moving-average, relative-strength, ATR, and liquidity screen for stocks and ETFs.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "symbols": {"type": "array", "items": {"type": "string"}, "minItems": 1},
          "benchmark": {"type": "string"},
          "lookback_days": {"type": "integer"},
          "market": {"type": "string"},
          "exchange": {"type": "string"},
          "primary_exchange": {"type": "string"},
          "currency": {"type": "string"}
        },
        "required": ["symbols"],
        "additionalProperties": false
      }
    },
    {
      "name": "ibkr_scan",
      "description": "Configured or ad-hoc IBKR market scanners with enriched quote and liquidity context.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "preset": {"type": "string"},
          "type": {"type": "string"},
          "exchange": {"type": "string"},
          "instrument": {"type": "string"},
          "limit": {"type": "integer"},
          "min_price": {"type": "number"},
          "min_volume": {"type": "integer"},
          "min_dollar_volume": {"type": "number"},
          "exclude_penny": {"type": "boolean"},
          "require_live": {"type": "boolean"}
        },
        "additionalProperties": false
      }
    },
    {
      "name": "ibkr_scan_params",
      "description": "Scanner catalog discovery for gateway-supported scan codes, locations, and instruments.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "instrument": {"type": "string"},
          "include_raw_xml": {"type": "boolean"}
        },
        "additionalProperties": false
      }
    },
    {
      "name": "ibkr_breadth",
      "description": "S&P 500 breadth readings for participation, moving-average, and new-high/new-low context.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "history_days": {"type": "integer"},
          "timeout_ms": {"type": "integer"}
        },
        "additionalProperties": false
      }
    },
    {
      "name": "ibkr_gamma",
      "description": "SPY, SPX, or combined dealer-gamma market-structure snapshot and zero-gamma regime hint.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "scope": {"type": "string", "enum": ["spy+spx", "spy", "spx"]},
          "wait_ms": {"type": "integer"},
          "force": {"type": "boolean"},
          "include_profiles": {"type": "boolean"}
        },
        "additionalProperties": false
      }
    },
    {
      "name": "ibkr_regime",
      "description": "Risk-regime dashboard across volatility, credit, funding, FX carry, dealer gamma, and breadth.",
      "inputSchema": {"type": "object", "properties": {}, "additionalProperties": false}
    },
    {
      "name": "ibkr_canary",
      "description": "Portfolio-aware stress check for scheduled review, readiness, source health, and attention states.",
      "inputSchema": {"type": "object", "properties": {}, "additionalProperties": false}
    },
    {
      "name": "ibkr_size",
      "description": "Fixed-fractional position sizing math against live net liquidation value; never an order ticket.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "symbol": {"type": "string"},
          "entry": {"type": "number"},
          "stop": {"type": "number"},
          "risk_pct": {"type": "number"},
          "side": {"type": "string"},
          "target": {"type": "number"},
          "lot": {"type": "integer"},
          "fx": {"type": "number"}
        },
        "required": ["symbol", "entry", "stop"],
        "additionalProperties": false
      }
    }
  ],
  "resources": [
    {
      "uriTemplate": "ibkr://quote/{symbol}",
      "description": "Read or subscribe to coalesced stock and ETF quote updates."
    }
  ],
  "prompts": [],
  "safety": {
    "orderEntrySurface": false,
    "canPlaceOrders": false,
    "canModifyOrders": false,
    "canCancelOrders": false,
    "summary": "Current bundled CLI and MCP releases expose analysis and sizing tools, but no order-entry interface."
  },
  "links": {
    "portfolioReview": "https://osauer.dev/ibkr/portfolio-review-with-claude-ibkr/",
    "portfolioAnalysis": "https://osauer.dev/ibkr/analyze-interactive-brokers-portfolio-with-ai/",
    "mcpTools": "https://osauer.dev/ibkr/reference/mcp-tools.html",
    "mcpResources": "https://osauer.dev/ibkr/reference/mcp-resources.html",
    "privacy": "https://github.com/osauer/ibkr/blob/main/PRIVACY.md",
    "security": "https://github.com/osauer/ibkr/blob/main/SECURITY.md",
    "downloadMCPB": "https://github.com/osauer/ibkr/releases/latest/download/ibkr.mcpb"
  },
  "keywords": [
    "IBKR MCP",
    "Interactive Brokers MCP server",
    "portfolio review with Claude and IBKR",
    "Claude IBKR portfolio review",
    "Interactive Brokers portfolio analysis AI",
    "agentic IBKR portfolio analysis",
    "portfolio stress checks",
    "agentic trading research",
    "TWS MCP server",
    "IB Gateway MCP",
    "Claude Desktop Interactive Brokers"
  ]
}
