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-сервер без зовнішніх фреймворків
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.