MCP-сервер Statuser

MCP serverCloud & infra

Monitor services, manage incidents and status pages in Statuser.cloud from your AI assistant.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use MCP-сервер Statuser

Install MCP-сервер Statuser

The server’s own address, for the clients that take one directly. Or connect ahel onceand every client you use reads it from one address, with the account kept on ahel rather than in each client’s config.

  • Claude Code

    claude mcp add --transport http mcp-statuser 'https://mcp.statuser.cloud'

    Run it once in your project, then open /mcp to approve any sign-in the server asks for.

  • Claude Desktop

    https://mcp.statuser.cloud

    Add a custom connector in Settings, paste this address, and approve the sign-in.

  • Cursor

    cursor://anysphere.cursor-deeplink/mcp/install?name=mcp-statuser&config=eyJ1cmwiOiJodHRwczovL21jcC5zdGF0dXNlci5jbG91ZCJ9

    Open the link and Cursor adds the server at that address.

  • ChatGPT

    https://mcp.statuser.cloud

    In Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.

  • Codex

    codex mcp add mcp-statuser --url 'https://mcp.statuser.cloud'

    Run it once, then sign in with codex mcp login mcp-statuser if the server asks for an account.

From the project's README

As published by statuser-cloud/mcp in README.md.

MCP-сервер для управления Statuser из ИИ-клиента — Claude Desktop, Claude Code, Cursor, Windsurf, VS Code и любого другого, который поддерживает Model Context Protocol.

С ним ассистент умеет работать с вашим аккаунтом Statuser напрямую: смотреть текущее состояние серверов, разбирать инциденты, публиковать обновления на страницах статуса, настраивать уведомления. Всё это поверх публичного API Statuser с авторизацией по API-ключу.

Что внутри

  • Мониторинг сервисов. Список серверов, их статусы, графики проверок и heartbeat-событий, история изменений DNS, добавление и редактирование серверов, постановка на паузу и тестовые уведомления.
  • Инциденты. Подробная карточка с диагностикой и таймингами по каждой локации, AI-саммари, PDF-отчёт, комментарии с вложениями.
  • Страницы статуса. Создание и настройка, управление группами и серверами, публикация инцидент-отчётов и плановых работ с таймлайном обновлений.
  • Уведомления. Правила нотификаций по типам подписок (email, Telegram, MAX), управление вебхуками, добавление и подтверждение email-каналов.
  • Аккаунт. Профиль, тариф и фичи, режим отпуска, 2FA, привязки Telegram и MAX.

[!NOTE] MCP-сервер обращается к API от имени аккаунта-владельца ключа. Все ограничения тарифа сохраняются — например, AI-саммари и кастомный домен будут доступны только если они включены в вашем плане. Сверяйтесь с инструментом current_plan_get.

Содержание

  • Быстрый старт
  • Установка
  • Настройки
  • Группы инструментов
  • Защита от случайных изменений
  • Инструменты
  • Примеры запросов к ассистенту
  • Что делать при ошибках
  • Совместимость
  • Лицензия

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

  1. Войдите в личный кабинет Statuser и создайте API-ключ.
  2. Добавьте сервер в конфиг вашего MCP-клиента — примеры ниже.
  3. Перезапустите клиент. Инструменты появятся под именем statuser.

Запускается через npx -y @statuser/mcp — глобально устанавливать ничего не нужно, Docker тоже не требуется. Единственный обязательный параметр — переменная окружения STATUSER_API_KEY.

Установка

В один клик

Для клиентов с поддержкой MCP-deeplink установка укладывается в нажатие кнопки. Клиент откроется, попросит API-ключ и сам сохранит конфиг.

Перед установкой создайте API-ключ в личном кабинете Statuser — клиент попросит его в момент установки. Кнопка для Cursor подставит плейсхолдер API_KEY_HERE; замените его на свой ключ в форме, которую откроет Cursor.

Для Claude Desktop, Claude Code, Windsurf, Zed и других клиентов автоустановки пока нет — там нужен ручной конфиг ниже.

