jiuyan-mcp
jiuyan-mcp
MCP-сервер для получения данных с Цзюяньгуншэ (jiuyangongshe.com).
Приоритет — без входа получать публичные фирменные данные (лента событий, горячие списки, поиск, полный текст статей, разделы сообщества); «Аномалии» и «Лента подписок» — данные, доступные только после входа на сайт, работают после настройки cookie SESSION из веб-версии.
Только для личного обучения и исследований. Уважайте условия обслуживания сайта, не используйте для высокочастотного сбора данных или в коммерческих целях. Этот репозиторий не имеет отношения к официальному Цзюяньгуншэ.
Обзор инструментов
Инструмент | Описание | Вход |
| Лента событий: поток событий, сгруппированный по датам (заголовок/рейтинг/тема/связанные статьи) | нет |
| Горячие списки: рейтинг горячих ключевых слов + рейтинг популярных статей | нет |
| Поиск обсуждений/статей по ключевым словам (сортировка по популярности или времени) | нет |
| Полный HTML-текст статьи и метаинформация по article_id | нет |
| Список разделов сообщества (Исследования/Площадь/Жизнь × сортировка: новые/популярные/аномалии) | нет |
| Список полей сектора за день аномалий (action_field_id) | да |
| Детали аномалий по акциям в секторе аномалий (причины лимита вверх и т. д.) | да |
| Лента подписок: последние сообщения людей, на которых вы подписаны | да |
Related MCP server: A-Stock MCP Server
Быстрый старт
git clone <repo-url> && cd jiuyan-mcp
npm installЗарегистрируйте в конфигурации вашего MCP-клиента (например, ~/.omp/agent/mcp.json):
{
"mcpServers": {
"jiuyan": {
"type": "stdio",
"command": "node",
"args": ["/绝对路径/jiuyan-mcp/src/index.js"],
"env": {
"JIYAN_SESSION": "<可选:网页 SESSION cookie 值>"
}
}
}
}Получение cookie для входа (JIYAN_SESSION)
Войдите в браузере на www.jiuyangongshe.com;
F12 → Application/Хранилище → Cookies →
https://www.jiuyangongshe.com;Скопируйте значение с именем
SESSIONи вставьте вJIYAN_SESSION;Перезапустите MCP-клиент. Если не настроено, анонимные инструменты работают как обычно, а инструменты входа возвращают понятное сообщение.
Механизм подписи (почему для работы нужен этот сервер)
Веб-API Цзюяньгуншэ (web-api.jiuyangongshe.com/jystock-app) требует заголовки token + timestamp
для каждого запроса. Сырьё для подписи встроено в SSR-страницу ({digest, project, serverTime} из обфусцированного ключа в window.__NUXT__),
алгоритм вывода спрятан в обфусцированном VM-модуле Nuxt. Этот проект в песочнице node:vm собирает таблицу модулей webpack и
инициализирует этот модуль, напрямую вызывая его функцию подписи для генерации заголовков каждого запроса — браузер не нужен.
Продуманная устойчивость:
Имя ключа digest и имя функции подписи — результат обфускации: digest извлекается свободным регулярным выражением, функция подписи автоматически обнаруживается по «форме вывода» — смена имён при релизах сайта тоже адаптируется;
Окно времени подписи <10 минут, при истечении token (errCode=110) автоматически перезагружает страницу, пересоздаёт песочницу и повторяет попытку;
Файлы chunk кэшируются в системной временной папке (7 дней), чтобы не скачивать повторно ~1.6MB статических ресурсов;
Принудительный интервал ≥1s между соседними запросами к вышестоящему серверу — вежливое ограничение скорости.
Известные ограничения
Весь набор «Аномалий» и лента подписок на практике требуют входа (errCode=1), анонимно обойти нельзя;
В открытых проектах не найден веб-эндпоинт «получить историю сообщений указанного пользователя по user_id»; сообщения людей, на которых вы подписаны, сейчас получаются через ленту подписок (
/api/v2/article/newest/list);У старого домена APP
app.jiuyangongshe.comесть шлюз версий (errCode=9), этот проект его не использует;Крупное обновление фронтенда сайта может изменить id модуля подписи — тогда потребуется обновить
KNOWN_MODULE_IDS.
Структура
src/
signer.js # SSR digest 抓取 + vm 沙箱签名函数发现与调用
api.js # HTTP 客户端:鉴权头、限速、errCode 映射、110 自动重试
tools.js # 8 个 MCP 工具定义与入参 schema
index.js # stdio MCP 服务器入口License
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Weibo posts, hot search, comments and profiles to JSON. No login or cookies needed.
Provide access to Chinese stock market data including historical prices, real-time data, news, and…
China A-share market data over MCP: 22 tools for quotes, K-line, financials, money flow, top-trader boards, sectors, macro, convertible bonds and factor screening. Five tools need no API key, so you can connect and try it immediately.
Access real-time and historical market data for China A-shares and Hong Kong stocks, along with ne…
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables real-time stock market analysis through AKShare API integration. Supports retrieving live stock prices, historical data, technical indicators (MA, MACD, RSI), market sentiment analysis, stock search, and financial news.5-
- AlicenseNot gradedqualityDmaintenanceProvides free Chinese A-share stock data including real-time quotes, historical K-lines, market scanning, and multi-factor stock screening via BaoStock and Sina Finance APIs.MIT
- FlicenseAqualityDmaintenanceEnables searching notes, retrieving note content and comments, and posting comments on Xiaohongshu (Little Red Book) via HTTP API without using Playwright.6-
- FlicenseNot gradedqualityCmaintenanceEnables local scraping and interaction with Douyin (TikTok China) content, including videos, user data, comments, live streams, and private messages, using personal account cookies without official APIs.1-