stock_info_mcp
Provides historical stock data, fundamental information, and news updates related to stock performance and market trends. Supports features like risk warnings for stocks and access to financial news.
Author

tddt
No License
Quick Info
Tools 1
Last Updated 2026-02-19
Actions
Tags
stock_info_mcptddtstockstddt stock_info_mcpstock_info_mcp providesmarket tddt
Stock Info Service
这是一个基于 FastMCP 的股票数据服务,提供了股票历史数据、基本面信息、新闻资讯等功能。
项目结构
stock-info/
├── src/
│ ├── config/ # 配置管理
│ │ └── settings.py
│ ├── core/ # 核心功能
│ │ └── exceptions.py
│ ├── models/ # 数据模型
│ │ └── stock.py
│ ├── repository/ # 数据访问层
│ │ └── stock_repository.py
│ ├── service/ # 业务逻辑层
│ │ └── stock_service.py
│ └── server.py # 服务入口
├── pyproject.toml # 项目配置
└── README.md # 项目文档
功能特性
- 获取股票历史数据
- 查询股票基本信息
- 获取风险警示股票列表
- 查看个股新闻
- 获取财经新闻(支持分页)
- 获取股票主营业务信息
- .....后续逐渐增加
MCP客户端配置步骤
-
- 拉取代码
-
- 使用uv建立虚拟环境 python 1.10+
-
- 使用本地目录方式配置MCP服务
{
"mcpServers": {
"stock-info": {
"isActive": true,
"command": "uv",
"args": [
"--directory",
"\\path\\to\\sock_info\\src",
"run",
"server.py"
]
}
}
环境要求
- Python >= 3.10
- 依赖包:
- fastmcp
- akshare
- pandas
- pydantic
- pydantic-settings
安装部署
- 创建虚拟环境:
python -m venv .venv
- 激活虚拟环境:
# Windows
.venv\Scripts\activate
# Linux/macOS
source .venv/bin/activate
- 安装依赖:
pip install -e .
启动服务
# 使用默认配置启动
python src/server.py
# 使用 HTTP 传输协议启动
python src/server.py --transport http --port 8080
# 设置日志级别
python src/server.py --log-level debug
工具说明
get_stock_info: 获取指定股票代码、指定日期范围的股价信息get_stock_price_monthly: 获取指定股票最近30天的股价信息stock_individual_basic_info: 获取指定股票的基本信息risk_stocks: 获取风险警示板股票列表stock_merito_data: 获取指定股票的主营业务信息get_stock_news: 获取指定股票的新闻资讯get_finance_news: 获取财经精选新闻(支持分页)
项目特点
- 模块化设计:采用清晰的分层架构,便于维护和扩展
- 统一异常处理:使用自定义异常体系,提供友好的错误提示
- 配置集中管理:使用 pydantic-settings 进行配置管理
- 类型提示:全面使用 Python 类型注解,提高代码可读性
- 数据验证:使用 Pydantic 模型进行数据验证和序列化
开发规范
- 使用 ruff 进行代码格式化和 lint
- 遵循 PEP 8 编码规范
- 保持完整的类型注解
- 编写清晰的文档字符串
错误处理
服务统一返回以下格式的错误信息:
{
"error": "错误代码",
"message": "错误描述",
"details": {
"额外信息": "值"
}
}
主要错误代码
STOCK_NOT_FOUND: 股票代码不存在INVALID_DATE_FORMAT: 日期格式错误DATA_FETCH_ERROR: 数据获取失败INVALID_PAGINATION: 分页参数错误SYSTEM_ERROR: 系统内部错误
