Skip to main content
Glama
CNQQC

xueqiu

by CNQQC

雪球 MCP Server

Подключает данные 雪球 по котировкам, финансам, капиталу и сообществу к любому клиенту, поддерживающему MCP (Claude Code, Claude Desktop, Cherry Studio и др.).

Охватывает A-акции / гонконгские / американские акции, а также индексы, ETF и конвертируемые облигации. Всего 22 инструмента.

Особенности

  • Вывод, ориентированный на LLM: исходный API Xueqiu возвращает поля и значения вроде ncf_from_oa, 1.7205417189091E11. Этот проект переводит 600+ финансовых полей на китайский язык, пересчитывает суммы в «сотни миллионов / десятки тысяч юаней», транспонирует многоотчётные финансовые данные в Markdown-таблицы «показатель × отчётный период» — модель читает их напрямую, а расход токенов намного ниже, чем у исходного JSON.

  • Поля гонконгских акций проверены: финансовая отчётность Xueqiu для Гонконга использует сильно сокращённые коды вроде tto, plobtx, ploashh. Китайские сопоставления в этом проекте подтверждены обратной проверкой по фактическим данным отчётности Tencent Holdings через бухгалтерские тождества (например, tto - slgcost == gp, ta - tlia == teqy, nocf + ninvcf + nfcgcf == icdccceq), а не угаданы.

  • Форум доступен: интерфейс сообщества на основном домене xueqiu.com блокируется системой контроля рисков; этот проект использует api.xueqiu.com, который применяет приложение Xueqiu, — без входа в систему можно читать обсуждения по акциям, новости и объявления, популярные посты и комментарии. HTML тела постов очищается до простого текста.

  • Без настройки: анонимный токен получается и продлевается автоматически — установил и пользуйся, не нужны ни Cookie, ни регистрация.

  • Синхронизация метрик скринера в реальном времени: список метрик скринера читается напрямую из официального API метаданных Xueqiu; если Xueqiu меняет метрики, этот проект не устаревает.

  • Выдерживает конкурентность на слабых машинах: многоуровневый TTL-кэш + объединение конкурентных запросов + мультиплексирование HTTP/2. В реальной среде повторные запросы быстрее в 15,8 раза, запросов к Xueqiu на 90% меньше, постоянная память около 75 МБ. Подробнее в разделе Производительность и конкурентность.

Related MCP server: AgentSkills MCP

Установка

uv venv --python 3.12 && uv pip install -e .

Чтобы разбор больших JSON (например, 500 свечей K-линии) был ещё в 2~3 раза быстрее, можно добавить orjson:

uv pip install -e ".[fast]"

Подключение к Claude Code

Выполните в каталоге проекта:

claude mcp add xueqiu -- "$(pwd)/.venv/bin/xueqiu-mcp"

Подключение к Claude Desktop / другим клиентам

На macOS можно просто запустить скрипт установки. Он автоматически дождётся полного выхода из Claude (работающий Claude перезапишет файл конфигурацией из памяти), сделает резервную копию исходной конфигурации и добавит/изменит только пункт xueqiu, не трогая остальные ваши MCP:

./install-claude-desktop.sh

При ручной настройке отредактируйте файл конфигурации (для Claude Desktop — ~/Library/Application Support/Claude/claude_desktop_config.json) и замените command на абсолютный путь к .venv/bin/xueqiu-mcp:

{
  "mcpServers": {
    "xueqiu": {
      "command": "/绝对路径/.venv/bin/xueqiu-mcp"
    }
  }
}

Если в пути к проекту есть пробелы или китайские символы, обязательно используйте полную строку абсолютного пути, не разбивайте на args.

Обзор инструментов

Поиск и котировки

Инструмент

Описание

search_stock

Поиск инструмента по названию / пиньиню / коду

get_quote

Котировки в реальном времени, поддержка нескольких инструментов и смешанных рынков за один запрос

get_kline

Исторические K-линии, опционально с PE/PB/PS/капитализацией для каждой свечи

get_minute

Минутные данные за день или за последние 5 дней (автоматическая выборка ~40 точек)

Финансы

Инструмент

Описание

get_financial_statement

Отчёт о прибылях и убытках / баланс / отчёт о движении денежных средств / основные показатели — работает для A-акций, гонконгских и американских акций

get_business_breakdown

Структура выручки: разбивка доходов, затрат и валовой маржи по продуктам и регионам

Данные о компании

Инструмент

Описание

get_company_profile

Профиль компании, фактический контролирующий владелец, число сотрудников, отрасль и тематические сектора

get_shareholders

Динамика числа акционеров, топ-10 свободно обращающихся акционеров, позиции институциональных инвесторов

get_dividends

Дивиденды и бонусные выпуски за прошлые годы, даты экс-дивиденда

Капитал

Инструмент

Описание

get_capital_flow

Ежедневный чистый приток основных средств + структура крупных/средних/мелких ордеров за день

get_margin_trading

Остатки маржинальной торговли и чистые покупки

get_block_trades