Claude Desktop

Откройте Настройки → Developer → Edit Config и добавьте в claude_desktop_config.json:

{
  "mcpServers": {
    "statuser": {
      "command": "npx",
      "args": ["-y", "@statuser/mcp"],
      "env": {
        "STATUSER_API_KEY": "ваш_ключ"
      }
    }
  }
}

После сохранения полностью закройте Claude Desktop (Cmd/Ctrl + Q) и откройте заново — простого закрытия окна недостаточно.

Claude Code

В корне проекта создайте .mcp.json:

{
  "mcpServers": {
    "statuser": {
      "command": "npx",
      "args": ["-y", "@statuser/mcp"],
      "env": {
        "STATUSER_API_KEY": "ваш_ключ"
      }
    }
  }
}

Или одной командой:

claude mcp add statuser --env STATUSER_API_KEY=ваш_ключ -- npx -y @statuser/mcp

Cursor

Самый быстрый путь — кнопка «Установить в Cursor» выше. Если нужно вручную, Настройки → MCP → Add new server:

{
  "mcpServers": {
    "statuser": {
      "command": "npx",
      "args": ["-y", "@statuser/mcp"],
      "env": {
        "STATUSER_API_KEY": "ваш_ключ"
      }
    }
  }
}

VS Code (GitHub Copilot Chat и другие MCP-расширения)

Самый быстрый путь — кнопка «Установить в VS Code» выше. Если нужно вручную, Настройки → MCP servers → Add:

{
  "statuser": {
    "command": "npx",
    "args": ["-y", "@statuser/mcp"],
    "env": {
      "STATUSER_API_KEY": "ваш_ключ"
    }
  }
}

Любой клиент с поддержкой MCP принимает один и тот же формат запуска:

  • command: npx
  • args: ["-y", "@statuser/mcp"]
  • env.STATUSER_API_KEY: ваш ключ

Название поля настройки (mcpServers, mcp.servers, experimental.mcp и т.п.) различается между клиентами — сверяйтесь с их документацией.

Настройки

Все параметры задаются через переменные окружения в блоке env конфига клиента.

ПеременнаяОбязательноПо умолчаниюОписание
STATUSER_API_KEYдаAPI-ключ от statuser.cloud/my/account/api-keys. Без него сервер не запустится.
STATUSER_ALLOW_WRITEнет0Если 1, true или on — инструменты, которые создают, изменяют или удаляют данные, работают без явного подтверждения.
STATUSER_TOOLSETSнетallСписок включённых групп инструментов через запятую. Значение all включает все группы.
STATUSER_API_URLнетhttps://api.statuser.cloudАльтернативный базовый URL. Нужен только если вы проксируете API или работаете со staging-окружением.

Группы инструментов

Более 70 инструментов разбиты на 8 логических групп. По умолчанию включены все, но через STATUSER_TOOLSETS=... можно оставить только нужные.

Зачем это бывает удобно:

  • меньше инструментов в контексте — ассистент точнее выбирает подходящий;
  • меньше токенов в системном промпте клиента;
  • если ключ имеет доступ ко всему API, а вам нужны только серверы — можно показать ассистенту только их.
ГруппаЧто включаетПримеры инструментов
accountПрофиль, тариф, режим отпуска, 2FA, привязки Telegram и MAX, история действийaccount_get, current_plan_get, activity_log_list, holiday_mode_set, telegram_linked_list, max_get_link
projectsПроекты — области внутри аккаунта: свои серверы, страницы статуса и правила уведомленийproject_list, project_create, project_delete, project_channel_list, project_channel_set
monitorsСерверы, их проверки, heartbeat-события, история изменений DNSmonitor_list, monitor_create, monitor_pause, monitor_get_checks, monitor_get_dns_history
incidentsИнциденты, события, AI-саммари, PDF-отчёт, удалениеincident_list, incident_get, incident_get_events, incident_generate_ai_summary, incident_get_report_pdf, incident_delete
incident-commentsКомментарии к инцидентам с вложениямиincident_comment_create, incident_comment_upload_file, incident_comment_delete
status-pagesСтраницы статуса, группы, серверы, домены, slug, подписчикиstatus_page_list, status_page_create, status_page_set_groups, status_page_subscriber_list
status-page-reportsПубликация инцидент-отчётов и плановых работ с таймлайном обновленийstatus_page_incident_report_publish, status_page_maintenance_schedule, ..._update_add
notificationsПравила нотификаций, вебхуки, email-каналыnotification_rule_set, webhook_create, notification_email_add, notification_email_confirm

