Тем не менее, мы находимся лишь в начальной фазе развития agent-native архитектуры. Несмотря на высокий интерес к MCP сегодня, при разработке и поставке решений на основе MCP остается множество нерешенных задач.
В следующей итерации протокола необходимо реализовать следующие возможности:
Хостинг и мультиарендностьMCP изначально поддерживает модель "один ко многим", в которой один AI-агент может использовать множество инструментов. Однако мультиарендные архитектуры (например, SaaS-продукты) требуют поддержки параллельного доступа множества пользователей к общему MCP-серверу. Базовая поддержка удалённых серверов может стать краткосрочным решением для повышения доступности MCP, но корпоративные заказчики, скорее всего, предпочтут разворачивать MCP-серверы в изолированной среде с разделением data plane и control plane.
Следующий шаг к массовому внедрению — это создание унифицированной и эффективной toolchain для масштабируемого деплоя и сопровождения MCP-серверов.
АутентификацияНа данный момент MCP не определяет стандартный механизм аутентификации для взаимодействия клиентов с серверами и не предоставляет фреймворк для безопасного управления и делегирования аутентификации MCP-серверами при работе с внешними API. Аутентификация полностью отдана на откуп конкретным реализациям и сценариям развертывания. На практике, текущее использование MCP в основном ограничено локальными интеграциями, где явная аутентификация зачастую не требуется.
Новая парадигма аутентификации может стать ключевым фактором для масштабирования MCP в удалённых сценариях. С точки зрения разработчика, унифицированный подход должен охватывать:
- Аутентификацию клиента: стандартные методы вроде OAuth или API-токенов для клиент-серверного взаимодействия
- Аутентификацию инструментов: вспомогательные функции или обёртки для аутентификации при обращении к сторонним API
- Мультипользовательскую аутентификацию: аутентификация с учётом тенантов для корпоративных развертываний
АвторизацияДаже если инструмент прошел аутентификацию, остаётся вопрос: кто имеет право его использовать и насколько детализированными должны быть права доступа? В MCP отсутствует встроенная модель разрешений, поэтому контроль доступа осуществляется на уровне сессии — инструмент либо доступен полностью, либо полностью запрещён. Хотя в будущем возможна реализация более тонких механизмов авторизации, текущий подход основан на потоках авторизации, соответствующих
OAuth 2.1, при которых после аутентификации предоставляется доступ ко всей сессии. Это создает дополнительную сложность при увеличении количества агентов и инструментов — каждый агент, как правило, требует собственной сессии с уникальными авторизационными данными, что приводит к усложнению управления сессионным доступом.
ШлюзС ростом масштабов использования MCP, шлюз может выполнять роль централизованного уровня для аутентификации, авторизации, управления трафиком и маршрутизации инструментов. Подобно API-шлюзам, он будет обеспечивать контроль доступа, перенаправление запросов к нужным MCP-серверам, балансировку нагрузки и кэширование ответов для повышения эффективности. Это особенно важно в мульти-тенантных окружениях, где пользователям и агентам требуются различные уровни доступа. Стандартизированный шлюз упростит клиент-серверное взаимодействие, повысит безопасность и обеспечит лучшую наблюдаемость, сделав MCP-развёртывания более масштабируемыми и управляемыми.
Обнаружение и удобство использования MCP-серверовНа данный момент процесс поиска и настройки MCP-серверов осуществляется вручную: разработчику нужно находить эндпоинты или скрипты, настраивать аутентификацию и обеспечивать совместимость между клиентом и сервером. Интеграция новых серверов требует времени, и AI-агенты не способны динамически обнаруживать или адаптироваться к доступным серверам.
Однако, согласно
презентации Anthropic на AI Engineer Conference в прошлом месяце, ожидается
внедрение реестра MCP-серверов и протокола обнаружения, что может стать следующим этапом в развитии MCP-инфраструктуры.
Среда исполненияБольшинство AI-воркфлоу требует последовательного вызова нескольких инструментов — однако в MCP отсутствует встроенная концепция воркфлоу для управления такими шагами. Неэффективно требовать от каждого клиента реализации резюмируемости и возможности повторного выполнения. Хотя сейчас разработчики исследуют решения вроде
Inngest, выведение состояния исполнения (stateful execution) в статус концепции первого класса значительно упростит модель выполнения задач для большинства разработчиков.
Стандартизированный клиентский опытОдин из часто задаваемых вопросов в сообществе разработчиков — как реализовывать выбор инструментов в MCP-клиентах: всем ли нужно писать свою реализацию RAG для инструментов, или есть слой, который должен быть стандартизирован?
Кроме выбора инструментов, не существует единого UX/UI-паттерна для их вызова (встречаются реализации от слэш-команд до полностью естественного языка). Стандартизированный клиентский слой для обнаружения, ранжирования и вызова инструментов может сделать опыт взаимодействия предсказуемым как для разработчиков, так и для конечных пользователей.
ОтладкаРазработчики MCP-серверов часто сталкиваются с тем, что один и тот же сервер сложно стабильно запустить с разными клиентами. Обычно каждый MCP-клиент имеет свои особенности, а клиентские трейсы либо отсутствуют, либо труднодоступны, что делает отладку MCP-серверов крайне сложной задачей. По мере того как появляются удаленные MCP-серверы, необходимо создавать новый стек инструментов, обеспечивающий консистентный и управляемый разработческий опыт (dev experience) как для локальных, так и для удаленных сред.