Skip to main content
Glama
tddt

Stock Info Service

by 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           # 项目文档

Related MCP server: Weather & Stock MCP Server

功能特性

  • 获取股票历史数据

  • 查询股票基本信息

  • 获取风险警示股票列表

  • 查看个股新闻

  • 获取财经新闻(支持分页)

  • 获取股票主营业务信息

  • .....后续逐渐增加

MCP客户端配置步骤

    1. 拉取代码

    1. 使用uv建立虚拟环境 python 1.10+

    1. 使用本地目录方式配置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

安装部署

  1. 创建虚拟环境:

python -m venv .venv
  1. 激活虚拟环境:

# Windows
.venv\Scripts\activate
# Linux/macOS
source .venv/bin/activate
  1. 安装依赖:

pip install -e .

启动服务

# 使用默认配置启动
python src/server.py

# 使用 HTTP 传输协议启动
python src/server.py --transport http --port 8080

# 设置日志级别
python src/server.py --log-level debug

工具说明

  1. get_stock_info: 获取指定股票代码、指定日期范围的股价信息

  2. get_stock_price_monthly: 获取指定股票最近30天的股价信息

  3. stock_individual_basic_info: 获取指定股票的基本信息

  4. risk_stocks: 获取风险警示板股票列表

  5. stock_merito_data: 获取指定股票的主营业务信息

  6. get_stock_news: 获取指定股票的新闻资讯

  7. get_finance_news: 获取财经精选新闻(支持分页)

项目特点

  1. 模块化设计:采用清晰的分层架构,便于维护和扩展

  2. 统一异常处理:使用自定义异常体系,提供友好的错误提示

  3. 配置集中管理:使用 pydantic-settings 进行配置管理

  4. 类型提示:全面使用 Python 类型注解,提高代码可读性

  5. 数据验证:使用 Pydantic 模型进行数据验证和序列化

开发规范

  1. 使用 ruff 进行代码格式化和 lint

  2. 遵循 PEP 8 编码规范

  3. 保持完整的类型注解

  4. 编写清晰的文档字符串

错误处理

服务统一返回以下格式的错误信息:

{
    "error": "错误代码",
    "message": "错误描述",
    "details": {
        "额外信息": "值"
    }
}

主要错误代码

  • STOCK_NOT_FOUND: 股票代码不存在

  • INVALID_DATE_FORMAT: 日期格式错误

  • DATA_FETCH_ERROR: 数据获取失败

  • INVALID_PAGINATION: 分页参数错误

  • SYSTEM_ERROR: 系统内部错误

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/tddt/stock_info_mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server