返回市场
互动经纪-MCP服务器

互动经纪-MCP服务器

作者:ArjunDivecha10 星标更新:2025-07-24

项目介绍

IBKR MCP Server

用于Interactive Brokers API集成的专业模型上下文协议(MCP)服务器,设计用于与Claude Desktop和Claude Code一起使用。

CI Python 3.10+ License: MIT

功能

  • 多账户支持 - 在多个IBKR账户之间切换
  • 卖空分析 - 可卖空股份、借股利率、保证金要求
  • 实时市场数据 - 实时报价、历史数据、期权链
  • 投资组合管理 - 持仓、盈亏、账户概要
  • 交易操作 - 下单、修改、取消订单(带有安全检查)
  • 自动重连 - 平滑处理TWS/Gateway重启
  • 生产就绪 - 正确的错误处理、日志记录和监控

快速开始

先决条件

  • Python 3.10或更高版本
  • 带有TWS或IB Gateway的Interactive Brokers账户
  • Claude Desktop或Claude Code

安装

  1. 克隆仓库:

    git clone https://github.com/yourusername/ibkr-mcp-server.git
    cd ibkr-mcp-server
    
  2. 运行设置脚本:

    # macOS/Linux
    chmod +x scripts/setup.sh
    ./scripts/setup.sh
    
    # Windows
    scripts\setup.bat
    
  3. 配置您的设置:

    cp .env.example .env
    # 使用您的IBKR设置编辑.env文件
    
  4. 启动TWS/IB Gateway 并启用API连接

  5. 测试服务器:

    python -m ibkr_mcp_server.main --test
    

Claude集成

Claude Desktop: 添加到您的claude_desktop_config.json

{
  "mcpServers": {
    "ibkr": {
      "command": "python",
      "args": ["-m", "ibkr_mcp_server.main"],
      "cwd": "/path/to/ibkr-mcp-server"
    }
  }
}

Claude Code:

claude mcp add ibkr 'python -m ibkr_mcp_server.main' --cwd /path/to/ibkr-mcp-server

使用示例

基本操作

# 获取所有账户的投资组合
"显示我的当前投资组合"

# 切换账户
"切换到账户DU7654321"

# 市场数据
"获取AAPL, TSLA, MSFT的实时报价"

卖空分析

# 完整的卖空分析
"分析GME, AMC, BBBY的卖空情况 - 显示可用性、借股成本和保证金要求"

# 检查特定账户
"检查我模拟交易账户中TSLA的可卖空股份"

交易操作

# 下单(建议使用模拟交易)
"下单以150美元的价格购买100股AAPL"

# 检查保证金要求
"卖空200股TSLA的保证金要求是什么?"

可用工具

工具描述
get_portfolio当前投资组合仓位和盈亏
get_account_summary账户余额和关键指标
switch_account在IBKR账户之间切换
check_shortable_shares卖空可用性
get_margin_requirements证券的保证金要求
get_borrow_rates股票借股率(卖空成本)
short_selling_analysis完整的卖空分析
get_market_data实时市场报价
get_historical_data历史价格数据
place_order下单(带有安全检查)
get_connection_status检查IBKR连接状态

配置

环境变量

# IBKR连接
IBKR_HOST=127.0.0.1
IBKR_PORT=7497  # 7497=TWS模拟,7496=TWS实盘,4001=网关
IBKR_CLIENT_ID=1
IBKR_IS_PAPER=true

# 日志记录
LOG_LEVEL=INFO

# 安全
ENABLE_LIVE_TRADING=false  # 设置为true进行实盘交易
MAX_ORDER_SIZE=1000  # 最大订单规模

TWS/Gateway设置

  1. 启动TWS或IB Gateway
  2. 进入配置 → API → 设置
  3. 启用“ActiveX和Socket客户端”
  4. 设置套接字端口(模拟为7497,实盘为7496)
  5. 将127.0.0.1添加到“可信IP”
  6. 检查“连接时下载未完成订单”

开发

设置开发环境

pip install -e ".[dev]"
pre-commit install

运行测试

pytest tests/ -v

代码质量

black ibkr_mcp_server/
isort ibkr_mcp_server/
mypy ibkr_mcp_server/

部署

启动时自动启动(macOS)

python scripts/install_service.py --platform macos

启动时自动启动(Linux)

python scripts/install_service.py --platform linux

Docker部署

docker build -t ibkr-mcp-server .
docker run -d --name ibkr-mcp -p 8080:8080 ibkr-mcp-server

文档

安全及免责声明

⚠️ 重要安全提示:

  • 始终先使用模拟交易进行测试
  • 在做出交易决策之前,请在TWS中验证所有数据
  • 本软件仅用于教育目的
  • 自行承担风险使用
  • 不提供任何担保

贡献

  1. 分叉仓库
  2. 创建功能分支
  3. 进行更改
  4. 添加测试
  5. 提交拉取请求

许可证

MIT许可证 - 查看LICENSE文件了解详情。

支持