返回 MCP 目录
public公开dns本地运行

tradovate-mcp-server

Tradovate MCP服务器是一个用于与Tradovate API交互的模型上下文协议服务器,提供合约管理、仓位管理、订单操作和账户管理等功能。

article

README

🚀 Tradovate MCP 服务器

Tradovate MCP 服务器是一个用于与 Tradovate API 交互的模型上下文协议(MCP)服务器,它提供了管理合约、头寸、订单和账户的工具,能帮助用户高效地与 Tradovate 平台进行交互。

🚀 快速开始

首先,你需要克隆仓库并安装依赖,同时配置好 .env 文件。完成后,即可启动服务器开始使用。

克隆仓库

git clone https://github.com/alexanimal/tradovate-mcp-server.git
cd tradovate-mcp-server

安装依赖

npm install

配置 .env 文件

创建一个 .env 文件,并添加你的 Tradovate 凭证:

TRADOVATE_API_ENVIRONMENT=demo
TRADOVATE_USERNAME=your_username
TRADOVATE_PASSWORD=your_password
TRADOVATE_APP_ID=Sample App
TRADOVATE_APP_VERSION=1.0
TRADOVATE_CID=your_cid
TRADOVATE_SEC=your_sec

启动服务器

npm start

与 MCP Inspector 一起使用

npm run inspector

✨ 主要特性

  • 支持与 Tradovate API 的身份验证,确保数据交互的安全性。
  • 具备带有缓存的实时数据获取功能,提高数据获取效率。
  • 提供合约详细信息、头寸管理、订单放置、修改等工具,满足多样化的交易需求。
  • 在 API 不可用时,可 fallback 到模拟数据,保证服务的稳定性。

📦 安装指南

  1. 克隆仓库
git clone https://github.com/alexanimal/tradovate-mcp-server.git
cd tradovate-mcp-server
  1. 安装依赖
npm install
  1. 创建 .env 文件并添加 Tradovate 凭证
TRADOVATE_API_ENVIRONMENT=demo
TRADOVATE_USERNAME=your_username
TRADOVATE_PASSWORD=your_password
TRADOVATE_APP_ID=Sample App
TRADOVATE_APP_VERSION=1.0
TRADOVATE_CID=your_cid
TRADOVATE_SEC=your_sec

💻 使用示例

基础用法

启动服务器:

npm start

高级用法

与 MCP Inspector 一起使用:

npm run inspector

📚 详细文档

项目结构

  • src/index.ts:主服务器入口点
  • src/auth.ts:认证函数
  • src/data.ts:数据获取和缓存
  • src/tools.ts:MCP 工具处理程序
  • src/types.ts:TypeScript 类型定义
  • tests/:测试文件

构建

npm run build

测试

  • 运行测试
npm test
  • 带有覆盖率的测试
npm run test:coverage
  • 生成覆盖率徽章
npm run coverage:badge

可用工具

服务器提供以下工具:

  1. get_contract_details:根据符号获取特定合约的详细信息
  2. list_positions:获取账户的头寸列表
  3. place_order:下达新订单
  4. modify_order:修改现有订单
  5. cancel_order:取消现有订单
  6. liquidate_position:平仓
  7. get_account_summary:获取账户摘要信息
  8. get_market_data:获取市场数据(报价、深度图表)

API 端点

服务器与以下 Tradovate API 端点交互:

认证

  • /auth/accessTokenRequest:获取访问令牌
  • /auth/renewAccessToken:更新访问令牌

合约

  • /contract/list:列出所有合约
  • /contract/find:查找特定合约

头寸

  • /position/list:列出所有头寸

订单

  • /order/list:列出所有订单
  • /order/placeOrder:下达新订单
  • /order/modifyOrder:修改现有订单
  • /order/cancelOrder:取消现有订单
  • /order/liquidatePosition:平仓

账户

  • /account/list:列出所有账户
  • /account/find:查找特定账户
  • /cashBalance/getCashBalanceSnapshot:获取账户的现金余额快照

市场数据

  • /md/getQuote:获取报价数据
  • /md/get:获取市场深度
  • /md/getChart:获取图表数据

📄 许可证

本项目采用 MIT License

徽章

  • smithery badge
  • codecov
  • License: MIT
help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端