ИИ

MCP Server

Status200 Model Context Protocol (MCP) Server даёт LLM прямой доступ к инстансу Status200: мониторинг, инциденты и операции observability через AI.

Что это

MCP Server — мост между Large Language Models (LLM) и вашим Status200. Реализует Model Context Protocol (MCP), чтобы ассистенты (например, Claude) работали с вашей monitoring-инфраструктурой.

Как устроено

Сервер MCP развёрнут рядом с инстансом Status200, доступ по Streamable HTTP. Локальная установка не требуется.

Облако: https://status200.ru/mcp
Self-hosted: https://your-status200-domain.com/mcp

Возможности

  • Покрытие API: доступ к 711 эндпоинтам Status200 API
  • 126 типов ресурсов: мониторы, инциденты, команды, пробы и др.
  • Операции в реальном времени: CRUD по ресурсам
  • Типобезопасность: типы и валидация входных данных
  • Аутентификация: API key и корректная обработка ошибок
  • Интеграция: Claude Desktop и другие MCP-клиенты
  • Сессии: управление сессиями и переподключение

Что можно делать

С MCP ассистент помогает:

  • Мониторы: создавать и настраивать, смотреть статус, группы мониторов
  • Инциденты: создавать, заметки, назначения, resolution
  • Команды: участники, права, on-call расписания
  • Status pages: обновления, объявления, подписчики
  • Алерты: правила, escalation, логи уведомлений
  • Пробы: развёртывание и управление в разных локациях
  • Отчёты и аналитика: отчёты и анализ данных мониторинга

Требования

  • Инстанс Status200 (облако или self-hosted)
  • MCP-совместимый клиент (Claude Desktop, VS Code с GitHub Copilot и т.д.)
  • Валидный API key Status200 (для защищённых операций; публичные tools работают без ключа)

API key

  1. Войти в Status200.
  2. SettingsAPI Keys.
  3. Create API Key.
  4. Имя (например, «MCP Server»).
  5. Нужные permissions.
  6. Скопировать ключ.

Конфигурация

Claude Desktop

Файл конфигурации:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json

Облако Status200

{
  "mcpServers": {
    "status200": {
      "transport": "streamable-http",
      "url": "https://status200.ru/mcp",
      "headers": {
        "x-api-key": "your-api-key-here"
      }
    }
  }
}

Self-hosted Status200

Замените status200.ru на домен вашего Status200:

{
  "mcpServers": {
    "status200": {
      "transport": "streamable-http",
      "url": "https://your-status200-domain.com/mcp",
      "headers": {
        "x-api-key": "your-api-key-here"
      }
    }
  }
}

Публичный доступ (без API key)

Только публичные tools (информация status page, справка):

{
  "mcpServers": {
    "status200": {
      "transport": "streamable-http",
      "url": "https://status200.ru/mcp"
    }
  }
}

Доступ к публичным инструментам status page и справке без аутентификации.

VS Code и GitHub Copilot

В VS Code встроена поддержка MCP (GitHub Copilot 1.99+).

Шаг 1: требования

  • VS Code 1.99+
  • Расширение GitHub Copilot
  • Включён GitHub Copilot Chat

Шаг 2: конфигурация MCP

  1. Ctrl+Shift+P (Windows/Linux) или Cmd+Shift+P (macOS)
  2. «MCP: Open User Configuration» → Enter
  3. Откроется или создастся mcp.json

Либо .vscode/mcp.json в workspace для проекта.

Облако Status200

{
  "servers": {
    "status200": {
      "type": "http",
      "url": "https://status200.ru/mcp",
      "headers": {
        "x-api-key": "${input:status200-api-key}"
      }
    }
  },
  "inputs": [
    {
      "type": "promptString",
      "id": "status200-api-key",
      "description": "Status200 API Key",
      "password": true
    }
  ]
}

Self-hosted Status200

{
  "servers": {
    "status200": {
      "type": "http",
      "url": "https://your-status200-domain.com/mcp",
      "headers": {
        "x-api-key": "${input:status200-api-key}"
      }
    }
  },
  "inputs": [
    {
      "type": "promptString",
      "id": "status200-api-key",
      "description": "Status200 API Key",
      "password": true
    }
  ]
}

