TdxQuant MCP Server

TdxQuant MCP Server

Provides AI clients access to TdxQuant/通达信 financial data and trading capabilities through MCP. Enables retrieval of market data, financial reports, sector information, and trading operations via stdio or HTTP/SSE connections.

Category
访问服务器

README

TdxQuant MCP 服务

基于本地 tqcenter.py(TdxQuant /通达信策略接口)的 MCP(Model Context Protocol) 封装。AI 客户端(如 Cursor)可通过 stdio 或 HTTP/SSE 调用工具,获取行情、财务、板块、公式等数据。

Python 包名:tdxquant-mcp(见 pyproject.toml)。

MCP 接入docs/mcp-configuration.md
Agent 使用(调用顺序、意图对照、交易安全)docs/agent-usage.md
TdxQuant 平台简介(官方帮助整理 + MCP 工具说明)docs/tdxquant-intro.md
Agent Skill 包(Claude Code / OpenClaw / Hermes + SSE 配置)docs/agent-skills.md · skills/tdxquant-mcp/

Agent Skill 包

面向 Claude CodeOpenClawHermes Agent 等:可复制目录 skills/tdxquant-mcp/(含 SKILL.md / skill.mdreferences/ 下的 SSE 配置片段、精简工作流)。配合已启动的 tdx_mcp.main_http,客户端连接 http://<MCP_HOST>:<MCP_PORT>/sse。安装与宿主路径说明见 docs/agent-skills.md

功能概览

工具按业务分为 9 类(与 tools_catalog / tool_metadata 一致):

分类 说明
连接管理 初始化 / 关闭通达信会话
行情数据 K 线、Tick、快照、订阅
股票信息 基础资料、扩展信息、股本、跟踪指数 ETF
板块数据 板块列表、成分股、自选板块、所属板块
财务数据 报表区间、报告日期、个股/板块/市场衍生
可转债/新股 可转债信息、新股申购
交易日历 交易日列表
交易接口 账户、资产、委托、持仓、下单/撤单(默认 dry-run)
工具/缓存 公式执行、缓存刷新、自定义板块、docs_get_tdxquant_intro(平台简介 Markdown)

建议:先调用工具 tools_catalog(无参数),返回分类与工具列表,再按需调用具体工具。
证券代码格式:沪深等一般为 600519.SH000001.SZ(大写市场后缀)。


仓库结构(与本项目相关)

user/
├── tqcenter.py              # TdxQuant Python 接口(依赖 TPythClient.dll 等)
├── tdxdata_test.py          # 直连 tq 的脚本示例(非 MCP)
├── skills/tdxquant-mcp/     # Agent Skill(SSE工作流 + 各宿主 MCP 片段)
├── tdx_mcp/                 # MCP 可安装包
│   ├── main_stdio.py        # stdio 入口(Cursor本地 MCP 推荐)
│   ├── main_http.py         # HTTP/SSE入口
│   ├── config.py            # 环境变量:TQ_PATH 等
│   ├── service/tdx_service.py
│   └── server/              # 各工具注册模块
├── tests/                   # pytest(含可选集成测试)
├── pyproject.toml
├── .env.example
├── docs/
│   ├── mcp-configuration.md # MCP 配置(Cursor / Claude / SSE)
│   ├── agent-usage.md       # Agent 使用说明(工作流、意图对照、交易)
│   ├── agent-skills.md      # Skill 包安装(Claude Code / OpenClaw / Hermes)
│   ├── tdxquant-intro.md    # TdxQuant 简介索引(正文见包内 resources)
│   └── mirror-tdx-quant-help/  # 运行 sync脚本后:官方帮助镜像 Markdown(可选)
└── .cursor/mcp.json         # Cursor 项目级 MCP 示例(可选)

运行前提

  1. 本机可正常运行 TdxQuant / 通达信 终端(含策略能力),并已按官方说明配置策略路径。
  2. 项目目录下 tqcenter.py 可被导入(与 TPythClient.dll 等路径一致,见 TdxQuant 文档)。
  3. 已配置 TQ_PATH(指向策略脚本路径,与 tq.initialize 要求一致)。
  4. 推荐使用 uv 管理依赖与运行命令。

安装

uv sync

HTTP/SSE 方式需要 ASGI 依赖:

uv sync --extra http

开发与测试:

uv sync --extra dev

通达信量化在线帮助镜像(爬取 help.tdx.com.cn/quant/docs/ 下页面,生成本地 Markdown,可选):

uv sync --extra sync-docs
python scripts/sync_tdx_help_docs.py

