EasyTHS MCP 服务端
使用说明(简化版,便于快速上手):
-
项目简介
- 该仓库实现了一个 MCP 服务器端,用于让 AI 助手(如支持 MCP 的大语言模型/应用)以标准化方式调用 EasyTHS 的交易自动化能力。服务器通过一个 FastAPI+FastMCP 的组合来暴露 MCP 接口,并将请求转换为内部操作队列中的任务执行,返回执行结果。
- 主要能力包括:注册和执行 Tools(交易操作、查询等)、通过内部队列进行任务调度、以及为 MCP 客户端提供基于 HTTP 的传输方式。
- 服务器会在启动时加载插件(easyths/operations 目录下的操作实现),并将其暴露给 MCP 客户端进行调用。
-
主要功能点
- MCP 工具(Tools):实现买入、卖出、查询资金/持仓/委托、条件单、止损止盈、逆回购等多种交易相关功能的调用接口。
- 资源与提示(Prompts/Resources):当前实现以 Tools 为核心能力入口,后台通过插件注册机制暴露操作元数据,支持动态扩展插件。
- 会话与队列管理:后端使用一个中央任务队列,按优先级执行操作,确保并发场景下的执行有序和稳定性。
- 传输协议:支持多种传输类型(HTTP、Streamable HTTP、SSE),默认通过 HTTP 传输暴露 MCP 接口。
- 与客户端的集成点:MCP 服务端通过 /api/mcp-server/ 提供接口,客户端(如 Claude Desktop 等)可通过配置连接到该地址。
-
安装步骤
- 安装依赖并启用服务端模式(推荐方式与文档一致):
- 使用 uvix/uvicorn 启动整合的 API 服务(服务器同时暴露 MCP 接口)
- 或直接通过 pip 安装并运行服务端组件,确保 Python 3.12+ 环境
- 运行后,MCP 客户端可通过以下地址连接:
- http://<host>:<port>/api/mcp-server/
- 安装依赖并启用服务端模式(推荐方式与文档一致):
-
服务器配置(MCP 客户端需要的连接信息,以 JSON 配置示例形式给出;注:客户端无需此处代码,只需读取配置信息)
- server name: easyths
- command: uvicorn
- args: ["easyths.api.app:TradingAPIApp", "--host", "127.0.0.1", "--port", "7648"]
- transport: http
- url: http://127.0.0.1:7648/api/mcp-server/
- 说明:MCP 客户端据此连接到服务器暴露的 MCP 接口;客户端配置中需要的仅为 server 名称、传输类型及连接地址等信息,用于建立与 MCP 服务器的对话。
-
基本使用方法(对开发者/集成者的操作指引)
- 启动服务
- 运行服务器端应用,使其对外暴露 MCP 接口(HTTP 传输模式下的 /api/mcp-server/ 路径)
- 添加插件与功能
- 启动后,服务器会自动加载 easyths/operations 目录中的插件(买卖、查询等操作实现)
- 使用 MCP 客户端
- 在 MCP 客户端配置中指定服务器名称、传输类型和服务地址
- 通过工具名称调用相应的交易功能,例如购买、查询资金、查询持仓等
- 处理返回
- MCP 调用返回的数据包含 operation_id、data、message、timestamp 等字段,客户端可据此处理结果并显示给用户
- 启动服务