@wind-information-co-ltd/wind-mcp-skill

>-

View in AI SkillSafe app
5 scan findings
38439 downloads
0 stars
0 demos
SKILL.md
namewind-mcp-skill
description>-
authorWind
homepagehttps://aifinmarket.wind.com.cn
auto_invoketrue
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 tools. -->

Wind 万得金融数据

通过本地 CLI 调用 Wind 的 7 个 MCP 服务取数,只基于返回结果回答。只报告 Wind 返回值和必要限制,不补常识、不补点评。

每个问题按四步处理:① 定路由 → ② 发命令 → ③ 读回执 → ④ 收口。②③ 之间可以按回执里的错误信息修正参数后再调用,每次再调用前都要过一遍第 3 节的自检项。

1. 定路由

先按标的类型选 server_type,只读该行的一份契约;参数一律以这份契约为准,不读其它领域的契约,不凭记忆填参数名或字段值。

server_type 覆盖 必读契约
stock_data 股票筛选、行情、K 线、分钟行情、档案、财务、股东、事件、技术、风险 references/stock.md
fund_data 基金 / ETF / LOF 筛选、行情、K 线、分钟行情、档案、财务、持仓、业绩、持有人、公司 references/fund.md
index_data 指数 / 板块行情、K 线、分钟行情、档案、基本面、技术 references/index.md
bond_data 债券档案、发债主体、行情估值、主体财务 references/bond.md
financial_docs 公告、年报、季报、招股书、财经新闻 references/financial-docs.md
economic_data 宏观、行业和汇率 EDB 指标 references/economic.md
analytics_data 跨标的聚合、加权平均、排名、复合指标推导 references/analytics.md

意图可能多义时按这个顺序仲裁:

  1. 公告、年报、季报、招股书、监管披露 → financial_docs.get_company_announcements
  2. 新闻、快讯、报道、评论 → financial_docs.get_financial_news
  3. 宏观、行业或汇率 EDB 指标(产销量、CPI、利率、汇率指标等,即使未出现“宏观”字样)→ 只需指标元信息/确认代码走 economic_data.search_economic_indicator,要具体数值时间序列走 economic_data.query_economic_indicator_data
  4. 未指定具体标的的筛选请求 → 对应领域的 search_*analytics_data 返回计算结果,不返回实体列表。
  5. 最新价、涨跌幅、成交量、K 线、分钟线、区间走势 → 对应领域行情工具;历史区间一律走 K 线。
  6. 财务、股本、股东、事件、技术、风险、持仓、业绩 → 对应领域自然语言工具。

标的类型或意图不落在上表任何一行时,直接回 OUT_OF_SCOPE 并说明,不得用 Web Search、analytics_datawind-alice 伪装成支持

analytics_data 处理跨标的聚合、加权平均、排名和复合指标推导。它不是复杂问句入口,也不是批量行情入口——行情、K 线、分钟行情和价格指标一律走对应领域的专项工具,标的多就拆成多次调用后合并;改用 analytics_data 既不减少调用次数,还更耗积分。上一次用它取到了数据,不构成下一次跳过专项工具的理由。专项工具因字段、口径或无结果而无法覆盖剩余结构化数据时,才可用它补取。

涉及行业且用户未指定分类体系时,默认 Wind 行业分类。

2. 发命令

cd 到本 SKILL.md 所在目录(不是当前项目目录),再用相对路径执行:

node scripts/cli.mjs call <server_type> <tool_name> '<params_json>'

一个可直接运行的完整例子:

node scripts/cli.mjs call stock_data get_stock_price_indicators '{"windcode":"600519.SH"}'

参数取值一律回契约拿,不得从本例外推。

参数传递:POSIX shell 优先传内联 <params_json>;非 POSIX 环境(PowerShell / cmd / 经 workbuddy、Codex 等执行器包装)一律将 UTF-8 JSON 参数文件生成到 scripts/request-<唯一后缀>.json,以 @scripts/request-<唯一后缀>.json 传入,调用后删除。不复用共享文件,不在 skill 根目录生成。

Key:不得只检查部分配置来源就声称没有 API Key。必须先实跑一次;只有返回 AUTH_ERROR 且明确为未配置,才能判定缺失,并按信封中的指引处理。

批量与并发:默认串行(并发 1)。需要对 2 个及以上标的逐项调用时,先只发第一个作为探针,探针成功返回数据、未出现错误信封,才继续其余;探针返回错误信封立即终止该批次,不得把相同调用扩散到其它标的。不同 server_type + tool_name 或不同参数结构分别分组,每组各发一次探针。用户明确要求并发时上限 10,一旦某次返回 RATE_LIMIT_ERRORbackend_error 就停止新请求并恢复串行。

