MCP Events: агент реагирует на событие сам, а не ждёт промпта
OpenAI описала MCP Events для ChatGPT: сервер сообщает о новой задаче, комментарии или изменении документа, а агент оформляет подписку и получает вебхук с заранее заданным действием. Нужен протокол MCP второй версии (2026-07-28) с методами перечисления, подписки и отписки от событий. На фоне анонса Dots я считаю Events стратегически главным слоем: инструменты отвечают на запрос, события запускают работу без промпта.
Коротко
- Что появилось: MCP Events — подписка ChatGPT на обновления MCP-сервера (новые сообщения, комментарии, смена статуса).
- Протокол: MCP 2.0, версия 2026-07-28; методы перечисления, подписки и отписки от событий; доставка через webhook.
- Пример из документации: событие создания комментария с фильтром по идентификатору документа — «следи за review-комментариями и вноси правки».
- Главное ограничение: нужно хранить подписки и открывать исходящий HTTPS к callback URL; при изменении данных в источнике документация требует проверять петли обратной связи (feedback loops).
- Главное последствие: обратный канал «система → событие → MCP → агент → действие»; MCP становится инфраструктурой событийной автоматизации, а не только каталогом инструментов.
Что изменилось
Раньше агент ждал, пока человек откроет чат и сформулирует задачу. Теперь цепочка выглядит так. Сервер объявляет каталог событий: имя, фильтры, схема payload. Пользователь в ChatGPT говорит, что мониторить и что делать при срабатывании. ChatGPT создаёт подписку с webhook URL и секретом подписи. Сервер верифицирует callback challenge и шлёт события по стандарту Standard Webhooks. ChatGPT получает payload и выполняет инструкцию пользователя.
В таблице сценариев OpenAI приводит, в частности: мониторинг канала с обратной связью по продукту с открытием черновика pull request при сообщении об ошибке; слежение за review-комментариями в документе с фильтром по идентификатору документа.
Иллюстрация автора (не цитата OpenAI): «следи за новыми сообщениями в канале с обратной связью; если появляется баг — изучи документы и подготовь draft PR» — тот же паттерн, что подписка на новое сообщение плюс действие агента.
Документация отдельно перечисляет, что ChatGPT поддерживает доставку через вебхук и верификацию обратного вызова; опрос, потоковая передача и часть черновых уведомлений в этой интеграции не поддерживаются. Для плагина нужно постоянное хранилище подписок и исходящий HTTPS.
Почему это важно
На фоне Dots и постоянно включённых агентов я бы выделила Events как стратегически главный слой коннектора. Tools отвечают на явный запрос. Skills упаковывают способ работы. Events запускают работу без промпта.
Для маркетинга и продаж это переводит рутину из «напомни агенту» в реакцию на факт: новый лид, негативный отзыв, SEO-аномалия, комментарий редактора, смена стадии сделки. Событие запускает интеллектуальное действие, а не фиксированный сценарий n8n — хотя n8n никуда не исчезает: детерминированное остаётся workflow, анализ и решение — цепочка «событие → агент».
Три слоя, которые я бы заложила в архитектуру любого маркетингового коннектора: Tools, Skills, Events — не десять новых инструментов вместо одного каталога событий. Если вы уже читали про Agent Plugins как про упаковку Skills и MCP, Events — следующий вопрос: кто инициирует работу, когда пользователь спит.
Что это означает для бизнеса
Практическое разделение, которое я использую с командами. Workflow (детерминированное): «если статус равен X, отправь письмо по шаблону». Event → agent (требует анализа): «при смене стадии сделки разберись, почему она зависла, и предложи следующий шаг».
Иллюстрация автора для CRM-коннектора (имена событий — пример, не из документации OpenAI): создание лида, смена стадии сделки, неактивная сделка, новый комментарий — и одно согласованное действие агента на каждое. Это продуктовый слой каталога событий, а не ещё десять инструментов.
Документация OpenAI отдельно предупреждает: если действие агента меняет данные в источнике, новые события могут породить петлю обратной связи — это нужно тестировать до продакшена, в том числе при включённом и выключенном пакетировании.
Если вы проектируете коннектор для маркетинга, начните с каталога событий в документации плагина: пользователь в ChatGPT должен увидеть события рядом с инструментами. Затем опишите одно событие с низким риском — например, только чтение или черновик с подтверждением. И только потом добавляйте события, которые меняют данные в CRM или рекламном кабинете.
Для редакции и контент-команды это может выглядеть так: событие «новый комментарий в документе брифа» запускает агента, который сверяет правку с гайдлайном и готовит ответ редактору, а не публикует сам. Для рекламного маркетинга — событие «аномалия в отчёте» запускает разбор метрик и черновик гипотез, а не автоматическое изменение ставок. Разница с классическим алертом в том, что действие может быть разным при одном типе события — по инструкции пользователя, а не по жёсткому шаблону.
Технически закладывайте идемпотентность: события могут приходить не по порядку, доставка повторяется. Документация OpenAI требует уникальный идентификатор события и повторные попытки с экспоненциальной задержкой. На стороне маркетинга это переводится в правило: один и тот же лид не должен породить три одинаковых письма, если вебхук дёрнулся трижды.
Если вы уже ведёте каталог MCP-инструментов для рекламы и аналитики, не дублируйте логику в десятке новых tools «на каждый чих». Сначала опишите события: что именно изменилось в системе и какой минимальный контекст нужен агенту. Затем — одно действие по умолчанию и явное подтверждение на запись. Так вы сохраняете читаемость коннектора для человека и не раздуваете поверхность атаки.
С точки зрения безопасности помните про проверку callback URL: документация требует HTTPS, запрет приватных адресов и отсутствие редиректов. Для корпоративного контура это значит, что вебхук-эндпоинт должен жить в зоне, которую видит служба безопасности, с журналом доставок. Иначе событийный слой станет дырой в периметре раньше, чем принесёт пользу маркетингу.
Частые вопросы
Нужен ли отдельный сервер для событий? События реализуются на том же аутентифицированном MCP-эндпоинте, что и инструменты — отдельный микросервис не обязателен, но нужно хранилище подписок и исходящий HTTPS.
Заменяет ли Events cron и n8n? Нет. Cron и n8n остаются для детерминированных цепочек. Events — когда нужен смысл события и решение агента.
Какая версия протокола обязательна? MCP 2.0, дата версии 2026-07-28, как в документации OpenAI.
Что протестировать
- Каталог событий для одного коннектора: выписать все имена, фильтры и полезную нагрузку; сопоставить с одним реальным бизнес-событием.
- Вебхук и подпись: пройти проверку challenge и получить успешный ответ на тестовое событие.
- Петля обратной связи: убедиться, что действие агента не генерирует бесконечную цепочку событий.
Мой вывод
MCP Events — это не «ещё десять tools», а продуктовый слой подписки. На фоне Dots именно Events отвечают на вопрос «кто запустит работу, когда я не в чате».
Я бы начала с одного коннектора и одного события с низким риском (read-only или draft с approval). И я бы не хоронила n8n — но перестала бы путать оркестратор и агентную реакцию на смысл события.
Источники
- MCP Events — OpenAI Developers, 2026-09-29