Примеры значения:

// только серверы и инциденты
"env": { "STATUSER_API_KEY": "...", "STATUSER_TOOLSETS": "monitors,incidents" }

// явно все группы — то же самое, что не задавать переменную
"env": { "STATUSER_API_KEY": "...", "STATUSER_TOOLSETS": "all" }

Если в списке указана неизвестная группа, сервер не запустится и подскажет допустимые значения.

Защита от случайных изменений

API-ключ Statuser даёт полный доступ к аккаунту, поэтому MCP-сервер по умолчанию блокирует все инструменты, которые что-либо создают, изменяют или удаляют. Это защищает от того, чтобы ассистент случайно удалил сервер продакшна или отписал нужного человека от уведомлений.

[!IMPORTANT] Инструменты только для чтения (*_list, *_get, monitor_get_checks, incident_get_report_pdf и подобные) работают всегда без подтверждения.

При попытке вызвать заблокированный инструмент сервер возвращает осмысленную ошибку с двумя способами разрешить вызов:

  1. Разрешить навсегда в конфиге клиента: "STATUSER_ALLOW_WRITE": "1" в блоке env. Подходит, если вы доверяете ассистенту и заранее очертили его область работы через STATUSER_TOOLSETS.
  2. Разрешить разово в самом запросе: передайте ассистенту явное указание добавить аргумент confirm: true к конкретному вызову. Это удобно, когда основная сессия должна оставаться read-only, но один-два изменения всё-таки нужны.

Под защитой находятся в том числе:

  • удаление серверов, страниц статуса, комментариев, отчётов и плановых работ;
  • удаление вебхуков и email-каналов;
  • постановка серверов на паузу и снятие;
  • публикация и скрытие страниц статуса;
  • включение режима отпуска;
  • отправка тестовых уведомлений.

Инструменты дополнительно помечаются MCP-аннотациями destructiveHint и readOnlyHint. Клиенты, которые их читают, добавляют поверх нашего собственный экран подтверждения.

Инструменты

Полный список с описанием параметров MCP-клиент покажет автоматически при подключении. Ниже — обзор по группам. Условные обозначения: ✏️ — инструмент изменяет данные, ⚠️ — действие необратимо.

ИнструментЧто делаетИзменяет данные
account_getПрофиль текущего аккаунта
account_updateИзменить имя, часовой пояс или флаг отображения AI-ассистента✏️
current_plan_getТекущий тариф со всеми возможностями и лимитами
plan_listПубличный каталог тарифов
holiday_mode_getСтатус режима отпуска
holiday_mode_setВключить режим отпуска до указанной даты или выключить✏️
two_factor_infoСведения о текущем втором факторе и доступных методах
telegram_linked_listПривязанные Telegram-аккаунты и чаты
telegram_set_topicПривязать топик в Telegram-группе для уведомлений или снять привязку✏️
max_linked_listПривязанные аккаунты и групповые чаты MAX
max_get_linkПолучить ссылки для привязки MAX — личного чата или групповой
max_unlinkОтвязать MAX-аккаунт✏️
max_set_2fa_accountСменить MAX-аккаунт, на который приходят коды второго фактора✏️
ИнструментЧто делаетИзменяет данные
project_listПроекты аккаунта — с них начинается работа с областями
project_createЗавести проект; лимит зависит от тарифа✏️
project_updateПереименовать проект✏️
project_deleteУдалить проект, перенеся его содержимое в другой✏️ ⚠️
project_reorderЗадать порядок проектов в панели✏️
project_channel_listКаналы аккаунта и их положение в этом проекте
project_channel_setВключить или выключить канал в проекте✏️

