ai.smithery/xinkuang-china-stock-mcp
Access real-time and historical market data for China A-shares and Hong Kong stocks, along with ne…
★ 25MITai-ml
Install
Config snippet generator goes here (5 client tabs)
README
# china-stock-mcp [](https://smithery.ai/server/@xinkuang/china-stock-mcp) 一款股票 MCP (Model Context Protocol) 服务器,为中国股市数据提供接口。提供了一系列工具,用于获取财务信息,包括历史股票数据、实时数据、新闻数据、财务报表等。 ## 🚀 核心特性 - **双模式运行**: 支持 stdio 本地模式和 HTTP 网络模式 - **丰富的财务数据**: 涵盖 A/B/H 股数据的全方位获取 - **实时数据**: 支持实时股价、交易信息等 - **财务报表**: 资产负债表、利润表、现金流量表等 - **技术指标**: 30+ 种技术指标自动计算和添加 - **新闻数据**: 股票相关新闻和公告信息 - **易用性**: 简单配置即可集成到 AI 助手 (Claude、Cursor 等) - **数据缓存**: 内置内存和磁盘缓存机制,提高数据获取效率和响应速度 - **容器化**: 支持 Docker 部署 ## 🛠️ 架构概览 ### 主要组件 - `server.py`: MCP 服务器核心,定义所有工具和数据接口 - `__main__.py`: 命令行入口,支持多种运行模式 - FastMCP 框架: 处理 MCP 协议通信 - akshare-one 库: 提供底层的中国股市数据获取能力 - `cache_utils.py`: 缓存工具,提供内存和磁盘缓存功能 ### 支持的数据源 - \*\*数据源故障切换\*\*: 内置 \`\_fetch\_data\_with\_fallback\` 机制,支持按优先级自动切换数据源。当首选数据源失败或返回空数据时,系统将自动尝试备用数据源,从而提高数据获取的稳定性和可靠性。 - 东方财富 (eastmoney, eastmoney_direct) - 新浪财经 (sina) - 雪球 (xueqiu) ## 📋 可用工具 ### 1. `获取股票的历史行情数据,支持多种数据源和技术指标` (get_hist_data) 获取股票历史行情数据。 **参数:** - `symbol` (string): 股票代码 (例如: '000001') - `interval` (Literal): 时间周期: minute, hour, day, week, month, year。默认:day - `interval_multiplier` (int): 时间周期乘数 - `start_date` (string): 开始日期,格式为 YYYY-MM-DD - `end_date` (string): 结束日期,格式为 YYYY-MM-DD - `adjust` (Literal): 复权类型: none, qfq(前复权), hfq(后复权)。默认:none - \`indicators\_list\` \(string\|list\): 要添加的技术指标,可以是逗号分隔的字符串(例如: 'SMA,EMA')或字符串列表(例如: \['SMA', 'EMA'\])。支持的指标包括: SMA, EMA, RSI, MACD, BOLL, STOCH, ATR, CCI, ADX, WILLR, AD, ADOSC, OBV, MOM, SAR, TSF, APO, AROON, AROONOSC, BOP, CMO, DX, MFI, MINUS\_DI, MINUS\_DM, PLUS\_DI, PLUS\_DM, PPO, ROC, ROCP, ROCR, ROCR100, TRIX, ULTOSC。常用指标:SMA, EMA, RSI, MACD, BOLL, STOCH, OBV, MFI,建议不超过10个。 - `output_format` (Literal): 输出数据格式: json, csv, xml, excel, markdown, html。默认:markdown ### 2. `获取股票的实时行情数据,支持多种数据源` (get_realtime_data) 获取实时股票行情数据,支持的数据源包括:eastmoney, eastmoney\_direct, xueqiu。 **参数:** - `symbol` (string): 股票代码 (例如: '000001') - `output_format` (Literal): 输出数据格式: json, csv, xml, excel, markdown, html。默认:markdown ### 3. `获取股票相关的新闻数据` (get_news_data) 获取股票相关新闻数据. **参数:** - `symbol` (string): 股票代码 (例如: '000001') - `output_format` (Literal): 输出数据格式: json, csv, xml, excel, markdown, html。默认:markdown ### 4. `获取公司的资产负债表数据` (get_balance_sheet) 获取公司资产负债表数据. **参数:** - `symbol` (string): 股票代码 (例如: '000001') - `output_format` (Literal): 输出数据格式: json, csv, xml, excel, markdown, html。默认:markdown ### 5. `获取指定股票代码的公司的利润表数据` (get_income_statement) 获取公司利润表数据. **参数:** - `symbol` (string): 股票代码 (例如: '000001') - `output_format` (Literal): 输出数据格式: json, csv, xml, excel, markdown, html。默认:markdown ### 6. `获取指定股票代码的公司的现金流量表数据` (get_cash_flow) 获取公司现金流量表数据. **参数:** - `symbol` (string): 股票代码 (例如: '000001') - `output_format` (Literal): 输出数据格式: json, csv, xml, excel, markdown, html。默认:markdown ### 7. `获取股票的近 100 个交易日的资金流向数据` (get_fund_flow) 获取股票的近 100 个交易日的资金流向数据。 **参数:** - `symbol` (string): 股票代码 (例如: '000001') - `output_format` (Literal): 输出数据格式: json, csv, xml, excel, markdown, html。默认:markdown ### 8. `获取公司的内部股东交易数据` (get_inner_trade_data) 获取公司内部股东交易数据. **参数:** - `symbol` (string): 股票代码 (例如: '000001') - `output_format` (Literal): 输出数据格式: json, csv, xml, excel, markdown, html。默认:markdown ### 9. `获取三大财务报表的关键财务指标` (get_financial_metrics) 获取三大财务报表的关键财务指标. **参数:** - `symbol` (string): 股票代码 (例如: '000001') - `output_format` (Literal): 输出数据格式: json, csv, xml, excel, markdown, html。默认:markdown ### 10. `获取当前时间(ISO格式、时间戳)和最近一个交易日` (get_time_info) 获取当前时间(ISO格式、时间戳)和最近一个交易日. **参数:** 无 ### 11. `获取指定股票的基本概要信息` (get_stock_basic_info) 获取股票基本概要信息,支持 A 股和港股 **参数:** - `symbol` (string): 股票代码 (例如: '000001') - `output_format` (Literal): 输出数据格式: json, csv, xml, excel, markdown, html。默认:markdown ### 12. `获取单个宏观经济指标数据` (get_macro_data) 获取单个宏观经济指标数据 **参数:** - `indicator` (Literal): 要获取的宏观经济指标。支持的指标包括: money_supply, gdp, cpi, pmi, stock_summary。默认: 'gdp' - `output_format` (Literal): 输出数据格式: json, csv, xml, excel, markdown, html。默认:markdown ### 13. `分析散户和机构投资者的投资情绪` (get_investor_sentiment) 分析散户和机构投资者的投资情绪 **参数:** - `symbol` (string): 股票代码 (例如: '000001') - `output_format` (Literal): 输出数据格式: json, csv, xml, excel, markdown, html。默认:markdown ### 14. `获取指定股票的股东情况` (get_shareholder_info) 获取股东情况 **参数:** - `symbol` (string): 股票代码 (例如: '000001') - `output_format` (Literal): 输出数据格式: json, csv, xml, excel, markdown, html。默认:markdown ### 15. `获取指定股票公司的主要产品或业务构成` (get_product_info) 获取产品情况 **参数:** - `symbol` (string): 股票代码 (例如: '000001') - `output_format` (Literal): 输出数据格式: json, csv, xml, excel, markdown, html。默认:markdown ### 16. `获取股票的业绩预测数据,包括预测年报净利润和每股收益` (get_profit_forecast) 获取股票的业绩预测数据。 **参数:** - `symbol` (string): 股票代码 (例如: '600519') - `output_format` (Literal): 输出数据格式: json, csv, xml, excel, markdown, html。默认:markdown ### 17. `获取分红送股详情` (get_stock_fhps_detail) 获取指定股票的分红送股详情数据。 **参数:** - `symbol` (string): 股票代码 (例如: '000001') - `output_format` (Literal): 输出数据格式: json, csv, xml, excel, markdown, html。默认:markdown ### 18. `获取筹码分布数据` (get_