Mopsfin MCP Server
Mopsfin 台股 MCP Server
Публичный, доступный только для чтения, без базы данных MCP-сервер финансовых данных тайваньских компаний. Сервис реализован на Next.js 16 App Router и MCP TypeScript SDK v2, через Stateless Streamable HTTP /api/mcp предоставляет семь инструментов; каждый финансовый запрос напрямую обращается к 公開資訊觀測站-財務比較 E 點通.
Это не официальный MCP-сервер Тайваньской фондовой биржи и не является инвестиционной рекомендацией.
Архитектура
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Не использует базы данных, Redis или устаревший HTTP+SSE transport.
Финансовые данные не кэшируются; только динамический каталог, извлечённый с главной страницы, кэшируется в памяти одного инстанса Vercel на 5 минут.
URL-адреса вышестоящего сервиса полностью фиксированы, параметры инструментов не могут задавать URL, поэтому произвольный proxy/SSRF невозможен.
Таймаут вышестоящего сервиса — 20 секунд; сетевые ошибки, 429, 5xx повторяются только один раз, другие 4xx не повторяются.
Cookies Mopsfin не сохраняются и не пересылаются.
Для отчётов
latestвыполняет поиск до 12 кварталов назад от последнего завершённого квартала и сверяет период ответа, чтобы избежать тихого отката исходного сайта на другие кварталы.Vercel использует Node.js
24.x, Токиоhnd1, 60-секундную длительность функций и Fluid Compute.
Related MCP server: polygon-mcp
Инструменты MCP
Инструмент | Назначение |
| Поиск кодов и названий компаний |
| Мгновенный список показателей, семейств endpoint, отраслей, финансовых учреждений и периодов |
| Финансовые тренды, коэффициенты, YOY и показатели денежного потока обычных компаний |
| Баланс, отчёт о совокупной прибыли, отчёт о движении денежных средств |
| Пять категорий примечаний к финансовой отчётности |
| Отраслевая статистика и отраслевые тренды, поддержка выручки / чистой прибыли |
| Качество активов и достаточность капитала финансового сектора, можно добавить отраслевое среднее и простое среднее по выбранным учреждениям |
Каждый инструмент имеет строгую схему ввода/вывода Zod, возвращает краткую сводку content и полный structuredContent. Аннотации инструментов помечены как read-only, неразрушающие, идемпотентные, без побочных эффектов в открытом мире.
LLM может получать интерпретационные данные с трёх уровней: server instructions в MCP initialize описывают общий охват данных и порядок вызовов; tools/list предоставляет назначение и методологию для семи инструментов и каждого поля ввода/вывода; officialGuidance в list_catalog и guidance каждого показателя предоставляют формулы, числовую базу, применимые отрасли и предостережения. warnings в фактических результатах запросов дополнительно содержат предупреждения о частоте подачи отчётности, квартальных/накопительных данных, пропущенных значениях, средних значениях или пагинации, непосредственно связанные с текущим запросом.
Если код неизвестен, сначала вызовите find_companies или list_catalog. Соответствие family в list_catalog:
family | Используемый инструмент |
|
|
|
|
|
|
|
|
|
|
Тренды по умолчанию возвращают последние 12 кварталов, можно использовать start_period, end_period или history: "all". Большие HTML-таблицы разбиваются на страницы с помощью offset, limit, по умолчанию 100 строк, максимум 500 строк. Формат периода — YYYYQn.
Для показателей компаний можно добавить отраслевое среднее и простое среднее по выбранным компаниям с помощью include_industry_average, include_company_average; для показателей финансовых учреждений — с помощью include_industry_average, include_institution_average добавить среднее по соответствующему финансовому сектору и простое среднее по выбранным учреждениям. Эти средние значения рассчитываются Mopsfin и не являются средневзвешенными по рыночной капитализации.
При ответе на вопросы о данных следует сохранять как минимум unit, фактические periods/period, basis запроса и warnings. null, NO_DATA или отсутствие какого-либо квартала может означать неприменимость, ещё не поданную отчётность или отсутствие требования к подаче на данном рынке; их нельзя переписывать в 0.
Локальная разработка
Требования: Node.js 24, npm 11.
npm install
npm run devСервис:
Главная страница:
http://localhost:3000/MCP:
http://localhost:3000/api/mcpПроверка работоспособности:
http://localhost:3000/api/health
Проверка работоспособности не обращается к Mopsfin, чтобы трафик мониторинга не превращался в постоянные запросы к исходному сайту.
Можно использовать официальный MCP Inspector или встроенный клиент для проверки:
npm run test:client
# 或指定 Preview URL
npm run test:client -- https://your-preview.vercel.app/api/mcpПример настройки MCP-клиента:
{
"mcpServers": {
"mopsfin": {
"url": "https://your-domain.example/api/mcp"
}
}
}Использование в ChatGPT
ChatGPT требует публично доступный HTTPS URL /api/mcp; локальный localhost нельзя напрямую передавать удалённому ChatGPT.
Сначала разверните на Vercel и получите
https://<ваш-домен>/api/mcp.В ChatGPT включите Settings → Security and login → Developer mode.
Перейдите в ChatGPT Plugins, нажмите «плюс», чтобы добавить подключение.
Введите имя, например
Mopsfin 台股, и установите Connection URL на полныйhttps://<ваш-домен>/api/mcp.После создания убедитесь, что ChatGPT распознаёт семь инструментов.
Начните новый диалог, добавьте это MCP-подключение из меню инструментов и задавайте вопросы о тайваньском фондовом рынке на естественном языке.
Доступность Developer mode зависит от тарифного плана аккаунта и политики workspace. Подробный процесс см. в официальной инструкции OpenAI по подключению.
Примеры вопросов:
«Покажи выручку TSMC за последние 12 кварталов, оформи в таблицу и укажи тренд.»
«Сравни ROE TSMC и MediaTek за последние 8 кварталов.»
«Перечисли основные статьи баланса TSMC за 2025Q4.»
«Сравни тренд выручки полупроводниковой отрасли за последние 12 кварталов.»
«Найди последний доступный коэффициент достаточности капитала банковского сектора для Банка Тайваня.»
Проверка
npm run lint
npm run type-check
npm test
npm run buildОбычные тесты используют только фиксированные fixtures и охватывают 53 категории compareItem, шесть семейств endpoint, пропущенные значения, отрицательные числа, проценты, несколько компаний, объединённые ячейки HTML, пагинацию, timeout, 429, 5xx, ошибочные кварталы и MCP initialize/tools/list/tools/call.
Live contract tests по умолчанию пропущены и обращаются к исходному сайту только при явной настройке:
npm run test:liveНе настраивайте live tests как периодический CI, чтобы не создавать постоянный трафик для Mopsfin.
Развёртывание на Vercel
Импортируйте repository в Vercel.
Build command —
npm run build; Vercel выполнит установку npm согласноpackage-lock.json.В
package.jsonзафиксирован Node.js24.x; вvercel.jsonвключён Fluid Compute.После развёртывания проверьте с помощью
npm run test:client -- https://<preview>/api/mcp.При необходимости настройте правила в Vercel Firewall для публичного трафика; приложение само не создаёт меж-инстансную базу данных rate-limit.
Рекомендуемая проверка Preview: выручка TSMC за последние 12 кварталов, ROE TSMC и MediaTek, баланс за указанный квартал, тренд полупроводниковой отрасли, достаточность капитала Банка Тайваня и примечания к финансовой отчётности TSMC.
Коды ошибок
INVALID_ARGUMENTNOT_FOUNDNO_DATAUPSTREAM_TIMEOUTUPSTREAM_RATE_LIMITEDUPSTREAM_BAD_RESPONSE
Отчётные кварталы различаются по рынку: листинговые и биржевые компании обычно имеют Q1–Q4, компании на Emerging Stock Board и публичные компании могут иметь только Q2/Q4, некоторые компании подают только годовую отчётность. NO_DATA не обязательно означает, что компания не существует.
Источник данных, обновление и условия использования
Единственный источник данных — Mopsfin. Согласно условиям использования сайта, данные сайта обновляются один раз в день и могут отставать от подачи отчётности примерно на один день; сервис не использует тестовые fixtures как официальные данные или fallback.
Перед публичным запуском владелец проекта должен самостоятельно подтвердить разрешения TWSE/Mopsfin на публичное проксирование, распространение и частоту использования. Описание охвата данных и частоты обновления в условиях использования сайта не равнозначно явному разрешению на распространение. Пользователям также следует сверяться с оригинальными отчётами на 公開資訊觀測站 для окончательной проверки.
Основные ссылки
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
- AlicenseCqualityDmaintenanceProvides 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.815MIT
- AlicenseCqualityCmaintenanceEnables 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.713MIT
- AlicenseAqualityCmaintenanceProvides 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.9MIT
- AlicenseAqualityAmaintenanceWraps 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.529MIT
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)
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/victorfu/mopsfin-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server