XTBApiServer 使用说明

项目简介

XTBApiServer 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为 LLM 应用提供访问 XTB 交易 API 的标准化接口。通过 XTBApiServer,LLM 可以安全地获取市场数据、账户信息,并执行交易操作,从而实现智能交易助手、自动化交易策略等应用场景。

主要功能点

  • 账户操作: 获取账户资金、杠杆等信息,监控账户状态。
  • 市场数据: 实时获取交易品种的报价、图表数据、市场日历和新闻等信息。
  • 交易计算: 进行交易成本、利润、保证金等计算,辅助交易决策。
  • 交易操作: 执行交易下单、查询交易历史、获取交易状态等操作。
  • Prompt 支持: 内置常用 Prompt,方便 LLM 快速发起账户数据和交易品种信息查询。

安装步骤

  1. 克隆仓库
    git clone https://github.com/sharplygroup/xtb-mcp-server
    cd xtb-mcp-server
  2. 安装依赖
    npm install

服务器配置

MCP 客户端需要配置以下信息才能连接到 XTBApiServer。请将以下 JSON 配置填入 MCP 客户端的服务器配置中。

{
  "serverName": "XTBApiServer",
  "command": "node",
  "args": [
    "build/index.js"
  ],
  "environmentVariables": {},
  "transport": "stdio"
}

配置参数说明:

  • 'serverName': 服务器名称,可以自定义,例如 "XTBApiServer"。
  • 'command': 运行服务器的命令,这里使用 'node' (请确保您的环境中已安装 Node.js)。
  • 'args': 传递给 'node' 命令的参数,指定服务器入口文件为 'build/index.js' (服务器构建后的文件)。
  • 'environmentVariables': 环境变量,XTBApiServer 依赖 '.env' 文件配置 XTB API 密钥,无需在此处配置。
  • 'transport': 传输协议,XTBApiServer 使用 'stdio' (标准输入输出) 协议。

XTB API 密钥配置:

XTBApiServer 需要 XTB API 的用户 ID 和密码才能连接到 XTB 交易账户。请在项目根目录下创建 '.env' 文件,并根据您的账户类型 (模拟或真实) 填写以下内容:

DEMO_ACCOUNT=true  # 如果是真实账户,请设置为 false
USER_ID=your_user_id   # 替换为您的 XTB 用户 ID
PASSWORD=your_password # 替换为您的 XTB 密码

注意: 请务必妥善保管您的 XTB API 密钥,避免泄露。连接真实账户存在交易风险,请谨慎操作。

基本使用方法

  1. 构建项目

    npm run build

    此命令会将 TypeScript 代码编译到 'build' 目录。

  2. 启动服务器 在 MCP 客户端中配置好上述服务器配置后,启动 MCP 客户端即可自动连接到 XTBApiServer。 或者,您也可以在项目根目录下手动运行服务器:

    node build/index.js

    服务器成功启动后,会在控制台输出 "XTBApiServer running on stdio"。

  3. 使用 MCP 客户端与服务器交互 您可以使用任何兼容 MCP 协议的客户端与 XTBApiServer 交互,例如 MCP Inspector。 在 MCP Inspector 中,选择 "stdio" 传输类型并连接,即可开始体验 XTBApiServer 提供的工具和 Prompt。您可以通过 MCP 客户端调用 'getCurrentUserData', 'getSymbolInfoPrompt' 等工具和 Prompt,与 XTB 交易账户进行交互。

信息

分类

商业系统