Skip to main content
Glama
cnstock-mcp

cnstock-mcp

cnstock · 中国股票数据 CLI

一条命令拿到 A 股行情、财报、估值和研报。免 API Key、零配置、多源自动降级。

$ npx cnstock quote 600519
贵州茅台(600519)
  最新价          1453 元
  涨跌幅          +0.07%(+1)
  总市值          18163.69 亿元
  PE(TTM)         21.13
  PB              6.70
  换手率          0.1%
  行业            白酒Ⅱ
  数据源          eastmoney

为什么不用 akshare / tushare

akshare

tushare

cnstock

语言

Python

Python

Node / TypeScript

安装

pip install akshare(依赖重)

pip install tushare

npx cnstock(零安装)

API Key

不需要

需要 token

不需要

接口失效时

直接报错

直接报错

自动切换备用数据源

与 AI 集成

需要自己封装

需要自己封装

内置 MCP server

最关键的差异是第三行。这些公开接口都没有 SLA:开发期间实测过东方财富的行情接口在请求变多后所有分片同时断开连接,而 datacenter、腾讯、新浪仍然正常。只绑一个源的工具会在你不知情时静默失效,所以 cnstock 每次调用都按顺序尝试多个源,并在输出里用 source 字段告诉你这次是谁答的。

Related MCP server: stock-mcp-server

快速开始

# 直接用,不用安装
npx cnstock quote 600519

# 检索股票
npx cnstock search 茅台

# 财报 + TTM 折算
npx cnstock financials 600519

# 估值测算
npx cnstock value 600519 --growth 0.1 --discount 0.12

# 生成完整研报
npx cnstock report 600519 > 茅台研报.md

任何命令加 --json 都输出结构化 JSON,方便管道处理:

npx cnstock quote 600519 --json | jq .price

命令一览

命令

作用

search <关键词>

按代码、名称或拼音首字母检索

quote <代码>

实时行情、市值、PE/PB、行业概念

kline <代码>

前复权日 K 线(--days)

financials <代码>

财报摘要与 TTM 折算(--periods)

value <代码>

估值测算,自动选模型

report <代码>

完整 Markdown 研究简报

作为 MCP 服务使用

cnstock 同时是一个 MCP server,可以直接接进 Claude Desktop、Cursor 等支持 MCP 的客户端:

{
  "mcpServers": {
    "cnstock": {
      "command": "npx",
      "args": ["-y", "cnstock-mcp"]
    }
  }
}

提供的 6 个工具:cnstock_search、cnstock_quote、cnstock_kline、cnstock_financials、cnstock_valuation、cnstock_report。

接上之后就能直接问:

「茅台现在贵吗?按 10% 折现率帮我算一下。」

两个它做得比别家认真的地方

1. TTM 不是随便取一期

A 股财报是累计口径——三季报的净利润是 1 到 9 月的累计值,直接当年度数据用会严重失真。cnstock 按 最新累计 + 上年年报 - 上年同期 折算 TTM,并把计算依据一起输出:

TTM 归母净利    821.61 亿元
TTM 口径        TTM = 2026年 三季报累计 + 2025年报 - 2025年同期

2. 不同生意用不同估值模型

公司类型

模型

原因

一般盈利公司

两阶段 DCF

净利润可近似所有者收益

银行 / 保险 / 证券

PB-ROE

金融企业净利被存款与拨备主导,不等于自由现金流

亏损公司

明确标注不适用

应改用 PS 或重置成本

对银行套 DCF 会算出荒谬的「安全边际」——平安银行用 DCF 会显示低估 69.8%,而正确做法是用 Gordon 增长形式的 合理 PB = (ROE - g) / (r - g)。cnstock 会自动识别并切换。

此外它会反推当前股价隐含的增速:茅台现价隐含 5 年增速约 14.2%,你可以自己判断这个预期是否合理。

项目结构

├── src/
│   ├── cli.ts                # 命令行入口
│   ├── mcp.ts                # MCP server 入口
│   ├── index.ts              # 库导出
│   ├── datasource/
│   │   ├── index.ts          # 多源降级编排
│   │   ├── eastmoney.ts      # 东方财富
│   │   ├── tencent.ts        # 腾讯(备用)
│   │   ├── sina.ts           # 新浪(兜底)
│   │   └── types.ts
│   └── analysis/
│       ├── valuation.ts      # DCF / PB-ROE / TTM
│       └── report.ts         # Markdown 研报
└── scripts/mcp-smoke.mjs     # MCP 协议冒烟测试

数据源

能力

主源

备用

行情 / 估值

东方财富

腾讯 → 新浪

日 K 线

东方财富

腾讯

财报

东方财富 datacenter

—

检索

东方财富 searchapi

—

均为公开接口,无需注册。行业与概念标签只有东方财富提供;降级到备用源时这些字段为空,输出会如实标注。

免责声明

本项目是数据工具,不构成投资建议。数据来自第三方公开接口,可能存在延迟、缺失或口径差异;估值结果对假设高度敏感。据此操作风险自担。

License

MIT © 2026 WilShi

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides real-time quotes, fund flows, and corporate announcements for Chinese A-share stocks. It enables users to search for stocks, analyze financial indicators, and summarize quarterly reports through natural language.
    -
  • A
    license
    A
    quality
    C
    maintenance
    Real-time A-share stock data for AI assistants. Provides real-time stock prices, K-line data, financial indicators, and sector fund flow analysis for Chinese A-share market. Multi-source data validation ensures accuracy.
    7
    4
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables users to query Chinese A-share stock data, including stock basics, historical prices, financial reports, and macroeconomic indicators.
    1
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to query real-time A-share stock data, including quotes, fund flows, sector flows, and K-line history, without needing an API key.
    54
    5
    18
    MIT