mx-skill-cc
M-Intelligence Financial Smart Skill Set (mx-skills). A one-stop platform covering the full spectrum of financial investment research capabilities, including financial data queries, news search, macro data, smart stock screening,financial Q&A, industry research, stock tracking.
Install
mkdir -p .claude/skills/mx-skill-cc && curl -L -o skill.zip "https://mcp.directory/api/skills/download/9521" && unzip -o skill.zip -d .claude/skills/mx-skill-cc && rm skill.zipInstalls to .claude/skills/mx-skill-cc
About this skill
东方财富妙想金融技能集(mx-skills)
概述
本技能集是围绕东方财富金融数据库构建的一站式投研能力平台,包含 14 个专业化子技能。 本文件为 Router(路由层),负责根据用户意图匹配正确的子技能并调度执行。
核心原则:
- 不要自行编造金融数据或研究报告,必须通过调用脚本接口获取真实数据。
- 各子技能的详细指令(输入输出规范、错误处理、模板格式)存放在
references/目录下。 - 路由确定后,先读取对应 reference 文件,再执行对应脚本。
环境变量
| 变量名 | 说明 | 来源 |
|---|---|---|
EM_API_KEY | 东方财富妙想 API Key(#1-#14 必需) | 优先从环境变量读取;默认已配置在 {baseDir}/.env 中 |
EM_API_KEY_POOL | 多 Token 配额轮换(逗号分隔,如 em_xxx,em_yyy) | 可选;当前脚本仅读取 EM_API_KEY,多 Token 轮换需由上层封装实现 |
IWENCAI_API_KEY | iwencai NL 语义检索 Key(仅 #16 a_stock_research 的 NL 检索需要) | 可选;申请见 https://www.iwencai.com/skillhub |
如需自定义 Key,可设置环境变量覆盖:
export EM_API_KEY="your_key_here"
多 Token 配额轮换(推荐)
单 Token 每日调用限额约 50 次,高频场景下极易耗尽。建议由外层规划引擎实现 Token 池轮换:
export EM_API_KEY_POOL="em_xxx,em_yyy,em_zzz"
轮换策略建议:
- 优先级策略:按 Token 可靠性排序,优先使用高优先级 Token
- 均衡策略:轮询使用,避免单 Token 过早耗尽
- 耗尽降级:当所有 Token 配额用完时,自动降级到 BaoStock / yfinance 等备用数据源
注:mx-skills 原生脚本仅读取
EM_API_KEY,EM_API_KEY_POOL的解析与轮换逻辑需由调用方(如kimi_mx_agent.py等封装层)实现。
调用配额与限额
每日调用限额
| 技能类别 | 限额 | 超限表现 |
|---|---|---|
| 所有技能(除金融数据查询外) | 每个技能每日约 50 次 | 接口返回 rate limit、quota exceeded 或类似限流提示 |
| 金融数据查询 | 单次最多 5 个 实体 | 自动截取前 5 个实体,并在结果说明中提示 |
限额实战建议
- 批量查询时控制实体数量:金融数据查询单次不超过 5 个股票/基金,超出需拆分为多次调用
- 监控配额消耗:高频场景(如批量诊断、批量回测)建议由外层封装记录各 Token 当日已用次数
- 预留余量:当单 Token 当日调用接近 45 次时,切换到备用 Token
- 降级策略:所有 mx-skills 技能在配额耗尽或接口异常时,建议自动降级到 BaoStock / yfinance 等本地数据源
依赖安装
首次使用前确保依赖已安装:
pip3 install httpx pandas openpyxl --user
路由决策表
根据用户意图,按优先级匹配子技能:
| # | 用户意图 | 子技能 | Reference 文件 | 脚本路径 |
|---|---|---|---|---|
| 1 | 自然语言问答、概括性金融问题、"帮我查一下"/"分析一下"/"解释一下" | 金融问答 | references/mx_financial_assistant.md | scripts/mx_financial_assistant/generate_answer.py |
| 2 | 查询结构化金融数据(股价、财报、估值、盘口等) | 金融数据查询 | references/mx_finance_data.md | scripts/mx_finance_data/get_data.py |
| 3 | 搜索财经资讯、公告、研报、新闻、政策 | 金融资讯搜索 | references/mx_finance_search.md | scripts/mx_finance_search/get_data.py |
| 4 | 查询宏观经济数据(GDP、CPI、M2、PMI 等) | 宏观数据查询 | references/mx_macro_data.md | scripts/mx_macro_data/get_data.py |
| 5 | 选股、选板块、选基金、筛选 ETF/可转债 | 智能选股 | references/mx_stocks_screener.md | scripts/mx_stocks_screener/get_data.py |
| 6 | 生成行业研究报告 | 行业研究 | references/industry_research_report.md | scripts/industry_research_report/get_data.py |
| 7 | 生成行业/个股跟踪报告(日报/周报/月报) | 行业个股跟踪 | references/industry_stock_tracker.md | scripts/industry_stock_tracker/generate_industry_stock_tracker_report.py |
| 8 | 生成首次覆盖报告或深度研究报告 | 首次覆盖/深度研究 | references/initiation_of_coverage_or_deep_dive.md | scripts/initiation_of_coverage_or_deep_dive/generate_deep_research_report.py |
| 9 | 业绩点评、财报分析、季报/半年报/年报点评 | 业绩点评 | references/stock_earnings_review.md + references/stock_earnings_review_business_logic.md | scripts/stock_earnings_review/(多步骤) |
| 10 | 单只股票综合诊断("怎么样"/"值得买吗"/"该卖吗") | 股票诊断 | references/stock_diagnosis.md | scripts/stock_diagnosis/get_data.py |
| 11 | 单只基金综合诊断 | 基金诊断 | references/fund_diagnosis.md | scripts/fund_diagnosis/get_data.py |
| 12 | 发现市场热点、今日热点、热股、活跃赛道 | 热点发现 | references/stock_market_hotspot_discovery.md | scripts/stock_market_hotspot_discovery/get_data.py |
| 13 | 可比公司分析、同业对比、经营+估值横向比较 | 可比公司分析 | references/comparable_company_analysis.md | scripts/comparable_company_analysis/(get_data.py + excel_theme.py) |
| 14 | 专题研究报告、主题投资、事件驱动研究 | 专题研究 | references/topic_research_report.md | scripts/topic_research_report/get_data.py |
补充能力层(仅 A 股)—— a-stock-data 互补/降级源
下列条目走内嵌 Python模式(约定 D,见下文),不走 scripts/ 子进程。所有 a-stock-data 层执行前必须先读 references/a_stock_data_common.md。
| # | 用户意图 | 子技能 | Reference 文件 | 调用模式 |
|---|---|---|---|---|
| 15 | A 股实时盘口/五档/涨跌停价/K线带 MA(mx 配额耗尽时也降级到这里) | A股行情层 | references/a_stock_market_data.md | 内嵌 Python(D) |
| 16 | A 股研报 PDF 下载、iwencai NL 主题检索、同花顺一致预期 EPS | A股研报层 | references/a_stock_research.md | 内嵌 Python(D) |
| 17 | A 股龙虎榜(个股/全市场)、限售解禁、北向资金、概念板块归属、同花顺题材归因、行业涨跌排名、个股资金流分钟级 | A股信号层 | references/a_stock_signals.md | 内嵌 Python(D) |
| 18 | A 股融资融券、大宗交易、股东户数变化、分红送转历史、个股资金流 120 日 | A股资金面/筹码层 | references/a_stock_capital_flow.md | 内嵌 Python(D) |
| 19 | A 股个股新闻、财联社快讯、东财全球资讯(mx 资讯搜索配额耗尽时降级) | A股新闻层 | references/a_stock_news.md | 内嵌 Python(D) |
| 20 | A 股财务 37 字段、F10 九大类、新浪三表(mx 金融数据查询配额耗尽时降级) | A股基础数据层 | references/a_stock_fundamentals.md | 内嵌 Python(D) |
| 21 | A 股巨潮公告全文检索(mx 资讯搜索配额耗尽时降级) | A股公告层 | references/a_stock_filings.md | 内嵌 Python(D) |
| 22 | A 股完整题材挖掘流水线:题材 Top3 + 个股 Top5 + 目标价 + 操作策略(建立在 a-stock-data 之上的分析层;#12 热点发现配额耗尽时降级到这里) | 题材挖掘分析层 | references/theme_miner.md | 内嵌 Python(D,经 data_bridge 调 a-stock-data) |
路由冲突时的优先级规则:
- 若用户请求包含明确的报告类型关键词(如"业绩点评""行业报告""深度研究"),优先按报告类型匹配。
- 若用户请求是笼统的问答型(如"帮我看看""分析一下"),优先走金融问答(#1),由金融问答内部再决定是否调用数据/搜索能力。
- 若用户明确要求数据/文件输出(如"导出 Excel""生成 CSV"),优先走对应的数据查询类技能。
mx-skills vs a-stock-data 路由优先级(A 股专用)
A 股 + 互补能力(龙虎榜 / 解禁 / 北向 / 题材归因 / 概念板块 / 融资融券 / 大宗交易 / 股东户数 / 分红送转 / iwencai NL 检索 / 实时盘口/五档)
→ 直接走 a-stock-data 对应层(#15-#21),mx-skills 无对等能力
A 股 + 重叠能力(基础行情 / 个股新闻 / 个股财务 / 公告检索)
→ 默认走 mx-skills 主路(#1-#14)
→ 若脚本 stdout/stderr 出现限流字样则降级到 a-stock-data 对应层:
- `quota exceeded` / `rate limit` / `调用次数已达上限` / HTTP 429
→ 降级映射:
- mx_finance_data 配额耗尽 → a_stock_market_data + a_stock_fundamentals
- mx_finance_search 配额耗尽 → a_stock_news + a_stock_filings
非 A 股(港股/美股/基金/宏观/可转债/ETF/全市场选股/AI 报告生成)
→ 强制 mx-skills,**禁用** a-stock-data 降级(a-stock-data 仅覆盖 A 股)
A 股题材挖掘(#12 热点发现 vs #22 题材挖掘分析层)
→ 简单「今天什么板块/方向热」总览 → 默认 mx-skills #12(付费 API,快)
→ 完整链路「题材 Top3 + 个股 Top5 + 目标价 + 操作策略」 → #22 题材挖掘分析层(免费,a-stock-data 供数,打分透明)
→ #12 配额耗尽(限流字样)→ 降级到 #22
→ #22 是分析层,单向依赖 a-stock-data(#15-#21);其价格预测为启发式模型(非回测),仅作相对排序参考
通用调用规范
脚本执行方式
所有脚本通过 {baseDir} 引用 skill 根目录:
python3 {baseDir}/scripts/<子技能目录>/<脚本名>.py [参数]
重要约束:
- 禁止使用任何「后台执行、稍后汇报」的方式运行脚本。
- 必须在当前会话中同步等待命令完成,获取 stdout 结果后再继续。
输出规范
各脚本 stdout 输出格式不一致,调用方必须根据技能类型正确解析:
A. JSON 输出类(金融问答 / 行业研究 / 首次覆盖 / 专题研究 / 业绩点评)
{"ok": true, "answer": "...", "references": [...]}
- 优先提取
ok=true的成功结果 - 若
ok=false或包含message字段,必须原样透传message,不得改写或替换 - 禁止在接口失败时编造数据或报告内容
B. 文件路径输出类(金融数据查询 / 宏观数据 / 智能选股)
stdout 输出文本行,非 JSON:
文件: /path/to/miaoxiang/mx_finance_data/mx_finance_data_xxx.xlsx
描述: /path/to/miaoxiang/mx_finance_data/mx_finance_data_xxx_description.txt
行数: 42
- 通过正则提取
文件:、描述:后的绝对路径 - 错误信息输出到 stderr,以
错误:开头
C. 内容文本输出类(股票诊断 / 基金诊断 / 热点发现 / 可比公司分析)
stdout 直接输出 Markdown 内容文本,同时会在指定目录生成 .md 文件:
Saved: /path/to/miaoxiang/stock_diagnosis/stock_diagnosis_xxx.md
{Markdown 内容}
- 通过正则提取
Saved:后的文件路径 - Markdown 内容可直接展示给用户
D. 内嵌 Python 直接执行类(a-stock-data 补充层 #15-#21)
不走 scripts/ 子进程,模型直接读 reference 文件、复制内嵌的 Python 代码段,用 python3 -c "..." 执行:
# 例:执行 a_stock_signals.md 中的"龙虎榜"代码块
python3 -c "
import requests
UA='Mozilla/5.0 ...'
DATACENTER_URL='https://datacenter-web.eastmoney.com/api/data/v1/get'
def eastmoney_datacenter(...): ...
def dragon_tiger_board(code, trade_date, look_back=30): ...
print(dragon_tiger_board('002475', '2026-05-17'))
"
- 执行前必读
references/a_stock_data_common.md(含UA、DATACENTER_URL、eastmoney_datacenter()helper、ticker 归一化),它是 Layer 1-7 所有代码段的依赖 - 输出是 Python 值/dict/list/DataFrame,不写文件——直接
print()或在 Python 内组装 Markdown 后展示 - 鉴权:除 iwencai 外全部免费免 key;iwencai 需
IWENCAI_API_KEY环境变量(仅 #16 研报 NL 检索需要) - 依赖:
pip install mootdx requests pandas stockstats(与 mx-skills 的httpx pandas openpyxl并存) - 仅 A 股:港股、美股、基金、宏观禁用此模式,强制回到 #1-#14
超时配置
| 脚本 | 默认超时 | 说明 |
|---|---|---|
| 金融问答 | 600 秒 | 深度思考模式可能耗时更长 |
| 金融数据查询 | 600 秒 | 多实体查询耗时增加 |
| 其他技能 | 600 秒 | 报告生成类技能(行业研究、首次覆盖等)建议预留充足超时 |
外层调用时建议设置超时 >= 120 秒,避免因网络波动导致过早中断。
数学公式格式
所有子技能输出中的数学公式严格遵循:
- 行内公式:
\(...\)(不使用$...$) - 行间公式:
\[...\]
各子技能快速调用索引
1. 金融问答(mx-financial-assistant)
# 标准模式
python3 {baseDir}/scripts/mx_financial_assistant/generate_answer.py --query "用户问题"
# 深度思考模式
python3 {baseDir}/scripts/mx_financial_assistant/generate_answer.py --query "用户问题" --deep-think
2. 金融数据查询(mx-finance-data)
python3 {baseDir}/scripts/mx_finance_data/get_data.py --query "贵州茅台最近一年营收和净利润"
输出:Excel(多 sheet)+ 描述 txt。
3. 金融资讯搜索(mx-finance-search)
python3 {baseDir}/scripts/mx_finance_search/get_data.py "寒武纪最新研报与公告"
输出:txt 文本文件。
4. 宏观经济数据查询(mx-macro-data)
python3 {baseDir}/scripts/mx_macro_data/get_data.py --query "中国近五年GDP"
输出:CSV(按频率分文件)+ 描述 txt。
5. 智能选股(mx-stocks-screener)
python3 {baseDir}/scripts/mx_stocks_screener/get_data.py --query "股价大于100元,主力流入,成交额排名前50" --select-type "A股"
输出:CSV + 描述 txt。
6. 行业研究报告(industry-research-report)
python3 {baseDir}/scripts/industry_research_report/get_data.py --query "半导体"
输出:PDF + DOCX + 分享链接。
7. 行业/个股跟踪报告(industry-stock-tracker)
python3 {baseDir}/scripts/industry_stock_tracker/generate_industry_stock_tracker_report.py --query "跟踪新能源汽车板块"
输出:PDF + DOCX + 分享链接。
8. 首次覆盖/深度研究(initiation-of-coverage-or-deep-dive)
python3 {baseDir}/scripts/initiation_of_coverage_or_deep_dive/generate_deep_research_report.py --query "东方财富深度研究"
输出:PDF + DOCX + 分享链接。
9. 业绩点评(stock-earnings-review)——分步骤编排
# 第一步:实体识别
python3 {baseDir}/scripts/stock_earnings_review/validate_entity.py --query "东方财富 业绩点评"
# 第二步:获取报告期候选
python3 {baseDir}/scripts/stock_earnings_review/normalize_report_period.py \
--secu-code 300059 --market-char SZ --class-code 002001
# 第三步:生成点评(外层模型选择 reportDate 后调用)
python3 {baseDir}/scripts/stock_earnings_review/call_review_api.py \
--secu-code 300059 --market-char SZ --class-code 002001 \
--report-date 2025-12-31 --secu-name 东方财富
10. 股票诊断(stock-diagnosis)
python3 {baseDir}/scripts/stock_diagnosis/get_data.py --query "东方财富股票咋样"
输出:Markdown 诊断报告(本地 .md 文件)。
1
Content truncated.
More by Community
View all skills by Community →You might also like
ui-ux-pro-max
nextlevelbuilder
"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."
flutter-development
aj-geddes
Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.
pdf-to-markdown
aliceisjustplaying
Convert entire PDF documents to clean, structured Markdown for full context loading. Use this skill when the user wants to extract ALL text from a PDF into context (not grep/search), when discussing or analyzing PDF content in full, when the user mentions "load the whole PDF", "bring the PDF into context", "read the entire PDF", or when partial extraction/grepping would miss important context. This is the preferred method for PDF text extraction over page-by-page or grep approaches.
drawio-diagrams-enhanced
jgtolentino
Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.
godot
bfollington
This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.
nano-banana-pro
garg-aayush
Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.
Related MCP Servers
Browse all serversGet real-time market data, technical indicators like relative strength index, and yahoo stocks finance insights for smart investment decisions.
Mastra Docs: AI assistants with direct access to Mastra.ai’s full knowledge base for faster, smarter support and insights.
Supercharge your AI code assistant with GitMCP—get accurate, up-to-date code and API docs from any GitHub project. Free, secure, and open-source.
Desktop Commander MCP unifies code management with advanced source control, git, and svn support—streamlining development in one interface.
Enhance your Firebase projects with AI-powered development tools from Firebase Inc. for smarter, faster app solutions.
Empower AI with the Exa MCP Server—an AI research tool for real-time web search, academic data, and smarter, up-to-date insights.