Stock-MCP
一个基于 MCP (Model Context Protocol) 的 A 股数据服务器,提供实时股票行情、个股信息、历史数据等功能。
项目简介
Stock-MCP 是一个 MCP 服务器实现,集成了 AKShare 数据源,为 Claude 等 AI 助手提供 A 股市场数据接口。通过该服务器,可以轻松获取:
A 股市场总览数据(上交所和深交所)
个股公司概况信息
实时行情数据
个股实时价格
个股 80 天历史行情数据
系统要求
Python >= 3.10
pip 或 uv 包管理器
安装指南
方式一:使用 uv(推荐)
uv 是一个快速的 Python 包管理器,安装和依赖解析速度更快。
安装 uv(如果未安装)
pip install uv --upgrade或使用腾讯源加速:
pip install uv --upgrade -i https://mirrors.cloud.tencent.com/pypi/simple同步项目依赖
uv sync
方式二:使用 pip
或使用腾讯源加速:
依赖说明
akshare (>=1.18.8):A 股数据获取库,提供实时行情、历史数据等
mcp (>=1.25.0):Model Context Protocol 框架,用于构建 MCP 服务器
快速开始
启动服务器
服务器将通过 SSE (Server-Sent Events) 传输启动,默认监听本地连接。
可用工具
1. get_sse_summary()
获取 A 股市场总览数据(上交所和深交所)
参数: 无
返回: JSON 格式的市场总览数据,包含涨跌家数、成交量等信息
示例:
2. get_stock_info(symbol)
获取个股公司概况信息
参数:
symbol(str):股票代码,6 位数字,如600519(默认值)
返回: JSON 格式的公司信息,包含公司名称、行业、主营业务等
示例:
3. get_stock_realtime()
获取 A 股全部实时行情数据
参数: 无
返回: JSON 格式的全市场实时行情数据
示例:
4. get_stock_price(symbol)
获取个股实时价格
参数:
symbol(str):股票代码,6 位数字或带交易所前缀,如600519或SH600519(默认值)
返回: JSON 格式的实时价格数据,包含当前价、涨跌幅、成交量等
示例:
5. get_stock_history(symbol)
获取个股 80 天历史行情数据
参数:
symbol(str):股票代码,6 位数字,如600519(默认值)
返回: JSON 格式的历史行情数据,包含日期、开盘价、收盘价、最高价、最低价、成交量等
示例:
股票代码说明
交易所前缀
SH:上海交易所(Shanghai)
SZ:深圳交易所(Shenzhen)
常见股票代码示例
股票名称 | 代码 | 完整代码 |
贵州茅台 | 600519 | SH600519 |
五粮液 | 000858 | SZ000858 |
中国平安 | 601318 | SH601318 |
招商银行 | 600036 | SH600036 |
腾讯控股 | 00700 | HK00700 |
项目结构
使用示例
在 Claude 中使用
在 Claude 的 MCP 配置中添加此服务器
配置 SSE 传输方式
在对话中使用相关工具获取股票数据
直接调用
常见问题
Q: 如何加速包安装?
A: 使用腾讯源或其他国内镜像源:
或配置 pip 配置文件 ~/.pip/pip.conf:
Q: 数据来源是什么?
A: 所有数据来自 AKShare 库,该库聚合了多个数据源,提供免费的 A 股数据。
Q: 如何处理网络错误?
A: 确保网络连接正常,AKShare 依赖网络获取实时数据。如果频繁出现错误,可能是数据源暂时不可用。
Q: 支持哪些股票代码格式?
A: 支持 6 位数字代码(如 600519)和带交易所前缀的代码(如 SH600519、SZ000858)。
许可证
详见 LICENSE 文件
贡献
欢迎提交 Issue 和 Pull Request!