Hotline Finance FAQ MCP Server
MCP server for retrieving FAQ and glossary from the hotline.finance insurance service, supporting both stdio and HTTP modes for integration with clients like Cursor, Claude Desktop, and ChatGPT.
README
Hotline Finance FAQ — MCP Server
MCP сервер для отримання FAQ та глосарію зі страхового сервісу hotline.finance.
Підтримує два режими запуску:
- stdio — для Cursor / Claude Desktop
- HTTP — для ChatGPT та інших клієнтів з підтримкою мережевого MCP
Інструменти (Tools)
list_faq_categories
Повертає повний список доступних категорій FAQ з їх slug-назвами (80+ категорій).
Параметрів немає. Slug потрібен для виклику get_faq_questions.
get_faq_questions
Отримує питання та відповіді FAQ для вказаної категорії з hotline.finance.
У ChatGPT відображає інтерактивний UI-віджет з картками питань.
| Параметр | Тип | Опис |
|---|---|---|
category |
string (required) |
Slug категорії (наприклад: автоцивілка, туристичне-страхування, виїзд-за-кордон) |
find_faq ✦ sampling
Приймає довільний текстовий запит українською, автоматично визначає категорію через LLM-класифікацію (createMessage) та повертає відповідні FAQ. Якщо клієнт не підтримує sampling — повертає підказку з доступними категоріями.
Потребує підтримки
samplingз боку клієнта (Cursor, Claude Desktop).
| Параметр | Тип | Опис |
|---|---|---|
query |
string (required) |
Довільний текст (наприклад: «де купити страховку в Харкові», «як оформити каско») |
faq_wizard ✦ elicitation
Інтерактивний майстер без аргументів. Показує форму з 10 найпопулярніших видів страхувань через elicitInput, отримує вибір користувача та повертає відповідні FAQ. Якщо клієнт не підтримує elicitation — повертає список slug для ручного виклику.
Потребує підтримки
elicitationз боку клієнта.
get_glossary_list
Повертає список усіх термінів страхового глосарію (24 терміни) з їх slug та назвами.
Параметрів немає. Slug потрібен для виклику get_glossary_item.
get_glossary_item
Отримує детальний опис терміну страхового глосарію: назву, пояснення та пов'язані питання.
| Параметр | Тип | Опис |
|---|---|---|
slug |
string (required) |
Slug терміну (наприклад: автоцивілка, франшиза, каско) |
Промпти (Prompts)
Промпти — це готові шаблони розмов, доступні як slash-команди в Cursor і Claude Desktop. Аргументи мають автодоповнення при наборі завдяки completable().
faq-search
Шаблон для пошуку FAQ по категорії страхування. Аргумент category автодоповнюється зі списку 80+ slug.
| Аргумент | Тип | Опис |
|---|---|---|
category |
string |
Slug категорії з автодоповненням по CATEGORY_SLUGS |
glossary-explain
Шаблон для пояснення страхового терміну. Аргумент slug автодоповнюється зі списку термінів глосарію.
| Аргумент | Тип | Опис |
|---|---|---|
slug |
string |
Slug терміну з автодоповненням по GLOSSARY_SLUGS |
Ресурси (Resources)
ui://widget/faq.html
HTML-віджет для відображення FAQ-карток в інтерфейсі ChatGPT (ext-apps).
Підключається автоматично при виклику get_faq_questions, find_faq та faq_wizard.
Встановлення та запуск
npm install
Режим розробки (tsx)
npm start
# або з HTTP-портом:
PORT=3333 npm start
Продакшн-збірка (TypeScript → JS)
npm run build # компілює TypeScript у build/
npm run build:start # компілює та запускає
Режим 1 — Cursor / Claude Desktop (stdio)
Додай до конфігу MCP сервера зібраний JS після npm run build:
{
"mcpServers": {
"hotline-faq": {
"command": "node",
"args": [
"c:\\Users\\Denys\\Desktop\\WORK\\MCP_FAQ_Server\\build\\index.js"
]
}
}
}
Cursor: Settings → MCP → Add server
Claude Desktop: %APPDATA%\Claude\claude_desktop_config.json
В Cursor і Claude Desktop будуть доступні:
- Промпти
faq-searchтаglossary-explainяк slash-команди з автодоповненням - Інструмент
find_faqз LLM-класифікацією (через sampling) - Інструмент
faq_wizardз формою вибору (через elicitation)
Режим 2 — ChatGPT / HTTP-клієнти
HTTP-сервер підтримує два протоколи одночасно:
- Streamable HTTP (MCP 2025-06-18) — основний протокол
- Legacy SSE (MCP 2024-11-05) — зворотна сумісність
MCP endpoint: POST /mcp
Локальна розробка з ngrok
# Термінал 1 — запуск сервера
PORT=3333 npm start
# Термінал 2 — публічний тунель
ngrok http 3333
Скопіюй URL з ngrok (наприклад https://abc123.ngrok.app) і в ChatGPT:
- Натисни
+→ Add connector → вставитиhttps://abc123.ngrok.app/mcp
В ChatGPT доступні всі інструменти. Промпти та sampling/elicitation залежать від підтримки клієнта.
Структура проекту
MCP_FAQ_Server/
├── package.json
├── tsconfig.json
├── public/
│ └── faq-widget.html ← HTML-віджет (iframe в ChatGPT)
└── src/
├── index.ts ← Точка входу (вибір транспорту)
├── server.ts ← Створення MCP сервера, реєстрація інструментів
├── config.ts ← Категорії FAQ, терміни глосарію, константи
├── types.ts ← TypeScript типи
├── api/
│ ├── faq.ts ← Запити до hotline.finance/api/faq-questions
│ └── glossary.ts ← Запити до hotline.finance/api/glossary
├── prompts/
│ ├── faq-search.ts ← Промпт faq-search + completable(CATEGORY_SLUGS)
│ └── glossary-explain.ts ← Промпт glossary-explain + completable(GLOSSARY_SLUGS)
├── tools/
│ ├── list-categories.ts ← Інструмент list_faq_categories
│ ├── get-faq-questions.ts ← Інструмент get_faq_questions
│ ├── get-glossary-list.ts ← Інструмент get_glossary_list
│ ├── get-glossary-item.ts ← Інструмент get_glossary_item
│ ├── find-faq.ts ← Інструмент find_faq (createMessage / sampling)
│ └── faq-wizard.ts ← Інструмент faq_wizard (elicitInput / elicitation)
├── resources/
│ └── faq-widget.ts ← Ресурс ui://widget/faq.html
├── transports/
│ ├── http.ts ← HTTP-транспорт (Streamable + SSE)
│ └── stdio.ts ← stdio-транспорт
└── utils/
├── categories.ts ← Пошук категорії за slug
├── glossary.ts ← Пошук терміну за slug
└── html.ts ← Очищення HTML-тегів з відповідей
Категорії FAQ
Повний список доступний через інструмент list_faq_categories.
Деякі з них:
| Slug | Назва |
|---|---|
автоцивілка |
Автоцивілка |
туристичне-страхування |
Туристичне страхування |
каско |
КАСКО |
зелена-картка |
Зелена картка |
страхування-житла |
Страхування житла |
виїзд-за-кордон |
Страховка для виїзду за кордон |
обліковий-запис |
Питання Підтримка з облікового запису |
загальні |
Загальні питання |
мінікаско |
МініКАСКО |
бонуси |
Бонуси |
штрафи |
Штрафи |
реферальна-програма |
Реферальна програма |
Щоб додати нові категорії — оновіть масив
CATEGORIESуsrc/config.ts.
Терміни глосарію
Повний список доступний через інструмент get_glossary_list.
Деякі з них:
| Slug | Назва |
|---|---|
автоцивілка |
Автоцивілка (ОСЦПВ) |
зелена-картка |
Зелена картка |
каско |
КАСКО |
франшиза |
Франшиза |
страховка |
Страховка (страховий поліс, договір страхування) |
страховий-випадок |
Страховий випадок |
страхова-сума |
Страхова сума |
туристичне-страхування |
Туристичне Страхування |
Щоб додати нові терміни — оновіть масив
GLOSSARY_ENTRIESуsrc/config.ts.
Стек
- TypeScript + tsx (dev runner)
- @modelcontextprotocol/sdk — MCP протокол (Tools, Prompts, Resources, sampling, elicitation)
- @modelcontextprotocol/ext-apps — підтримка UI-ресурсів (ChatGPT ext-apps)
- zod + completable() — валідація та автодоповнення аргументів промптів
- Вбудований
node:http— HTTP-сервер без зовнішніх фреймворків
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。