Stateless MCP: обновление протокола, которое вернуло интерес Саймона Уиллисона

· Искусственный интеллект
Спецификация Model Context Protocol от 28 июля 2026 года отказалась от серверных сессий. Саймон Уиллисон объясняет, почему это упрощает разработку и делает агентов безопаснее — и показывает три собственных инструмента.

cover.svg

Во вторник вышла новая редакция Model Context Protocol — спецификация с формальным названием «2026-07-28», которую сам автор предпочитает называть просто MCP 2.0. По словам Саймона Уиллисона, это самое значительное изменение протокола с момента его запуска, и именно оно вернуло ему интерес к MCP.

Напомним: MCP — предложенный Anthropic в ноябре 2024 года стандарт для подключения внешних инструментов к агентам на базе языковых моделей. В 2025 году протокол пережил всплеск популярности, но затем оказался в тени другой разработки Anthropic — Skills. Стало ясно, что агенту с доступом к терминалу и curl не нужен отдельный протокол: он и так может почти всё, причём гибче.

Почему автор снова обратился к MCP

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

Один запрос вместо сессии

Главное новшество — отказ от состояния на стороне сервера. Раньше вызов инструмента требовал двух HTTP-запросов: сначала инициализация сессии и получение идентификатора Mcp-Session-Id, затем сам вызов. Теперь достаточно одного запроса, где метод и имя инструмента передаются заголовками. Это упрощает и клиент, и сервер, а заодно лучше подходит для масштабируемых веб-приложений: не нужно хранить состояние сессий и следить, чтобы запросы одной сессии попадали на одну и ту же машину.

Три инструмента за неделю

Вдохновившись переменами, Уиллисон за неделю собрал три проекта. mcp-explorer — CLI-утилита на Python для интерактивного изучения MCP-серверов: она умеет выводить список инструментов, показывать их JSON-схемы и вызывать их с аргументами; благодаря uvx её можно запускать без установки. datasette-mcp — плагин для Datasette, добавляющий эндпоинт /-/mcp с тремя инструментами: список баз, схема базы и (пока только для чтения) выполнение SQL. Наконец, llm-mcp-client — альфа-плагин, который добавляет поддержку MCP в его инструмент LLM; со временем автор рассчитывает встроить эту возможность в ядро.

Безопасность как аргумент

Когда-то Уиллисон писал о проблемах MCP с prompt injection — именно из этих размышлений позже родилось понятие «смертельной троицы». Но появление агентов с произвольным доступом к оболочке и сети сделало задачу защиты куда сложнее. Теперь он приходит к выводу: рассуждать о возможностях агента и потенциальных рисках гораздо легче, когда набор инструментов ограничен MCP, а не открытым исполнением команд. Именно на MCP автор намерен опираться при разработке чувствительных приложений на основе языковых моделей.


Источник: Simon Willison

Комментарии

Войдите, чтобы комментировать.

  • Пока нет комментариев.