Шаг 3: запуск MCP

  1. Ctrl+Shift+P / Cmd+Shift+P
  2. «MCP: List Servers» — список серверов
  3. Запустить «status200»
  4. При запросе ввести API key Status200

Шаг 4: Copilot Chat

Откройте GitHub Copilot Chat, режим Agent (@workspace или прямой запрос).

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

inputs с "password": true запрашивают API key при старте, без хранения в открытом виде. VS Code может запросить подтверждение доверия при первом запуске MCP.

Эндпоинты

EndpointМетодОписание
/mcpGETSSE-поток уведомлений server → client
/mcpPOSTJSON-RPC: вызов tools и др.
/mcpDELETEЗавершение и очистка сессии
/mcp/healthGETHealth check
/mcp/toolsGETREST: список доступных tools

Аутентификация

Публичные tools (без API key)

  • status200_help: справка по возможностям Status200 MCP
  • status200_list_resources: ресурсы и операции
  • get_public_status_page_overview: обзор публичной status page
  • get_public_status_page_incidents: инциденты публичной status page
  • get_public_status_page_scheduled_maintenance: плановое обслуживание
  • get_public_status_page_announcements: объявления

Для публичных tools указывают ID status page (UUID) или доменное имя страницы.

Защищённые tools (нужен API key)

Остальные операции (мониторы, инциденты, команды и т.д.) — заголовок:

  • x-api-key: API key Status200
  • Authorization: Bearer <api-key>

Проверка

# Облако
curl https://status200.ru/mcp/health

# Self-hosted
curl https://your-status200-domain.com/mcp/health

Список tools:

curl https://status200.ru/mcp/tools
curl https://your-status200-domain.com/mcp/tools

Примеры запросов (естественный язык)

Примеры формулировок для ассистента:

Какой сейчас статус всех моих мониторов?
Покажи инциденты за последние 24 часа
Создай website monitor для https://example.com с проверкой каждые 5 минут
Настрой API monitor для https://api.example.com/health с таймаутом 30 секунд
Создай инцидент высокого приоритета из-за падения БД и влияния на аутентификацию
Добавь к инциденту #123 заметку: «Подключение к БД восстановлено, наблюдаем стабильность»
Отметь инцидент #456 как resolved
Кто в команде infrastructure?
Кто сейчас on-call у infrastructure?
Покажи on-call на эту неделю
Обнови status page: для payment service статус «Расследуем проблемы с оплатой»
Создай объявление о плановом обслуживании в выходные

Публичные status page (без API key):

Текущий статус status.example.com?
Недавние инциденты на status page Status200
Есть ли плановое обслуживание на status.acme.com?
Последние объявления публичной status page с ID abc123-...
Создай окно maintenance на субботу 02:00–04:00, отключи мониторы api.example.com на это время и обнови status page
Покажи мониторы, которые были down за последний час; создай инциденты там, где их ещё нет

Права API key

  • Только чтение: read permissions для просмотра.
  • Полный доступ: для create/update/delete — как минимум права уровня Project Admin (по политике вашего проекта).

Практика: минимально необходимые права; ротация ключей; отдельные ключи на окружения; мониторинг использования в Status200.

Устранение неполадок

Ошибки прав

Нужны read для списков, write для создания/обновления, delete — при удалении ресурсов.

Подключение

  1. Верный URL Status200.
  2. Валидный API key.
  3. Доступность инстанса.
  4. Проверка /mcp/health.

Неверный API key

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

Ошибки сессии

Используется заголовок mcp-session-id; клиент должен обрабатывать ID сессии из ответа сервера. Сессии очищаются при закрытии соединения.

Ресурсы

126 типов ресурсов, в том числе:

Мониторинг: Monitor, MonitorStatus, MonitorGroup, Probe
Инциденты: Incident, IncidentState, IncidentNote, IncidentTemplate
Алерты: Alert, AlertState, AlertSeverity
Status pages: StatusPage, StatusPageAnnouncement, StatusPageSubscriber
On-call: OnCallPolicy, EscalationRule, OnCallSchedule
Команды: Team, TeamMember, TeamPermission
Телеметрия: TelemetryService, Log, Span, Metric
Workflows: Workflow, WorkflowVariable, WorkflowLog

Для ресурсов доступны стандартные операции: List, Count, Get, Create, Update, Delete.