Проект — область внутри аккаунта: ему принадлежат серверы, страницы статуса и правила уведомлений о мониторинге. Каналы связи, тариф и API-ключи остаются общими. Вызовы без project_id читают весь аккаунт, а создают в самом старом проекте — так работали интеграции до появления проектов, и это поведение сохранено.

ИнструментЧто делаетИзменяет данные
monitor_listСписок всех серверов аккаунта
monitor_getПолная карточка одного сервера
monitor_createДобавить новый сервер — тип проверки ping, http, keyword, tcp, dns или heartbeat✏️
monitor_updateЧастичное обновление настроек сервера✏️
monitor_pauseПоставить проверки на паузу или возобновить (action: pause или unpause)✏️
monitor_deleteУдалить сервер вместе со всей историей⚠️
monitor_test_notifyОтправить тестовое уведомление по всем настроенным каналам✏️
monitor_get_checksАгрегированные результаты проверок для графиков uptime и latency
monitor_get_heartbeat_eventsСобытия heartbeat для серверов с protocol: heartbeat
monitor_get_dns_historyИстория изменений DNS-записей для серверов с protocol: dns
ИнструментЧто делаетИзменяет данные
incident_listИнциденты по всему аккаунту или по конкретному серверу
incident_getПодробная карточка с диагностикой — скриншот, replay, ping/nmap/mtr/traceroute, тайминги
incident_get_eventsХронологическая лента событий — изменения статуса, уведомления, комментарии, скриншот и сетевая диагностика
incident_get_serverСвязанный с инцидентом сервер одним запросом
incident_generate_ai_summaryСгенерировать или вернуть закэшированное AI-саммари инцидента✏️
incident_rate_ai_summaryПоставить оценку AI-саммари — positive или negative✏️
incident_get_report_pdfСкачать PDF-отчёт по инциденту — возвращается в виде Base64
incident_deleteБезвозвратно удалить закрытый инцидент со всей диагностикой — аптайм пересчитается вверх✏️
ИнструментЧто делаетИзменяет данные
incident_comment_listВсе комментарии к инциденту
incident_comment_createСоздать комментарий с текстом и вложениями — можно передать локальные пути файлов, сервер загрузит их сам✏️
incident_comment_updateОтредактировать текст или список вложений✏️
incident_comment_deleteУдалить комментарий и все его файлы⚠️
incident_comment_upload_fileЗагрузить локальный файл для использования как вложение✏️
ИнструментЧто делаетИзменяет данные
status_page_listВсе страницы статуса аккаунта
status_page_getПолная конфигурация одной страницы
status_page_check_slugПроверка, свободен ли slug
status_page_check_domainПроверка свободного кастомного домена и правильности CNAME-записи
status_page_createСоздать страницу статуса✏️
status_page_updateЧастично обновить настройки✏️
status_page_set_groupsПолностью заменить структуру групп и список серверов на странице✏️
status_page_publishОпубликовать (published) или скрыть (unpublished) страницу✏️
status_page_deleteУдалить страницу⚠️
status_page_subscriber_listПодписчики страницы (емейл, статус, даты) и сводка с лимитом
status_page_subscriber_exportЭкспорт подписчиков в CSV
status_page_subscriber_deleteУдалить подписчика⚠️

Инцидент-отчёты:

Shortened here. Read the whole README on GitHub.

Advanced
Delivery
mcp MCP server → your ahel gateway (mcp.ahel.ai) → every connected AI client.
Catalog kind
mcp-server
Gateway key
io-github-statuser-cloud-mcp
Source
github.com/statuser-cloud/mcp
Hosted endpoint
https://mcp.statuser.cloud