输出目录默认为 docs/mirror-tdx-quant-help/(含 pages/_manifest.jsonREADME.md)。详见该目录内说明;正文版权归通达信,请以在线版为准。


环境变量

复制 .env.example.env 并修改:

变量 必填 说明
TQ_PATH 通达信策略连接路径(策略脚本所在路径,与 tqcenter 初始化一致)
TQ_DLL_PATH DLL 路径,多数环境可留空
MCP_HOST HTTP/SSE 监听地址,默认 127.0.0.1
MCP_PORT HTTP/SSE 监听端口,默认 8765

MCP 进程启动时会加载 get_settings()缺少 TQ_PATH 会直接报错


在 Cursor 中配置 MCP(stdio)

项目内已提供示例 .cursor/mcp.jsonuv + envFile)。在 Cursor 中打开本仓库根目录后,于 设置 → MCP 中启用 tdxquant

更完整的说明(含 Claude Desktop、env 内联、HTTP/SSE、排错)见 docs/mcp-configuration.md


启动方式

stdio(推荐:Cursor、Claude Desktop 等)

uv run python -m tdx_mcp.main_stdio

HTTP / SSE(独立进程,供支持远程 MCP 的客户端使用)

uv run python -m tdx_mcp.main_http

监听地址与端口由 MCP_HOST / MCP_PORT 决定(见 .env)。


工具名称与调用示例

下列名称与代码中 @mcp.tool(name="...") 完全一致。不同客户端里 JSON 字段可能为 tool / name / toolName,以你所用客户端文档为准。

获取工具目录

{
  "tool": "tools_catalog",
  "arguments": {}
}

行情:最近 60 根日线

{
  "tool": "market_get_kline",
  "arguments": {
    "stock_list": ["600519.SH"],
    "period": "1d",
    "count": 60,
    "dividend_type": "none"
  }
}

股票信息:扩展信息

{
  "tool": "stock_get_more_info",
  "arguments": {
    "stock_code": "600519.SH"
  }
}

板块:成分股

{
  "tool": "sector_stocks",
  "arguments": {
    "block_code": "BK0475",
    "block_type": 0,
    "list_type": 0
  }
}

财务:按报告期

{
  "tool": "financial_get_report_by_date",
  "arguments": {
    "stock_list": ["600519.SH"],
    "year": 2024,
    "mmdd": 1231
  }
}

交易:下单预览(dry-run,默认)

实际下单需将 dry_run 设为 false,并自行承担风险;account_id 一般由 trade_get_account_id 取得。

{
  "tool": "trade_order_stock",
  "arguments": {
    "account_id": 1001,
    "stock_code": "600519.SH",
    "order_type": 0,
    "order_volume": 100,
    "price_type": 0,
    "price": 1500.0,
    "dry_run": true
  }
}

工具:执行通达信公式

主入口为 utility_formula_run;另有别名 formula_run,行为相同。

{
  "tool": "utility_formula_run",
  "arguments": {
    "formula_name": "KDJ",
    "formula_arg": "9,3,3",
    "mode": "zb"
  }
}

测试

单元测试(不连客户端)

uv run pytest tests/ -q

未设置联调环境变量时,集成用例会跳过,仅运行参数、目录等单元测试。

集成测试(需已登录通达信)

CMD:

set TDX_INTEGRATION=1
set TDX_STRICT_DATA=1
uv run pytest tests/test_tools_integration_tdxdata.py -m integration

PowerShell:

$env:TDX_INTEGRATION = "1"
$env:TDX_STRICT_DATA = "1"
uv run pytest tests/test_tools_integration_tdxdata.py -m integration
  • TDX_STRICT_DATA:可选,空数据时失败(默认允许空 dict 便于排查连接)。
  • TDX_TRADE_ACCOUNT:可选,交易类联调用账号字符串。

脚本示例(非 MCP)

tdxdata_test.py 演示直接调用 tqcenter.tq,用于对照接口行为;与 MCP 进程相互独立。


故障排除

现象 建议
启动报缺少 TQ_PATH 检查 .env 或运行环境中的变量是否传入 MCP 子进程
Cursor 无法启动 MCP docs/mcp-configuration.md 排错;查看 MCP 日志,或改用虚拟环境 Python 绝对路径
HTTP 无法连接 确认 main_http 已运行且防火墙放行 MCP_HOST:MCP_PORT
数据为空 确认客户端已登录、盘后数据已下载;可适当关闭 TDX_STRICT_DATA 便于对比

许可证与上游

行为与数据格式以 TdxQuant / 通达信tqcenter.py 为准;本仓库仅为 MCP 封装与文档整理。

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选