Блог
MCP

MCP для мониторинга серверов и сайтов

ИИ-агент полезен в диагностике только тогда, когда видит факты: какие серверы online, какие сайты отвечают ошибкой, где высокий TTFB, какие инциденты активны и когда были последние изменения. perfMon MCP даёт такой контекст MCP-совместимым клиентам в read-only режиме и не добавляет удалённое управление инфраструктурой.

MCPИИ-агентClaude Codeмониторинг серверовмониторинг сайтов

Чеклист диагностики

Отметьте пункты, которые уже проверили.

Осталось проверить: 7 из 7.

Зачем мониторингу нужен MCP

Обычный чат с ИИ без доступа к данным может рассуждать только общими словами: проверить nginx, CPU, SSL, DNS и логи. Это полезно как чеклист, но не отвечает на главный вопрос: что именно сейчас происходит с вашим сервером или сайтом.

MCP решает эту проблему как слой контекста. ИИ-агент получает структурированные данные из perfMon: серверы, сайты, последние метрики, uptime-проверки, PageSpeed/CrUX, инциденты и недавние изменения. После этого агент может отделить реальный сбой от отсутствия данных или обычной деградации.

  • не нужно пересказывать агенту состояние кабинета вручную
  • вывод строится на метриках и событиях, а не на догадках
  • один запрос может собрать сервер, сайты и инциденты вместе
  • диагностика становится воспроизводимой для команды

Почему доступ сделан read-only

Для диагностики агенту не нужно менять настройки, создавать проверки или выполнять команды на сервере. Ему достаточно прочитать состояние мониторинга и объяснить, что видно по фактам. Поэтому первая версия perfMon MCP работает только на чтение.

MCP использует JWT пользователя perfMon. Это означает, что подключенный MCP-клиент видит те же серверы и сайты, которые доступны пользователю в кабинете. Если у пользователя нет доступа к серверу, MCP не обходит это ограничение.

  • нет write-tools в первой версии
  • нет выполнения команд на сервере
  • права доступа остаются на стороне backend perfMon
  • токен передаётся через окружение процесса

Какие вопросы можно задавать ИИ-агенту

С MCP агент может отвечать на операционные вопросы: “что сейчас сломано?”, “почему сайт мог тормозить?”, “есть ли активные инциденты?”, “какой сервер выглядит хуже остальных?”, “что произошло за последние сутки?”.

Важно, что агент не должен выдавать симптом за доказанную корневую причину. Если perfMon показывает высокий TTFB и высокую нагрузку CPU, корректный вывод звучит как “есть связь по времени, стоит проверить процессы и backend”, а не как окончательный диагноз без логов приложения.

  • сводка по всем серверам и сайтам
  • отчёт по конкретному серверу
  • отчёт по сайту с HTTP, TTFB, SSL и uptime
  • разбор конкретного инцидента

Как подключить perfMon MCP к MCP-клиенту

MCP запускается как stdio-процесс Node.js. Файл сервера можно скачать с `https://perfmon.ru/mcp/perfmon-mcp.mjs`, сохранить на свою машину и указать этот локальный путь в конфигурации MCP-клиента вместе с базовым URL API и JWT пользователя. Пользователь получает токен после входа в perfMon: на странице MCP есть кнопка копирования готовой env-строки для текущей сессии. Такой сервер можно подключить в Codex, Claude Code и другие клиенты с поддержкой MCP. Для production обычно используется `https://perfmon.ru`, для разработки можно указать локальный backend.

После подключения стоит начать с проверки `perfmon_connection_status`. Если токен не задан или недействителен, MCP вернёт читаемую ошибку. Если авторизация прошла, можно вызывать overview, server report, site report и incident report.

  • файл MCP-сервера скачивается с публичной страницы perfMon
  • PERFMON_API_BASE задаёт backend
  • PERFMON_TOKEN задаёт пользовательский JWT текущей веб-сессии
  • PERFMON_TIMEOUT_MS ограничивает время API-запросов
  • документация доступна на странице MCP

Как читать вывод агента

В отчётах используется короткая шкала: normal, degraded, outage и no_data. Normal означает, что в последних доступных данных нет конкретного признака проблемы. Degraded — есть предупреждения, высокий TTFB или нагрузка. Outage — сервер offline, критичный инцидент, 5xx, timeout, истёкший SSL или домен.

No_data важно не путать с нормой. Если агент пишет, что нет данных по метрикам или проверкам, это отдельный сигнал: нужно проверить, установлен ли агент, приходит ли heartbeat, включена ли проверка сайта и достаточно ли прошло времени после подключения.

  • normal — признаков проблемы не видно
  • degraded — есть ухудшение или риск
  • outage — есть сбой или критичный активный инцидент
  • no_data — данных недостаточно для вывода

Частые вопросы

MCP даёт ИИ-агенту доступ к серверу?

Нет. perfMon MCP читает данные из backend perfMon и не выполняет команды на сервере.

Какие права получает агент?

Те же права, что у пользователя, чей JWT передан в PERFMON_TOKEN. Backend продолжает проверять членство и роли.

Можно ли через MCP менять настройки?

В первой версии нет. MCP содержит только read-only инструменты диагностики.

Что делать, если MCP пишет no_data?

Проверьте, что серверный агент установлен, heartbeat приходит, сайт добавлен в мониторинг и проверки успели накопиться.

Контролируйте сайт автоматически

Проверяйте доступность, TTFB, SSL, серверные метрики и получайте уведомления ответственным.