mcpField
W
wind-mcp-skill

wind-mcp-skill

github.com/wind-aliceデータ・データベース143225.4k 回インストール2 週間前に更新
リポジトリ

wind-mcp-skill について

wind-mcp-skill は、ローカル CLI から Wind の金融データを照会する手順をエージェントに示します。契約に沿ったルーティングと、返却データだけに基づく回答を必要とする場面向けです。

主な機能

  1. 01銘柄種別に応じて7サービスへ振り分け
  2. 02契約に基づくツールとパラメーター選択
  3. 03単位とエラー応答の確認
  4. 04一括呼び出しと並行数の制御
  5. 05返却データと制限に沿った回答

活用シーン

  1. 01株式、ファンド、指数データの照会
  2. 02公告、ニュース、経済指標の取得
  3. 03複数銘柄の価格データ照会
  4. 04呼び出しエラーやデータ不足への対応

MCP 対応

ローカル CLI を介して Wind の7つの MCP サービスを呼び出し、金融データを取得します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/wind-alice/alicemarket --skill wind-mcp-skill

インストール後、Claude Code で/wind-mcp-skillを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
analytics.md
bond.md
economic.md
financial-docs.md
fund-indicators.md
fund.md
index-indicators.md
index.md
stock-indicators.md
stock.md
scripts/
call-rules.json
cli.mjs
tool-manifest.json
update-check.mjs

詳細

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_data 或 wind-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_ERROR 或 backend_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.unit 与 meta.magnitude。元数据未给出时保留原值并说明单位未知,不得自行换算。

失败:stdout 是 { "ok": false, "code": "...", "message": "..." }。本地/参数/网络类错误的 code 指明原因(AUTH_ERROR、PARAMS_FILE_ERROR、INVALID_PARAMS_JSON、PARAM_TYPE_ERROR、PARAM_VALIDATION_ERROR、ROUTE_ERROR、USAGE_ERROR、RATE_LIMIT_ERROR、NETWORK_ERROR、TOOL_RUNTIME_ERROR、SETUP_ERROR、UNKNOWN);接口层错误的 code 固定为 backend_error,message 为接口原文。据此向用户说明,或按下面的自检修正后再调用。

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

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

4. 終了処理

対象が認識されない、または NER に失敗した場合は、正確な正式名称または Wind 標準コードをユーザーに尋ねてください。取引所のサフィックスを独自に補ったり、名称からコードを推測したりしてはいけません。パラメーターエラーの場合は、まず message に示されている期待される型、形式、列挙値、またはフィールドセットに従って修正してください。一意に特定できない場合は、ユーザーに尋ねてください。

認証、利用枠、ネットワーク、バックエンドの利用不可、コマンドの受け渡し、ルーティングのエラーは、そのまま報告してください。analytics_data または wind-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.

完了ステータス:DONE、DONE_WITH_LIMITS、NO_RESULTS、BLOCKED_KEY、BLOCKED_QUOTA、BLOCKED_RUNTIME、OUT_OF_SCOPE。

コメント