Перейти к содержимому
Внешние MCP-серверы

Внешние MCP-серверы

Открыть в Markdown

Status200 AI может использовать инструменты MCP-серверов вне Status200 — тех, что работают у вашего облака, хостинга кода или вашей собственной команды, например AWS, Azure или GitHub, — пока расследует и исправляет инциденты и оповещения. Добавьте сервер один раз в Настройки проекта → ИИ → Внешние MCP-серверы, и Status200 AI будет использовать его со следующего инцидента.

Эта страница о серверах, к которым подключается Status200 AI. Чтобы, наоборот, подключить к Status200 ИИ-ассистента, например Claude или Cursor, см. MCP-сервер.

Прежде чем начать

  • Status200 AI включён для проекта, и у него есть провайдер LLM, который он может использовать: см. Провайдеры LLM.
  • MCP-адрес сервера. Подходят и Streamable HTTP, и более старый HTTP с SSE: Status200 сам определяет при подключении, на каком из них говорит сервер.
  • Как Status200 на нём входит: API-токен, собственные заголовки сервера или учётные данные клиента OAuth от вашего поставщика удостоверений.
  • Project Owner или Project Admin добавляет, изменяет, проверяет и удаляет серверы; Project Members и Viewers могут их видеть. В Status200 Cloud для добавления сервера нужен тариф Growth или выше.

Добавить сервер

  1. Откройте «Внешние MCP-серверы»

    Перейдите в Настройки проекта → ИИ → Внешние MCP-серверы и нажмите Создать: Внешний MCP-сервер.

  2. Укажите, где он находится

    Задайте ему Имя — под ним его видят Status200 AI и те, кто читает о том, что он сделал, — и его URL, например https://mcp.example.com/mcp. В разделе Дополнительные поля Описание говорит, для чего нужен сервер; Status200 AI читает его, чтобы выбрать нужный сервер.

  3. Выберите, как Status200 входит

    Выберите одну карточку в разделе Аутентификация и заполните то, что она запрашивает (см. Аутентификация).

  4. Посмотрите, что нашёл Status200

    При сохранении Status200 сразу подключается, и диалог Проверить подключение сообщает, что он нашёл: сервер, как он общается, и каждый из его инструментов с пометкой Только чтение или Может вносить изменения. Если подключиться не удалось, диалог говорит, почему и что проверить.

Список серверов показывает состояние каждого: Подключено, Нет подключения (наведите указатель, чтобы увидеть причину), Ещё не проверен или Выключено, и сколько инструментов он предлагает. На странице сервера — его сведения, переключатель, разрешающий Status200 AI его использовать, и его Инструменты с кнопкой Проверить подключение, чтобы подключиться снова и прочитать их заново. Проверка не вызывает ни одного инструмента сервера.

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

АутентификацияЧто отправляет Status200Что вы заполняете
Без входаНичегоНичего. Для сервера, которому не нужен вход или до которого доходит только ваша сеть.
Bearer-токенAuthorization: Bearer <token>Token
Пользовательские заголовкиВведённые вами заголовки, с каждым запросомИмя и значение для каждого заголовка, например X-API-Key. Не больше 10.
Учётные данные клиента OAuthТокен, который он запрашивает у вашего поставщика удостоверений, как bearer-токен, запрашивая новый до истечения срокаURL токена, Client ID и Client Secret на отдельном шаге; Область и Аудитория в разделе Дополнительные поля

Токен, значения заголовков и Client Secret хранятся в зашифрованном виде и больше никогда не показываются — даже тем, кто их сохранил. При редактировании они пусты; оставьте поле пустым, чтобы сохранить то, что хранится. Страница сервера показывает имена отправляемых им заголовков, но никогда их значения. Изменение Аутентификации удаляет секреты, которые использовал прежний способ входа.

Никогда не помещайте токен или пароль в URL: каждый, кто может читать сервер, читает его адрес, а имя пользователя или пароль в нём отклоняются.

Что Status200 AI делает с сервером

Каждый инструмент сервера либо только читает, либо может что-то изменить. Status200 исходит из того, что сервер говорит об инструменте (его readOnlyHint): инструмент, который сервер не помечает как только читающий, считается способным что-то изменить.

flowchart TB T["Инструмент<br/>вашего<br/>MCP-сервера"] --> Q{"Он только<br/>читает?"} Q -->|"да"| R["Используется<br/>в расследованиях<br/>и исправлениях"] Q -->|"нет"| C["Используется<br/>только в<br/>исправлениях"] C --> A{"Подтверждение<br/>в правиле"} A -->|"Спрашивать<br/>перед<br/>исправлением"| P["Предлагается,<br/>чтобы человек<br/>его подтвердил"] A -->|"Исправлять,<br/>не спрашивая"| M["Делается сразу,<br/>через серверы,<br/>которые называет<br/>правило"]

Какие инструменты использует Status200 AI и когда