Детали крупных внебиржевых сделок (включая брокерские отделения покупателя и продавца)

Рынок и скрининг акций

Инструмент

Описание

screen_stocks

Скринер акций: фильтрация и сортировка по оценке / финансам / рыночным показателям

list_screener_metrics

Все метрики, поддерживаемые скринером (официальные метаданные)

list_industries

Отраслевая классификация Shenwan

get_hot_stocks

Рейтинг популярности Xueqiu

Сообщество

Инструмент

Описание

get_stock_discussions

Обсуждения по конкретной акции, сортировка по популярности или времени

get_stock_news

Лента новостей / корпоративных объявлений по акции

get_hot_posts

Популярные обсуждения на главной Xueqiu

search_posts

Поиск постов по всему сайту

get_post

Полный текст поста + популярные комментарии

get_user_posts

Лента постов конкретного пользователя

Формат кодов

Рынок

Формат

Примеры

A-акции

SH/SZ/BJ + 6 цифр, или просто 6 цифр

SH600519, 600519, 000001

Гонконгские акции

5 цифр, с ведущими нулями

00700, 9988

Американские акции

Буквенный код

AAPL, BRK.B

Можно также передавать китайское название напрямую (например, «贵州茅台») — инструмент сначала выполнит поиск, а затем получит данные.

Примеры использования

Говорите модели напрямую:

  • «Как у 茅台 последние финансовые показатели?»

  • «Помоги отфильтровать A-акции с P/E ниже 20, дивидендной доходностью выше 3% и капитализацией выше 100 млрд юаней»

  • «Посмотри, как на Xueqiu обсуждают 宁德时代»

  • «Сравни валовую маржу и ROE 贵州茅台 и 五粮液 за последние три года»

  • «Есть ли у 腾讯 сегодня какие-нибудь объявления?»

Синтаксис фильтрации скринера:

filters="pettm:0~20,dy_l:3~,mc:100000000000~"

То есть P/E от 0~20, дивидендная доходность выше 3%, капитализация выше 100 млрд. Границы можно оставить пустыми — это означает без ограничений. Имена метрик можно посмотреть через list_screener_metrics, суффикс _l означает последний отчётный период.

Подавляющее большинство функций работает анонимно. Для немногих интерфейсов, требующих авторизации (например, детали профиля пользователя), можно настроить переменную окружения:

export XUEQIU_COOKIE="从浏览器开发者工具复制的完整 Cookie"

В конфигурации MCP это записывается так:

{
  "mcpServers": {
    "xueqiu": {
      "command": "/绝对路径/.venv/bin/xueqiu-mcp",
      "env": { "XUEQIU_COOKIE": "..." }
    }
  }
}

Развёртывание на сервере

По умолчанию запускается через stdio, один процесс обслуживает только одного клиента. Чтобы обслуживать несколько человек и клиентов на одной машине, переключитесь на streamable-http:

XUEQIU_TRANSPORT=streamable-http XUEQIU_HOST=0.0.0.0 XUEQIU_PORT=8000 \
  .venv/bin/xueqiu-mcp

Клиент подключается к http://<地址>:8000/mcp. Этот режим по умолчанию stateless — сервер не хранит сессии для клиентов, память не растёт с числом подключений, и легко масштабироваться горизонтально несколькими репликами.

У API Xueqiu нет официальной открытой платформы. Перед публичным доступом добавьте собственную аутентификацию и ограничение частоты запросов, и не перекладывайте чужой объём запросов на Xueqiu.

Производительность и конкурентность

Все параметры ресурсов можно снизить через переменные окружения для машин с малым объёмом памяти:

Переменная окружения

По умолчанию

Описание

XUEQIU_MAX_CONNECTIONS

32

Верхний предел пула соединений

XUEQIU_MAX_CONCURRENCY

32

Число одновременных запросов к вышестоящему сервису, также служит ограничением для Xueqiu

XUEQIU_CACHE_MB

16

Верхний предел памяти кэша ответов, пересчитан по разобранным объектам — сколько зададите, примерно столько и займёт

XUEQIU_CACHE

1

Установите 0, чтобы отключить кэш

XUEQIU_HTTP2

1

Установите 0, чтобы отключить HTTP/2

XUEQIU_TIMEOUT

15

Тайм-аут одного запроса (секунды)

Кэш разбит по уровням в зависимости от endpoint: котировки — 3 секунды, K-линии — 30 секунд, финансовая отчётность — 1 час, данные о компании — 6 часов, отраслевая классификация и метрики скринера — 24 часа. При конкурентных запросах одних и тех же данных наружу отправляется только один запрос, остальные ждут его результат.

Реальные замеры

Следующие цифры получены в реальной среде (реальные API Xueqiu, в часы торгов A-акциями, всего около 1500 запросов):

Сценарий

Результат

Условия измерения

Задержка холодных вызовов 22 инструментов

Медиана 51,0 мс

3 холодных образца на инструмент, медиана, затем медиана по всем инструментам

После попадания в кэш

