jiuyan-mcp
jiuyan-mcp
Servidor MCP de obtención de datos de Jiuyan Gongshe (jiuyangongshe.com).
Prioriza la obtención de datos públicos destacados sin inicio de sesión (línea de tiempo, ranking, búsqueda, texto completo de artículos, secciones de la comunidad); «Movimientos anómalos» y «Flujo de seguidos» son datos que requieren inicio de sesión en el sitio, y se pueden usar configurando la cookie SESSION de la página web.
Solo para aprendizaje e investigación personal. Respeta los términos de servicio del sitio; no hagas scraping de alta frecuencia ni uso comercial. Este repositorio no tiene ninguna relación con Jiuyan Gongshe.
Resumen de herramientas
Herramienta | Descripción | Inicio de sesión |
| Línea de tiempo: flujo de eventos agrupados por fecha (título/calificación/tema/artículos relacionados) | No |
| Ranking: ranking de palabras clave de búsqueda + ranking de artículos populares | No |
| Búsqueda de hilos/artículos por palabra clave (ordenados por popularidad o fecha) | No |
| Obtiene el HTML completo y los metadatos del artículo según article_id | No |
| Lista de secciones de la comunidad (Investigación/Plaza/Zona de vida × orden por más reciente/popular/anomalía) | No |
| Lista de campos de sector del día de movimientos anómalos (action_field_id) | Sí |
| Detalle de movimientos anómalos de acciones individuales bajo un sector (motivos de límite diario, etc.) | Sí |
| Flujo de seguidos: últimas publicaciones de las personas que sigues | Sí |
Related MCP server: Real-time Stock MCP Service
Inicio rápido
git clone <repo-url> && cd jiuyan-mcp
npm installRegístralo en la configuración de tu cliente MCP (por ejemplo, ~/.omp/agent/mcp.json):
{
"mcpServers": {
"jiuyan": {
"type": "stdio",
"command": "node",
"args": ["/绝对路径/jiuyan-mcp/src/index.js"],
"env": {
"JIYAN_SESSION": "<可选:网页 SESSION cookie 值>"
}
}
}
}Obtención de la cookie de inicio de sesión (JIYAN_SESSION)
Inicia sesión en www.jiuyangongshe.com;
F12 → Application/Almacenamiento → Cookies →
https://www.jiuyangongshe.com;Copia el valor de la cookie llamada
SESSIONy colócalo enJIYAN_SESSION;Reinicia el cliente MCP. Si no está configurada, las herramientas anónimas funcionan con normalidad y las herramientas de inicio de sesión devuelven un aviso claro.
Mecanismo de firma (por qué se necesita este servidor para funcionar)
La API web de Jiuyan Gongshe (web-api.jiuyangongshe.com/jystock-app) exige en cada solicitud las cabeceras token + timestamp.
El material para la firma está incrustado en la página SSR (el {digest, project, serverTime} de la clave ofuscada en window.__NUXT__),
y el algoritmo de derivación está oculto en el módulo ofuscado de VM empaquetado por Nuxt. Este proyecto recolecta la tabla de módulos de webpack dentro de un sandbox de node:vm e
inicializa ese módulo, llamando directamente a su función de firma para generar las cabeceras de cada solicitud, sin necesidad de navegador en todo el proceso.
Diseño de robustez:
Tanto el nombre de la clave digest como el de la función de firma son productos de ofuscación: se extrae el digest con una expresión regular flexible, y la función de firma se descubre automáticamente según la «forma de salida», de modo que se adapta incluso si el sitio rota los nombres en cada versión;
La ventana de tiempo de la firma es <10 minutos; cuando el token caduca (errCode=110), se vuelve a capturar la página automáticamente para reconstruir el sandbox y se reintenta una vez;
Los archivos chunk se cachean en el directorio temporal del sistema (7 días), evitando descargar repetidamente ~1,6 MB de recursos estáticos;
Se fuerza un intervalo de ≥1s entre solicitudes adyacentes al servidor, con limitación de velocidad cortés.
Limitaciones conocidas
Toda la familia de «Movimientos anómalos» y el flujo de seguidos requieren estado de inicio de sesión (errCode=1); no se puede eludir de forma anónima;
No se ha encontrado en ningún proyecto público un endpoint web para «obtener el historial de publicaciones de un usuario específico por user_id»; las publicaciones de las personas seguidas se obtienen actualmente a través del flujo de seguidos (
/api/v2/article/newest/list);El antiguo dominio de la APP
app.jiuyangongshe.comtiene control de versión (errCode=9); este proyecto no lo utiliza;Una actualización importante del frontend del sitio puede cambiar el id del módulo de firma; en ese caso será necesario actualizar
KNOWN_MODULE_IDS.
Estructura
src/
signer.js # SSR digest 抓取 + vm 沙箱签名函数发现与调用
api.js # HTTP 客户端:鉴权头、限速、errCode 映射、110 自动重试
tools.js # 8 个 MCP 工具定义与入参 schema
index.js # stdio MCP 服务器入口Licencia
MIT
This server cannot be installed
Maintenance
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
- 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
- AlicenseAqualityCmaintenanceProvides real-time stock market data and analysis from Chinese markets through 34 MCP tools, including K-line charts, technical indicators, fundamental analysis, financial metrics, and market insights without requiring authentication or API tokens.3453MIT
- AlicenseAqualityCmaintenanceEnables 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.56MIT
- AlicenseNot gradedqualityCmaintenanceProvides 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
Related MCP Connectors
Provide access to Chinese stock market data including historical prices, real-time data, news, and…
Access real-time and historical market data for China A-shares and Hong Kong stocks, along with ne…
Access SEC filings, insider transactions, and financial data via the ShareSEER API.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Zessi-C/jiuyan-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server