Skip to main content
Glama
victorfu

Mopsfin MCP Server

by victorfu

Servidor MCP de acciones de Taiwán de Mopsfin

Servidor MCP de datos financieros de empresas de Taiwán, público, de solo lectura y sin base de datos. El servicio está implementado con Next.js 16 App Router y el MCP TypeScript SDK v2, y expone siete herramientas a través de HTTP Streamable sin estado en /api/mcp; cada consulta financiera accede directamente a Mopsfin - Comparación financiera E点通.

Este no es el servidor MCP oficial de la Bolsa de Valores de Taiwán, ni constituye asesoramiento de inversión.

Arquitectura

LLM / MCP client
       │ Streamable HTTP
       ▼
Next.js /api/mcp on Vercel
       │ 固定 allowlist endpoint、form-urlencoded、無 cookie
       ▼
mopsfin.twse.com.tw
       │
       ├─ JSON → periods + series
       └─ HTML → 展開 rowspan/colspan 的二維 tables
  • No utiliza base de datos, Redis ni el transporte HTTP+SSE obsoleto.

  • Los datos financieros no se almacenan en caché; solo el catálogo dinámico analizado desde la página de inicio se almacena en caché en memoria durante 5 minutos en una única instancia de Vercel.

  • Las URL ascendentes están completamente fijas y los parámetros de las herramientas no pueden proporcionar URL, por lo que no se forma un proxy/SSRF arbitrario.

  • Tiempo de espera ascendente de 20 segundos; los errores de red, 429 y 5xx solo se reintentan una vez, otros 4xx no se reintentan.

  • No se conservan ni reenvían las cookies de Mopsfin.

  • El latest de los informes sondea hasta 12 trimestres hacia atrás desde el último trimestre completado y verifica el período de la respuesta para evitar que el sitio original retroceda silenciosamente a otros trimestres.

  • Vercel utiliza Node.js 24.x, Tokio hnd1, duración de función de 60 segundos y Fluid Compute.

Related MCP server: polygon-mcp

Herramientas MCP

Herramienta

Propósito

find_companies

Buscar códigos y nombres de empresas

list_catalog

Listar en tiempo real indicadores, familias de endpoints, industrias, instituciones financieras y períodos

get_company_metric

Tendencias financieras, ratios, YOY e indicadores de flujo de caja de empresas generales

get_financial_statement

Balance general, estado de resultados integral, estado de flujo de efectivo

get_financial_note

Cinco tipos de notas a los estados financieros

get_industry_data

Estadísticas y tendencias de la industria, con soporte para ingresos/utilidad neta después de impuestos

get_financial_institution_metric

Calidad de activos y ratio de adecuación de capital del sector financiero, con opción de incluir promedio de la industria y promedio simple de las instituciones seleccionadas

Cada herramienta tiene un esquema estricto de input/output Zod, y devuelve un resumen breve de content y un structuredContent completo. Las anotaciones de las herramientas están marcadas como de solo lectura, no destructivas, idempotentes y sin efectos secundarios en el mundo abierto.

El LLM puede obtener datos de interpretación de tres capas: las instrucciones del servidor en initialize de MCP explican el alcance general de los datos y el orden de llamada; tools/list proporciona el propósito y la definición de las siete herramientas y de cada campo de input/output; officialGuidance de list_catalog y guidance de cada métrica proporcionan fórmulas, base numérica, sectores aplicables y precauciones. Los warnings de los resultados de consulta reales incluyen además advertencias directamente relacionadas con la consulta actual sobre frecuencia de presentación, trimestre único/acumulado, valores faltantes, promedios o paginación.

Cuando no se conozca el código, llame primero a find_companies o list_catalog. La correspondencia de family de list_catalog es la siguiente:

family

Herramienta a utilizar

data

get_company_metric

report

get_financial_statement

bcode

get_industry_data

xb

get_financial_note

fin, adequacy

get_financial_institution_metric

La tendencia devuelve por defecto los últimos 12 trimestres, y se puede usar start_period, end_period o history: "all". Las tablas HTML grandes se paginan con offset, limit, con 100 filas por defecto y un máximo de 500 filas. El formato de período es YYYYQn.

Los indicadores de empresas pueden incluir el promedio de la industria y el promedio simple de las empresas seleccionadas con include_industry_average e include_company_average; los indicadores de instituciones financieras pueden incluir el promedio del sector financiero correspondiente y el promedio simple de las instituciones seleccionadas con include_industry_average e include_institution_average. Estos promedios son calculados por Mopsfin, no ponderados por capitalización de mercado.

Al responder preguntas sobre datos, se debe conservar al menos unit, los periods/period reales, la basis de la consulta y los warnings. null, NO_DATA o la ausencia de un trimestre pueden indicar que no es aplicable, que aún no se ha presentado o que ese mercado no requiere presentación, y no se pueden reescribir como 0.

Desarrollo local

Requisitos: Node.js 24, npm 11.

npm install
npm run dev

Servicio:

  • Página de inicio: http://localhost:3000/

  • MCP: http://localhost:3000/api/mcp

  • Verificación de salud: http://localhost:3000/api/health

La verificación de salud no llama a Mopsfin, para evitar que el tráfico de monitoreo se convierta en consultas fijas al sitio original.

Se puede verificar con el MCP Inspector oficial o con el cliente incluido:

npm run test:client
# 或指定 Preview URL
npm run test:client -- https://your-preview.vercel.app/api/mcp

Ejemplo de configuración del cliente MCP:

{
  "mcpServers": {
    "mopsfin": {
      "url": "https://your-domain.example/api/mcp"
    }
  }
}

