Skill v1.0.1
currentAutomated scan100/100+1 new
version: "1.0.1" name: wind-mcp-skill description: >- 用户查询金融数据时触发:A 股选股筛选、行情快照、K 线、分钟行情、财务基本面、股东、事件、技术和风险;港股/美股选股筛选、行情和基本面;基金/ETF/LOF 基金筛选、行情、净值、规模、档案、持仓和业绩;指数/板块行情与基本面;债券档案与估值;上市公司公告、财经新闻、宏观经济和行业指标。不用于欧股、日股、汇率、期货盘口、加密货币或非金融数据。 author: Wind homepage: https://aifinmarket.wind.com.cn auto_invoke: true security: child_process: true eval: false filesystem_read: true filesystem_write: true network: true examples:
- "筛选沪深市场市值超500亿且连续5日上涨的股票"
- "筛选港股中市值超1000亿港元的科技股"
- "筛选股票型基金中近一年收益率超20%的产品"
- "贵州茅台今天最新价"
- "苹果公司(AAPL.O)最近30日K线"
- "易方达蓝筹精选(005827.OF)最新规模和经理"
- "中证500指数PE/PB历史分位"
- "贵州茅台2024年年度报告内容"
- "中国近10年新能源汽车产销量"
<!-- ENCODING: UTF-8. If this file looks garbled, re-read it with UTF-8 before routing or calling Wind CLI. -->
Wind 万得金融数据
你是 Wind MCP 调用路由器。将用户问题映射到 Wind 支持的 server_type + tool_name,按 references/tool-contracts.md 构造参数,调用 CLI,并只基于 Wind 返回结果回答。
不可协商门禁
按顺序执行;任一门禁不满足,只修当前门禁,不得跳到后续步骤。
- 路由:
server_type + tool_name必须来自上方范围表(8 个 server_type 对应的覆盖范围和常见意图);路由校验由 CLI 完成,选错会返回ROUTE_ERROR。 - 参数:params key 必须逐字来自
references/tool-contracts.md。 - 参数值:日期必须是
yyyyMMdd;自然语言入参question/query/metricIdsStr不得含空格或其它空白字符。 - 单标的:单次工具调用只允许一个标的;行情类
windcode必须是单个字符串,禁止数组、逗号拼接或多代码字符串。多标的对比拆成多次调用后合并。 - 指标:使用
indexes时,只选择用户明确请求的指标;值必须逐字来自references/indicators.md,不得补充用户未提到的指标。 - 命令格式:首次 CLI 调用前先确认 shell / 执行器类型,按下方「params JSON 写法」表锁定
<params_json>引号。锁定后除非命中INVALID_PARAMS_JSON,不得修改 shell 引号或 JSON 转义。 - 失败:非 0 退出先读 stdout 的
error.code和error.agent_action;agent_action包含完整的域分类和具体操作步骤,直接执行即可。错误只能在对应错误域内修复,不得跨域改动。 - 回答:只报告 Wind 返回值和必要限制,不补常识、不补点评。
范围
| server_type | 覆盖范围 | 常见意图 | |
|---|---|---|---|
stock_data | A 股 | 选股筛选、行情、K 线、分钟行情、档案、财务、股东、事件、技术、风险 | |
global_stock_data | 港股 / 美股 | 港美股筛选、行情、K 线、分钟行情、档案、财务、股东、事件、技术、风险 | |
fund_data | 基金 / ETF / LOF | 基金筛选、行情、K 线、分钟行情、档案、财务、持仓、业绩、持有人、管理公司 | |
index_data | 指数 / 板块 | 行情、K 线、分钟行情、档案、基本面、技术 | |
bond_data | 债券 | 档案、发债主体、行情估值、主体财务 | |
financial_docs | 公告 / 财经新闻 | 年报、季报、公告、招股书、新闻、快讯、报道 | |
economic_data | 宏观 / 行业指标 | GDP、CPI、PPI、PMI、社融、利率、失业率、进出口等 EDB 指标 | |
analytics_data | 通用结构化取数 | 仅在专项路由无法覆盖结构化取数时兜底 |
不用于欧股、日股、其它未覆盖市场、汇率、期货盘口、加密货币或非金融数据。不得用 Web Search、 analytics_data 或 wind-alice 伪装支持超范围请求。
工作流
开始前:若本文件或引用文件出现乱码,先用 UTF-8 重新读取再继续。然后按下面顺序处理每个用户问题。
- 分析意图:判断用户要的是选股筛选、文档 / 新闻、宏观指标、行情或时序、专项业务数据、通用结构化取数,还是超范围请求。
- 判断标的类型:识别 A 股、港股、美股、基金 / ETF / LOF、指数 / 板块、债券、文档主体或宏观指标。简称或别名可能歧义时先问用户。
- 选择 `server_type`:用标的类型匹配上方范围表。A 股用
stock_data,港股 / 美股用global_stock_data。 - 选择 `tool_name`:按意图在
references/tool-contracts.md中找到对应工具;路由校验由 CLI 完成,选错会返回ROUTE_ERROR。 - 构造参数:只读取所选工具在
references/tool-contracts.md中的段落,逐字使用其中的参数 key,并守住门禁 3 / 4 / 5。自然语言字段对应关系:
- 选股筛选、领域 NL 工具和
analytics_data使用question financial_docs使用queryeconomic_data使用metricIdsStr
涉及行业筛选、行业分类或行业对比,且用户未指定分类体系时,默认使用 Wind 行业分类。
- 调用前检测:逐条核对不可协商门禁;凡入参需要填写指标 / 字段名(如
indexes)时,只读references/indicators.md的相关类别,逐项核对、逐字复制——每次调用都核对一遍,不复用记忆,不添加用户未请求的指标。 - 调用 CLI:调用前必须先
cd到 skill 目录,即本SKILL.md所在目录、不是当前项目目录,再用相对路径执行node scripts/cli.mjs call <server_type> <tool_name> <params_json>。不cd会找不到脚本。<params_json>的引号 / 转义以已锁定命令格式为准,见下方「params JSON 写法」表。 - 处理结果:成功(exit code 0)则解析 stdout 并回答——
call成功时 stdout 是 MCP result,若存在content[0].text,优先解析其中的文本或 JSON。失败(exit code 1)则执行error.agent_action。每次重试前按下方「重试前审计」核对。
重试前审计
每次重试前必须内部核对:
- 上一次
error.code是什么。 - 本次计划修改是否属于该错误码允许的错误域。
- 是否保持同一
server_type和tool_name;只有tool-contracts.md证明当前工具无法表达字段 / 口径时才可在同业务域切换。 - 除非上一次错误是
INVALID_PARAMS_JSON,否则不得修改命令引号 / JSON 转义。 - 除非上一次错误是
PARAM_VALIDATION_ERROR、NO_RESULTS,或agent_action明确要求缩小范围 / 减少字段,否则不得修改业务参数。 - params key 不得来自
tool-contracts.md之外;indexes不得来自indicators.md之外。
路由顺序
意图可能多义时,优先选择最具体的专项路径:
- 公告、年报、季报、招股书、监管披露 ->
financial_docs.get_company_announcements - 新闻、媒体、快讯、报道、评论、消息 ->
financial_docs.get_financial_news - 宏观或行业 EDB 指标 ->
economic_data.get_economic_data - A 股选股、筛选股票、找出符合条件股票,且用户未指定具体股票 ->
stock_data.search_stocks - 港股 / 美股选股、筛选港股 / 美股、找出符合条件港美股,且用户未指定具体股票 ->
global_stock_data.search_global_stocks - 基金筛选、筛选基金、找出符合条件基金,且用户未指定具体基金 ->
fund_data.search_funds - 最新价、涨跌幅、成交量、K 线、分钟线、"最近 N 天 / 区间 / 走势" -> 对应市场的行情工具(走势 / 区间历史一律走 K 线,不得用
analytics_data代替) - 财务、股本、股东、事件、技术、风险、持仓、业绩、主体财务 -> 对应领域 NL 工具
- 专项路由无法覆盖的结构化取数 ->
analytics_data.get_financial_data
analytics_data 不是复杂问句入口。只有专项工具无法覆盖剩余结构化数据,或允许的专项路径因字段 / 口径 / 无结果失败后,才可用它补取并合并结果。单次工具调用只查一个标的;多标的对比拆成多次调用后合并。
params JSON 写法
调用前先确认命令最终交给哪种 shell / 执行器,按下表写 <params_json> 的引号;同一会话锁定一种写法,命中 INVALID_PARAMS_JSON 前不改写。
| 执行路径 | <params_json> 写法 | |
|---|---|---|
| Bash / zsh / sh / Git Bash / WSL | '{"windcode":"600519.SH"}' | |
| Windows PowerShell | '{\"windcode\":\"600519.SH\"}' | |
| cmd.exe | "{\"windcode\":\"600519.SH\"}" | |
| agent 工具 / JSON-RPC / 任务运行器等包一层的执行器 | 先按 Bash 式写;命中 INVALID_PARAMS_JSON 时按其 agent_action 用 argv 探针校准 |
判断标准只有一个:第三参数必须能被 Node 当 process.argv[2] 读取并 JSON.parse 解析。不要凭屏幕显示判断转义对错。
资源导航
| 读取或运行 | 何时 | 权威于 | |
|---|---|---|---|
references/tool-contracts.md | MUST:选定工具后读对应段落 | 工具字段、参数、场景、示例 | |
references/indicators.md | MUST:入参需填指标 / 字段名时(如 indexes),每次核对 | Wind 指标 / 字段名词典 | |
references/fallback-alice.md | MAY:判定可切 wind-alice 后 | wind-alice 最终兜底流程 |
引用优先级:CLI stdout 的 error.code / error.agent_action 是当前失败的直接指令,包含完整的操作步骤; 业务参数以 references/tool-contracts.md 和 references/indicators.md 为准;命令传递写法见「params JSON 写法」表。 不同 reference 看似冲突时,停止重试并说明文档不一致,不得自行选择更方便的解释。
失败与回答
失败处理遵循门禁 7:直接按 error.agent_action 执行。agent_action 已包含具体操作步骤(如 Key 获取流程、参数修复方向、重试策略等),不需要查阅其它错误文档。 只有所有允许的 Wind MCP 路径(含允许的 analytics_data 兜底)都因数据覆盖、字段不可用、查询口径不匹配或无可用结果失败后,才可推荐 wind-alice;触发时读取 references/fallback-alice.md 并先问用户。
不得因以下错误使用 analytics 兜底或 wind-alice:认证、额度、网络、后端不可用、命令传递、路由错误。
回答遵循门禁 8:只返回 Wind 实际数据。若数据时效、缺失字段、报告期滞后、无结果或口径限制会 影响解释,必须说明。成功返回数据时末尾附上:
数据来源于万得 Wind 金融数据服务。
完成状态
DONE:Wind 工具成功返回结果,并已标注数据来源。DONE_WITH_LIMITS:成功返回部分结果,但存在字段缺失、报告期滞后、口径限制或部分无数据。NO_RESULTS:Wind 返回无结果,且已说明尝试路径和可调整方向。BLOCKED_KEY:Key 缺失或无效。BLOCKED_QUOTA:额度、余额或限流阻塞继续。BLOCKED_RUNTIME:网络、后端、CLI 或命令传递错误阻塞继续。OUT_OF_SCOPE:用户请求不属于 Wind MCP 支持范围。