Sign inSign up

gromy/ms-mcp

By gromy

Updated 3 days ago

R7 - MailServer PRO by Maintainer

Image
0

853

gromy/ms-mcp repository overview

ms-mcp

Mail Admin MCP — HTTP-сервис Model Context Protocol для Р7-Почтовый сервер.

Предоставляет MCP endpoint /mcp для интеграции AI-клиентов с админ-панелью почтового сервера. При старте генерирует конфигурацию из переменных окружения (Jinja2), регистрирует экземпляр в кластере и подключается к PostgreSQL.

  • Базовый образ: Debian Bookworm
  • HTTP: порт 5110
  • MCP endpoint: /mcp
  • Health check: GET /health
  • Конфигурация: /opt/r7-mailserver/mcpserver/appsettings.json

Быстрый старт

docker run -d \
  --name ms-mcp \
  --hostname ms-mcp \
  -p 5110:5110 \
  -e MS_MCP_DB_HOST=ms-psql \
  -e MS_MCP_DB_PWD=secret \
  -v ms-mcp-logs:/var/log/r7-office/Mail.Admin.Mcp.Host \
  gromy/ms-mcp:latest

Минимально необходимо указать параметры подключения к PostgreSQL.

docker run --env-file .env --name ms-mcp \
  -p 5110:5110 \
  -v ms-mcp-logs:/var/log/r7-office/Mail.Admin.Mcp.Host \
  gromy/ms-mcp:latest

Порты

ПортПротоколОписание
5110TCPHTTP (MCP /mcp, health /health)

Порт задаётся переменной MS_MCP_HTTP_PORT (по умолчанию 5110).


Тома

Путь в контейнереОписание
/var/log/r7-office/Mail.Admin.Mcp.HostФайлы логов NLog (MS_MCP_LOG_STORAGE)

Рекомендуется монтировать том или bind-mount для сохранения логов между перезапусками.


Переменные окружения

PostgreSQL
ПеременнаяПо умолчаниюОписание
MS_MCP_DB_HOSTms-psqlХост PostgreSQL
MS_MCP_DB_PORT5432Порт PostgreSQL
MS_MCP_DB_NAMEr7mailserverИмя базы данных
MS_MCP_DB_USERr7mailuserПользователь БД
MS_MCP_DB_PWDsaSA123$Пароль пользователя БД
Экземпляр службы
ПеременнаяПо умолчаниюОписание
MS_MCP_INSTANCE_GUID(авто)GUID экземпляра; если пусто — генерируется при старте
MS_MCP_INSTANCE_NAMEmail-admin-mcpИмя экземпляра в кластере
MS_MCP_INSTANCE_ROLEMailAdminMcpРоль экземпляра
HTTP-сервер
ПеременнаяПо умолчаниюОписание
MS_MCP_HTTP_LISTEN0.0.0.0IP-адрес прослушивания HTTP-сервера
MS_MCP_HTTP_PORT5110TCP-порт HTTP-сервера
MS_MCP_HTTP_ALLOWHOSTS*Разрешённые значения заголовка Host

Адрес сервиса в appsettings.json формируется как http://<MS_MCP_HTTP_LISTEN>:<MS_MCP_HTTP_PORT>.

Логирование
ПеременнаяПо умолчаниюОписание
MS_MCP_LOG_STORAGE/var/log/r7-office/Mail.Admin.Mcp.HostКаталог файлов логов
MS_MCP_LOG_FILEmcp-${shortdate}.logШаблон имени файла (NLog)
MS_MCP_LOG_FORMAT(см. Dockerfile)Формат строки лога
MS_MCP_LOG_LEVELDebugУровень логирования
MS_MCP_LOG_MAXFILES30Число архивных файлов
MS_MCP_LOG_FILESIZE10485760Порог ротации, байт
MS_MCP_LOG_MAXDAYS14Срок хранения архивов, дней

MCP-клиент

{
  "mcpServers": {
    "r7-mail-admin": {
      "url": "http://127.0.0.1:5110/mcp",
      "headers": {
        "X-Mail-Login": "your-login",
        "X-Mail-Password": "your-password"
      }
    }
  }
}

Пример Docker Compose

services:
  ms-mcp:
    image: gromy/ms-mcp:latest
    hostname: ms-mcp
    env_file: .env
    ports:
      - "5110:5110"
    volumes:
      - mcp-logs:/var/log/r7-office/Mail.Admin.Mcp.Host
    depends_on:
      ms-psql:
        condition: service_healthy

volumes:
  mcp-logs:

Связанные образы

ОбразНазначение
ms-psqlPostgreSQL + схема БД
ms-apiREST API админ-панели
ms-frontendВеб-панель (прокси /mcp)

Ссылки

  • GitLab — ms-mcp
  • Документация переменных окружения: README.md в репозитории

Tag summary

Content type

Image

Digest

sha256:dde77e625

Size

199.9 MB

Last updated

3 days ago

docker pull gromy/ms-mcp