本项目是一个基于 FastMCP 的股票数据服务平台,它为用户提供了丰富的股票相关信息,涵盖历史股价数据、公司基本面信息以及新闻资讯等,能满足用户多方面的股票信息查询需求。
以下为示例配置:
{
"mcpServers": {
"stock-info": {
"isActive": true,
"command": "uv",
"args": [
"--directory",
"\\path\\to\\sock_info\\src",
"run",
"server.py"
]
}
}
}
python -m venv .venv
激活虚拟环境:
.venv\Scripts\activatesource .venv/bin/activate安装依赖包:
pip install -r requirements.txt
python src/server.py
uvicorn stock_info.app:app --reload
确保你的 Python 版本为 3.10 及以上,并安装好所需的依赖包。
按照上述 MCP 客户端配置步骤进行操作,并参考示例配置文件。
创建并激活虚拟环境后,使用 pip install -r requirements.txt 安装项目依赖。
以下是调用部分接口的示例代码:
# 获取股票历史数据
from stock_info.service.stock_service import get_stock_history_data
history_data = get_stock_history_data('stock_code')
print(history_data)
# 查询股票基本信息
from stock_info.service.stock_service import get_stock_info
stock_info = get_stock_info('stock_code')
print(stock_info)
# 获取财经新闻并进行分页查询
from stock_info.service.stock_service import get_financial_news
page = 2
page_size = 10
financial_news = get_financial_news(page=page, page_size=page_size)
print(financial_news)
以下是服务提供的一些主要功能及其用途:
| 功能 | 接口 | 用途 |
|---|---|---|
| 获取股票历史数据 | get_stock_history_data() |
返回指定股票的历史股价数据 |
| 查询股票基本信息 | get_stock_info() |
返回股票的基本信息,如公司名称、行业等 |
| 风险警示股票列表 | get_risk_warning_stocks() |
获取当前存在风险警示的股票列表 |
| 查看个股新闻 | get_stock_news() |
获取指定股票的相关新闻资讯 |
| 财经新闻(支持分页) | get_financial_news() |
返回最新的财经新闻,并支持分页查询 |
| 获取股票主营业务信息 | get_main_business_info() |
返回股票的主营业务详情 |
exceptions.py 实现了统一的错误捕获与处理机制。repository 层实现数据操作的封装,提升代码复用性。pyproject.toml 和 requirements.txt 管理项目依赖,确保环境一致性。服务在遇到错误时会返回如下的 JSON 格式响应:
{
"error": {
"code": " ErrorCode ",
"message": " Error Message "
}
}
以下是主要的错误代码和对应的含义:
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 # 项目文档
本项目采用模块化设计,将不同功能模块分离,提高了代码的可维护性和可扩展性。通过统一异常处理机制,确保服务在遇到错误时能返回规范的错误信息。数据访问层的封装提升了代码的复用性,依赖管理工具保证了项目环境的一致性。
文档中未提及许可证相关信息,若有需要请补充。
⚠️ 重要提示
所有 API 接口均支持 JSON 格式返回,部分接口还支持分页查询。使用前请仔细阅读接口文档,确保正确使用参数和返回值。服务运行时可能会产生一定开销,请根据实际情况配置资源限制。
💡 使用建议
在开发过程中,请严格遵循开发规范,确保代码质量。提交代码前务必运行测试用例,避免引入新的问题。