garmonia-crm-mcp

garmonia-crm-mcp

Enables testing and interacting with the Garmonia hotel CRM through its internal API, including orders, clients, brands, calendar, and general CRUD operations via an authenticated session.

Category
Visit Server

README

garmonia-crm-mcp

MCP-сервер для тестирования CRM «Гармония отеля» через её внутренний API. Логинится по паролю (сессионная cookie), даёт инструменты для заказов, клиентов, брендов, календаря и универсальный доступ ко всему остальному CRUD.

Быстрая установка (одна команда, без клонирования)

Нужен только Node 18+. Ставить и клонировать репозиторий не надо — npx запустит сервер прямо из GitHub.

  1. Создай локальный файл с кредами, например ~/garmonia-crm.json:

    {
      "baseUrl": "https://адрес-crm",
      "login": "твой-логин",
      "password": "твой-пароль"
    }
    
  2. Добавь MCP одной командой (подставь свой путь к файлу):

    claude mcp add garmonia-crm \
      -e CRM_CONFIG="$HOME/garmonia-crm.json" \
      -- npx -y github:AlekseiKastsiuk/garmonia-crm-mcp
    
  3. Перезапусти Claude Code.

Креды лежат только в твоём локальном файле и никуда не отправляются — npx тянет с GitHub лишь код сервера.

Установка из исходников (альтернатива)

git clone https://github.com/AlekseiKastsiuk/garmonia-crm-mcp
cd garmonia-crm-mcp
npm install
cp crm-config.example.json crm-config.json
# открой crm-config.json и впиши baseUrl, логин и пароль своей CRM

crm-config.json — это адрес CRM и логин/пароль, в git его не коммить (он уже в .gitignore).

Подключение к Claude Code

В ~/.claude.json (или через claude mcp add) добавить сервер:

{
  "mcpServers": {
    "garmonia-crm": {
      "command": "node",
      "args": ["/полный/путь/к/garmonia-crm-mcp/server.mjs"]
    }
  }
}

Если конфиг лежит не рядом с сервером — указать путь в env:

"env": { "CRM_CONFIG": "/полный/путь/к/crm-config.json" }

После правки — перезапустить Claude Code.

Инструменты

Инструмент Что делает
crm_login Принудительный перелогин
crm_orders_list Доска заказов (scope: all / free / mine)
crm_order_create Создать заказ/лид (name, phone)
crm_order_claim Взять заказ в работу
crm_order_set_status Сменить статус (new/in_work/shipped/done/cancelled)
crm_order_delete Удалить заказ навсегда (по умолчанию сначала в cancelled)
crm_orders_delete Массово удалить заказы по списку id
crm_clients_search Поиск клиентов
crm_client_delete Удалить клиента
crm_brands_list / crm_brand_create / crm_brand_delete Бренды
crm_staff_list Сотрудники
crm_calendar_list Календарь (задачи/звонки)
crm_request Прямой запрос к любому /api/... (товары, категории, cold-база и т.д.)

Безопасность

  • Пароль и адрес CRM держатся в crm-config.json, который в .gitignore — в репозиторий не попадает.
  • В crm-config.example.json только плейсхолдеры, без реальных данных.
  • Перед первым пушем стоит проверить: git ls-files не должен содержать crm-config.json, а git grep -i password — только имя поля в коде.

Примечания

  • Заказы создаются публичным эндпоинтом POST /api/form-lead — авторизация не нужна.
  • Удаление заказа — это не REST, а Next.js server action (та же кнопка «Удалить» на вкладке закрытых). crm_order_delete дёргает её сам. id экшена привязан к сборке фронта; если после деплоя CRM удаление отвалится — обнови bulkDeleteActionId в crm-config.json (искать в JS-бандле по bulkDelete).
  • Товары/категории отдают листинги через серверный рендер, а не через GET API — для их создания/правки/удаления пользуйся crm_request (POST/PATCH/DELETE).

Recommended Servers

playwright-mcp

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.

Official
Featured
TypeScript
Magic Component Platform (MCP)

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.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

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.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

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.

Official
Featured
TypeScript
Kagi MCP Server

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.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

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.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured