Перейти к содержимому

API, MCP и CLI

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


Мониторингом в Statuser можно управлять не только из панели: из своего кода, из ИИ-ассистента и из терминала. Все три способа работают с одним API-ключом, и ограничения тарифа в них те же, что в интерфейсе. Ключ создаётся в разделе Настройки аккаунта → API-ключи, подробнее — в статье Управление API-ключами.

Публичный API

REST API для своих скриптов, сервисов и интеграций: серверы, инциденты, уведомления и страницы статуса. Методы и параметры описаны спецификацией OpenAPI 3.0 в документации API.

Ключ передаётся в заголовке Authorization. Например, список серверов аккаунта:

curl https://api.statuser.cloud/v1/servers \
  -H "Authorization: Bearer $STATUSER_API_KEY"

В ответ придёт массив серверов, ниже он сокращён до одного сервера и четырёх полей:

[
  {
    "id": 1874,
    "name": "Сайт магазина",
    "host": "https://shop.example.com",
    "status": "online"
  }
]

MCP-сервер

Подключает Statuser к ИИ-ассистентам с поддержкой Model Context Protocol — Claude Code, Cursor и другим клиентам. Ассистент сам смотрит серверы и инциденты и выполняет действия, о которых его попросили обычными словами. Настройки для разных клиентов — в репозитории MCP-сервера на GitHub.

Так выглядит разговор: человек пишет обычными словами, а ассистент сам вызывает нужные инструменты MCP-сервера.

Какие серверы сейчас лежат?
incident_list
Лежит один: «Сайт магазина» — с 14:02 отвечает 502 из Москвы и Амстердама. Остальные 11 серверов работают.
Поставь его на паузу, мы уже чиним
monitor_pause
Готово, проверки «Сайта магазина» на паузе. Скажите, когда закончите, — верну их.

CLI

Утилита командной строки statuser для терминала и шагов CI. Она добавляет и меняет серверы, ставит проверки на паузу на время деплоя, ведёт инциденты, плановые работы и отчёты на странице статуса, отправляет heartbeat из крон-задач. Серверы и сценарии можно описать в файле statuser.json и выкатывать вместе с кодом сайта.

Установка, вход и первые команды:

$ curl -fsSL https://statuser.cloud/cli/install.sh | sh
$ statuser login
Готово: you@example.com. Ключ сохранён в /home/you/.config/statuser/config.json
$ statuser servers list
ID    Имя                Протокол  Статус  Хост                     Проект
1874  Сайт магазина      http      online  https://shop.example.com 100000
2041  Вход в кабинет     scenario  online  scenario://2041          100000
$ statuser servers pause 1874
#1874: на паузе

Другие способы установки, все команды и готовые файлы CI — в README на GitHub.

Terraform

Скоро. Готовим провайдер Terraform, чтобы мониторинг был описан там же, где и инфраструктура. Пока серверы как код ведёт CLI: statuser diff показывает, что изменится, а statuser apply приводит проект к файлу statuser.json.