Инструменты, которые только читаютИнструменты, которые могут что-то изменить
РасследованияИспользуются вместе с собственными данными Status200Никогда не используются: Status200 отклоняет вызов
ИсправленияИспользуются, чтобы подготовить исправлениеПредлагаются на подтверждение или используются сразу — так, как указывает Исправление в правиле ИИ

В расследовании Status200 AI получает список инструментов серверов, которые он может использовать, и вызывает читающие, чтобы посмотреть на то, чего Status200 сам не видит: ваш облачный аккаунт, развёртывание, трекер задач. Их ответы он использует в анализе первопричины. См. AI SRE.

В исправлении, когда доступный ему сервер предлагает инструмент, который может что-то изменить, Status200 AI готовит исправление через него — после анализа первопричины, если он есть:

  • Спрашивать перед исправлением — каждое изменение, которое он внёс бы, записывается и никуда не отправляется. Карточка Исправление инцидента перечисляет их по порядку, каждое с его сервером, инструментом и тем, что оно отправило бы. Approve & Run вносит ровно эти изменения, в этом порядке, от вашего имени; для подтверждения нужно то же разрешение, что и для запуска runbook. Изменение, которое не удалось, останавливает последующие.
  • Исправлять, не спрашивая — Status200 AI вносит изменения сам, записывая каждое до отправки. Он делает это только для правила, которое называет свои MCP-серверы, если ни одно другое подходящее правило не спрашивает первым, ничто другое уже не исправляет инцидент самостоятельно (ИИ-агент на кластере или хосте либо runbook) и правило не исчерпало число исправлений, которые может сделать само за час; иначе изменения предлагаются. Без настроенного правила или с правилом, которое не называет ни одного MCP-сервера, каждое изменение предлагается.

Исправление вносит не больше 5 изменений. Затем Status200 следит за мониторами инцидента, как при любом исправлении. Ничего не отменяется автоматически: у MCP-инструмента нет отмены, о которой Status200 мог бы знать, поэтому неудачное исправление остаётся человеку, а карточка Исправление показывает, что ответил каждый сервер.

Чтобы Status200 AI перестал использовать сервер, выключите Разрешить Status200 AI использовать этот сервер на его странице. Он сначала спрашивает: сервер больше не используется ни в одном расследовании или исправлении, а предложенное через него исправление больше нельзя подтвердить.

Выбрать серверы, которые может использовать правило

Каждое правило ИИ может указать MCP-серверы, которые Status200 AI может использовать для того, что под него подходит. Поле — MCP-серверы в разделе Дополнительные поля. Пока вы ничего не выбрали, Status200 AI может использовать их все, и свёрнутый раздел говорит об этом.

  • Ни один не выбран — все включённые серверы проекта.
  • Некоторые выбраны — только они. В правиле ИИ, которое исправляет без запроса, указание его серверов — это ещё и то, что позволяет Status200 AI вносить их изменения без запроса.

Когда подходят несколько правил, которые расследуют, Status200 AI может использовать каждый сервер, который разрешает любое из них; если правила не удаётся прочитать, расследование не использует ни одного MCP-сервера. Каждое подходящее правило, которое исправляет, готовит своё исправление через свои серверы, а правила, не указавшие ни одного, делят одно исправление через все серверы.

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

  • То, что возвращает сервер, — это данные, а не инструкции. Status200 AI читает описания и ответы его инструментов как текст извне Status200: они никогда не меняют правило, подтверждение или то, что может делать Status200 AI.
  • Адрес проверяется при каждом подключении. Status200 никогда не подключается к собственному или link-local-адресу. В Status200 Cloud он также отклоняет адреса частных сетей: используйте публичный адрес сервера. Самостоятельно размещённый Status200 доходит до частных адресов, если не задано DATA_SOURCE_BLOCK_PRIVATE_ADDRESSES=true. Перенаправлениям он не следует.
  • Ограничения. В проекте не больше 20 серверов, и Status200 читает не больше 200 инструментов каждого. Подключение прерывается через 20 секунд, получение списка инструментов — через 30, вызов инструмента — через 60. Ответ больше 2 МБ отклоняется, а запуск делает не больше 40 вызовов MCP-серверов.
  • Каждый вызов записывается. Каждый вызов — это шаг запуска, видимый в его активности, а каждое изменение исправления есть на карточке Исправление вместе с ответом сервера. Вызовы модели, стоящие за ними, — в Настройки проекта → ИИ → Журналы ИИ.

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

Нет подключения, или проверка не проходит

Диалог Проверить подключение говорит, что пошло не так и что проверить: адрес (частный адрес в Status200 Cloud, хост, который не отвечает), вход (токен или заголовки, которые сервер отклонил, или URL токена, не выдавший токен) или URL, который не является MCP-адресом сервера. Исправьте настройки сервера кнопкой Редактировать на его странице и проверьте снова.

Status200 AI не использует сервер

Убедитесь, что Разрешить Status200 AI использовать этот сервер включено, что правило, подошедшее инциденту, не указывает другие серверы в разделе Дополнительные поля, и что инструменты сервера прочитаны: их перечисляет его карточка Инструменты. Расследование использует только инструменты с пометкой Только чтение.

Дальнейшие шаги