Uso en ChatGPT

ChatGPT requiere una URL pública HTTPS /api/mcp accesible; el localhost local no se puede entregar directamente a ChatGPT remoto.

  1. Despliegue primero en Vercel y obtenga https://<su-dominio>/api/mcp.

  2. En ChatGPT, active Settings → Security and login → Developer mode.

  3. Vaya a ChatGPT Plugins y presione el signo más para agregar una conexión.

  4. Ingrese un nombre, por ejemplo Mopsfin 台股, y establezca la URL de conexión como la completa https://<su-dominio>/api/mcp.

  5. Después de crearla, confirme que ChatGPT puede reconocer las siete herramientas.

  6. Inicie una nueva conversación, agregue esta conexión MCP desde el menú de herramientas y luego pregunte directamente en lenguaje natural sobre acciones de Taiwán.

La disponibilidad del modo desarrollador depende del plan de la cuenta y de la política del workspace. El proceso detallado se encuentra en la documentación oficial de conexión de OpenAI.

Preguntas de ejemplo:

  • «Consulta los ingresos operativos de TSMC de los últimos 12 trimestres, organízalos en una tabla y señala la tendencia».

  • «Compara el ROE de TSMC y MediaTek de los últimos 8 trimestres».

  • «Enumera los principales elementos del balance general de TSMC del 2025Q4».

  • «Compara la tendencia de ingresos de la industria de semiconductores de los últimos 12 trimestres».

  • «Consulta el ratio de adecuación de capital bancario más reciente disponible de Bank of Taiwan».

Verificación

npm run lint
npm run type-check
npm test
npm run build

Las pruebas generales solo utilizan fixtures fijos, que cubren 53 categorías de compareItem, seis familias de endpoints, valores faltantes, negativos, porcentajes, múltiples empresas, celdas combinadas de HTML, paginación, timeout, 429, 5xx, trimestres erróneos e initialize/tools/list/tools/call de MCP.

Las pruebas de contrato en vivo están desactivadas por defecto y solo consultan el sitio original cuando se configuran explícitamente:

npm run test:live

No configure las pruebas en vivo como CI programado, para no generar tráfico fijo a Mopsfin.

Despliegue en Vercel

  1. Importe el repositorio en Vercel.

  2. Use npm run build como comando de compilación; Vercel ejecutará la instalación de npm según package-lock.json.

  3. package.json ya fija Node.js 24.x; vercel.json ya tiene habilitado Fluid Compute.

  4. Después del despliegue, verifique con npm run test:client -- https://<preview>/api/mcp.

  5. Según el tráfico público, configure reglas apropiadas en Vercel Firewall; la aplicación en sí no crea una base de datos de limitación de tasa entre instancias.

Verificación sugerida en Preview: ingresos de TSMC de los últimos 12 trimestres, ROE de TSMC y MediaTek, balance general de un trimestre específico, tendencia de la industria de semiconductores, ratio de adecuación de capital de Bank of Taiwan y notas a los estados financieros de TSMC.

Códigos de error

  • INVALID_ARGUMENT

  • NOT_FOUND

  • NO_DATA

  • UPSTREAM_TIMEOUT

  • UPSTREAM_RATE_LIMITED

  • UPSTREAM_BAD_RESPONSE

Los trimestres de presentación difieren según el mercado: las empresas listadas en bolsa/OTC generalmente tienen Q1–Q4, las empresas emergentes y las de oferta pública pueden tener solo Q2/Q4, y algunas empresas solo presentan anualmente. NO_DATA no implica necesariamente que la empresa no exista.

Fuente de datos, actualización y condiciones de uso

La única fuente de datos es Mopsfin. Según sus instrucciones de uso del sitio web, los datos del sitio se actualizan una vez al día y pueden estar aproximadamente un día por detrás de la presentación; este servicio no utiliza fixtures de prueba como datos oficiales ni como respaldo.

Antes de la puesta en producción pública, el propietario del proyecto debe confirmar por sí mismo la autorización de TWSE/Mopsfin para el proxy público, la redistribución y la frecuencia de uso. La descripción del alcance de los datos y la frecuencia de actualización en las instrucciones de uso del sitio web no equivale a una concesión explícita de derechos de redistribución. Los usuarios también deben verificar finalmente con las presentaciones originales del sitio de información pública de la bolsa.

Referencias principales

F
license - not found
Not graded
quality - not tested
B
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

  • A
    license
    C
    quality
    D
    maintenance
    Provides comprehensive Taiwan stock market data and analysis through MCP tools. Enables querying real-time stock prices, historical data, company information, technical analysis, and market overviews for TWSE and TPEx listed companies.
    8
    15
    MIT
  • A
    license
    C
    quality
    C
    maintenance
    Enables querying real-time and historical financial market data for stocks, options, forex, and crypto, including quotes, trades, technical indicators, and reference data through a set of MCP tools.
    71
    3
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Provides Korean stock market data, including DART electronic disclosures and KRX trading information, enabling users to query company profiles, financial statements, and stock trade details via MCP clients.
    9
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Wraps Taiwan Stock Exchange OpenAPI into MCP tools for searching datasets, fetching stock data, and obtaining ETF snapshots, enabling AI models to access TWSE market information.
    5
    29
    MIT

View all related MCP servers

Related MCP Connectors

  • Taiwan Stock Exchange (TWSE) open data as MCP tools: stock quotes, ETF data, 140+ public datasets.

  • SEC MCP — SEC EDGAR public APIs (free, no auth)

  • Remote MCP for Japan's EDINET DB — 3,800 listed companies' financials & filings (OAuth)

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/victorfu/mopsfin-mcp'

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