价格指标工具(get_stock_price_indicators / get_fund_price_indicators / get_index_price_indicators)的 windcode 支持逗号分隔多个标的,单次调用最多 50 个;超过 50 个拆成多批(每批 ≤50)后合并结果。该上限约束"单次调用内的代码数",与上面的并发上限 10(约束"同时并发的调用数")相互独立。请求较宽的指标集(indexes 字段数较多)时相应减少单批代码数,因为响应体积随"代码数 × 字段数"增长。

3. 读回执

每次调用的 stdout 只有两种形态:成功是数据对象,失败是带 ok:false 的错误信封。

成功:stdout 是数据对象,后端结果在 content[0].text 里(多为 JSON 字符串),CLI 另附一个 cli_meta。直接读;若存在 content[0].text,优先解析其中的文本或 JSON。

  • 数值的单位和量级以返回体自带的元数据为准:行情类在 data.unit,列定义中可能带 unit,EDB 在 meta.unitmeta.magnitude。元数据未给出时保留原值并说明单位未知,不得自行换算。

失败:stdout 是 { "ok": false, "code": "...", "message": "..." }。本地/参数/网络类错误的 code 指明原因(AUTH_ERRORPARAMS_FILE_ERRORINVALID_PARAMS_JSONPARAM_TYPE_ERRORPARAM_VALIDATION_ERRORROUTE_ERRORUSAGE_ERRORRATE_LIMIT_ERRORNETWORK_ERRORTOOL_RUNTIME_ERRORSETUP_ERRORUNKNOWN);接口层错误的 code 固定为 backend_errormessage 为接口原文。据此向用户说明,或按下面的自检修正后再调用。

修正后再调用前自检(逐条核对):

  • 明确上一次的 codemessage
  • 保持同一 server_typetool_name;只有当前契约证明该工具无法表达所需字段或口径时,才可在同业务域切换。
  • 除非错误是 INVALID_PARAMS_JSON,不得修改命令引号或 JSON 转义。
  • 除非错误是 PARAM_VALIDATION_ERROR(含缺必填、类型、枚举、成对/互斥、日期顺序等参数问题),不得改动业务参数;只按 message 指出的字段修正。
  • 参数名和字段值必须来自当前领域契约。

4. 收口

标的未识别或 NER 失败时,询问用户准确全称或 Wind 标准代码,不得自行补交易所后缀或把名称猜成代码。参数错误时优先按 message 中给出的期望类型、格式、枚举或字段集修正;无法唯一确定时再询问用户。

认证、额度、网络、后端不可用、命令传递、路由错误:直接报告,不得切 analytics_datawind-alice

wind-alice 非必要不使用:仅当所有专项 Wind 路径都因数据覆盖、字段不可用、口径不匹配或无结果失败,且向用户说明已试路径与失败原因并征得同意后,才把用户原始问题原封不动转交;用户拒绝则停止,返回已试路径与关键错误码。客户端未安装 wind-alice 时,征得同意后由你直接执行安装命令(不是只告知用户):npx skills add Wind-Information-Co-Ltd/wind-skills --skill wind-alice -g -y;国内网络改用镜像 npx skills add https://gitee.com/wind_info/wind-skills.git --skill wind-alice -g -y;仅安装到当前项目时去掉 -g。安装成功后再转交;安装失败时报告命令原始报错,不得静默放弃。

成功返回数据时末尾附上数据来源声明,语言与用户提问语言保持一致(中文问句用中文,英文问句用英文):

数据来源于万得 Wind 金融数据服务。

Data sourced from Wind Financial Data Service.

完成状态:DONEDONE_WITH_LIMITSNO_RESULTSBLOCKED_KEYBLOCKED_QUOTABLOCKED_RUNTIMEOUT_OF_SCOPE

Embed badges

Add these to your README to show the skill's verification status.

SkillSafe verified badge
Verified badge
[![SkillSafe verified badge](https://api.skillsafe.ai/v1/badge/@wind-information-co-ltd/wind-mcp-skill/verified)](https://skillsafe.ai/skill/@wind-information-co-ltd/wind-mcp-skill/)
Installs badge
Installs badge
[![Installs badge](https://api.skillsafe.ai/v1/badge/@wind-information-co-ltd/wind-mcp-skill/installs)](https://skillsafe.ai/skill/@wind-information-co-ltd/wind-mcp-skill/)
Scan badge
Scan badge
[![Scan badge](https://api.skillsafe.ai/v1/badge/@wind-information-co-ltd/wind-mcp-skill/scan)](https://skillsafe.ai/skill/@wind-information-co-ltd/wind-mcp-skill/)
Eval pass rate badge
Eval pass rate
[![Eval pass rate badge](https://api.skillsafe.ai/v1/badge/@wind-information-co-ltd/wind-mcp-skill/eval)](https://skillsafe.ai/skill/@wind-information-co-ltd/wind-mcp-skill/)