Медиана 1,84 мс

9 горячих образцов на инструмент

Собственные накладные расходы проекта

Медиана 4,4 мс

Сквозное время минус время вышестоящего сервиса, включая кодирование/декодирование MCP и форматирование

Повторные запросы (A/B старая/новая версия)

В 15,8 раза быстрее, запросов к вышестоящему сервису -90%

10 последовательных запросов одного инструмента

Конкурентность 32

Ноль ошибок, P50 86 мс

Ступенчатая нагрузка 1→4→8→16→32, всего 193 запроса

Узкое место не в этом проекте: медиана одного запроса к stock.xueqiu.com — 40,4 мс, к api.xueqiu.com (сообщество) — 84,8 мс, а сам проект занимает всего 4,4 мс.

Выигрыш в основном от кэша и объединения запросов, затем — от мультиплексирования HTTP/2 при всплесках на холодных соединениях. Чистая пропускная способность конвейера (с выключенным кэшем) практически не отличается от версии до оптимизации — не рассчитывайте, что она станет быстрее.

tests/bench.py бьёт по локальному mock-серверу (показатели mock, не равны реальным), его назначение — регрессионное тестирование, а не демонстрация производительности:

.venv/bin/python tests/bench.py            # 默认模拟 30ms 网络延迟
MOCK_RTT=0 .venv/bin/python tests/bench.py # 零延迟,放大纯代码开销

Ключевой момент при оценке: смотрите, соответствуют ли число запросов к вышестоящему сервису и пиковая конкурентность ожиданиям. Цифры QPS сильно зависят от накладных расходов планировщика самого mock-сервера; падение QPS при росте конкурентности на локальной петле — артефакт тестовой среды, а не признак проблемы в тестируемом коде.

Для слоя кэша есть ещё один набор регрессионных тестов без сети, покрывающий объединение запросов, распространение отмены, вытеснение LRU и учёт байтов:

.venv/bin/python tests/test_cache.py

Известные ограничения

  • Шлюз конкурентности — не ограничитель частоты. Он ограничивает только «число одновременных запросов в пути», а не число запросов в единицу времени. По измеренным задержкам, 32 конкурентных запроса теоретически позволяют около 700 req/s в сторону Xueqiu. Контролируйте темп на стороне вызова.

  • В реальной среде проверено только до 32 конкурентных запросов, для более высоких значений реальных данных нет.

  • XUEQIU_CACHE_MB — скорее оптимистичная оценка; по факту реальный рост памяти составляет примерно 1.2~1.9 раза от этого значения (выше при сценарии с мелкими записями). Для машин с малым объёмом памяти рекомендуется ставить 8.

Тестирование

.venv/bin/python tests/test_mcp_e2e.py

Этот скрипт подключается к серверу через stdio как настоящий MCP-клиент, перечисляет все инструменты и вызывает каждый по очереди (включая разбор китайских названий, индексы/ETF/конвертируемые облигации и сообщения об ошибках при проверке различных параметров), в конце выводит число пройденных проверок.

Структура проекта

src/xueqiu_mcp/
├── client.py        HTTP 客户端:令牌续期、连接池与 HTTP/2、并发闸门、风控识别
├── cache.py         响应缓存:分级 TTL、LRU 内存上限、并发请求合并
├── symbols.py       代码规范化(600519 → SH600519)
├── resolve.py       代码解析,中文名走搜索兜底
├── fields.py        A 股字段中文映射表
├── fields_intl.py   港股 / 美股字段映射表(经会计恒等式校验)
├── screener.py      选股器指标元数据(读雪球官方接口并缓存)
├── formatting.py    数值单位换算、Markdown 表格、HTML 正文清洗
├── server.py        MCP 工具注册
└── tools/
    ├── quote.py     行情、K 线、分时
    ├── finance.py   财务报表、主营构成
    ├── f10.py       公司资料、股东、分红
    ├── capital.py   资金流、两融、大宗交易
    ├── market.py    选股器、行业、人气榜
    └── social.py    论坛:讨论、公告新闻、热帖、评论

Примечания

  • Все данные получены из публичных API Xueqiu, котировки могут задерживаться, это не является инвестиционной рекомендацией.

  • Проект предназначен только для обучения и исследований. Соблюдайте условия использования Xueqiu, избегайте высокочастотных запросов.

  • API Xueqiu — не официальная открытая платформа; поля и доступность могут меняться в любой момент.

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    B
    quality
    D
    maintenance
    Provides real-time stock information for Chinese A-shares and US stocks using the Xueqiu API. Enables users to fetch comprehensive market data including current price, percentage changes, volume, and other key metrics by stock code.
    3
    3
  • A
    license
    B
    quality
    D
    maintenance
    Provides comprehensive financial research tools including A-share stock analysis, web scraping, entity extraction, and multi-source search capabilities for building intelligent financial research agents.
    4
    24
    Apache 2.0
  • 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
    Not graded
    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.
    4
    MIT

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

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/CNQQC/xueqiu-mcp'

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