Внутренний AI и внешний MCP как разные контуры
Одинаковые бизнес-данные не требуют одинакового канала доступа
Когда компания внедряет AI, быстро возникает соблазн объединить всё в один универсальный шлюз: внутренний agent, внешние ассистенты, инструменты разработчиков и интеграции партнёров. Это упрощает схему на презентации, но размывает границы доверия. Sapphire I.C.D.S. использует другой подход. Встроенный AI и внешний MCP являются разными контурами, даже если в отдельных случаях обращаются к одной и той же штатной операции бизнес-модуля.
Разделение отвечает на практический вопрос: кто инициирует действие, в каком контексте он работает и какие данные вообще должны быть видимы этому классу клиента. Внутренний пользователь платформы и внешний AI-клиент не становятся эквивалентными только потому, что оба умеют запросить список статей.
Внутренний AI работает внутри платформы
Встроенный AI-agent запускается в авторизованном контексте Sapphire I.C.D.S. Платформа определяет владельца сессии, доступную поверхность, выбранный профиль модели и разрешённые инструменты. Agent может использовать корпоративные инструкции, память и базу знаний, если это разрешено внутренней политикой. Его задачи, история и действия остаются частью управляемого AI-контура.
Доступ к инструментам формируется из глобального состояния, прав группы и настроек сессии. Пользовательский запрос не может сам объявить новую роль или включить запрещённую команду. Это делает внутренний agent подходящим для ежедневной работы сотрудников: подготовки контента, анализа данных, ведения планов и выполнения разрешённых операций в установленных модулях.
Внешний MCP предназначен для других клиентов
External MCP в Sapphire I.C.D.S. находится в developer alpha. На текущем подтверждённом контуре проверено подключение ChatGPT к https://sapphire-project.com/mcp; другие хосты, клиенты и незавершённые policy/hardening-возможности требуют отдельной проверки.
MCP — стандартный интерфейс, через который совместимые внешние AI-клиенты и рабочие среды могут обнаруживать и вызывать опубликованные инструменты. В Sapphire I.C.D.S. этот доступ проходит через отдельную HTTPS-поверхность, собственную аутентификацию и явные области разрешений. Подключение может использовать управляемую авторизацию пользователя или персональный токен для технического клиента в рамках утверждённой политики.
Внешний клиент получает не весь внутренний каталог. Каждый модуль публикует отдельный разрешённый список MCP-инструментов. Сам факт существования внутренней AI-команды не делает её внешней. Сервер повторно проверяет выданные области доступа и текущие права учётной записи при работе с инструментом. Если право отозвано, ранее выданный доступ не должен превращаться в постоянное исключение из политики.
| Критерий | Внутренний AI | Внешний MCP |
|---|---|---|
| Основной пользователь | Сотрудник внутри Sapphire I.C.D.S. | Внешний AI-клиент или рабочая среда |
| Контекст | Внутренняя сессия, профиль и разрешённые корпоративные источники | Только данные и инструменты, опубликованные во внешний контур |
| Политика инструментов | AI-политика, права группы и выбор сессии | Явная публикация, области доступа и текущие права |
| Цель | Работа agent внутри платформы | Интеграция совместимых внешних клиентов |
Внутренняя память не публикуется наружу
Наиболее важная граница касается корпоративного контекста. Инструкции, внутренняя память и база знаний относятся к встроенному AI. Они не должны появляться во внешнем списке инструментов или возвращаться внешнему клиенту только потому, что он успешно прошёл аутентификацию. Аутентификация подтверждает личность и выданные права, но не отменяет принцип минимальной публикации.
Такое решение уменьшает риск случайного раскрытия управленческих правил, накопленного контекста и внутренних материалов. Если организации действительно нужен внешний сценарий работы с конкретным набором данных, для него следует спроектировать отдельный инструмент с понятной схемой, проверками и областью доступа, а не открывать общий внутренний источник.
Общая бизнес-логика может переиспользоваться
Разные контуры не обязаны дублировать реализацию. Модуль может направлять внутренний и внешний вызов в одну проверенную бизнес-операцию, сохраняя транзакции, валидацию и предметные ограничения. Перед этим внешний адаптер фильтрует список команд, проверяет аргументы, связывает вызов с подтверждённой личностью и применяет дополнительные ограничения публикации.
Это даёт важный инженерный баланс. Компания не поддерживает две расходящиеся версии операции обновления статьи или элемента Roadmap, но и не считает внутреннюю функцию автоматически безопасной для внешнего использования. Переиспользуется логика, а не доверие.
Ошибки и результаты также имеют границы
Внешний MCP возвращает результат как данные минимального доверия. Даже успешный ответ сервера не превращает текст внутри результата в инструкцию для внешнего agent. Ошибка одного инструмента изолируется как результат конкретного вызова и не должна открывать доступ к соседним операциям. Для изменений используются отдельные разрешения, а особенно чувствительные действия могут вообще не публиковаться.
Во внутреннем контуре модель также получает структурированные результаты, но интерфейс сотрудника может показывать только безопасную проекцию активности. Подробные аргументы и технические данные требуют отдельного права. Таким образом, оба контура наблюдаемы, но каждый раскрывает ровно тот уровень информации, который нужен его аудитории.
Где нужен каждый вариант
- Внутренний AI подходит для сотрудников, которые работают в административных и операционных поверхностях Sapphire I.C.D.S. и нуждаются в контексте платформы.
- Внешний MCP подходит для подключения совместимых AI-клиентов, инструментов разработчиков и автоматизированных рабочих сред.
- Оба контура могут сосуществовать: организация не обязана заменять встроенный agent внешним сервисом или наоборот.
- Опциональная интеграция с ChatGPT является примером внешнего клиента, а не переносом внутреннего AI в стороннюю систему.
Практическое правило для архитектуры
Перед публикацией операции технический руководитель должен ответить на четыре вопроса: нужен ли ей внутренний контекст, кто владеет сессией, какой минимальный набор данных требуется и как отзывается доступ. Если операция зависит от закрытой памяти или внутренних инструкций, она остаётся во встроенном AI. Если внешний сценарий оправдан, создаётся явный MCP-контракт с ограниченной схемой и отдельной политикой.
Для собственника бизнеса разделение означает возможность использовать внешние AI-сервисы без отказа от независимости Sapphire I.C.D.S. Для службы безопасности — понятные границы публикации. Для разработчиков — повторное использование штатной бизнес-логики без смешения контекстов. Именно поэтому внутренний AI и внешний MCP дополняют друг друга, но не должны превращаться в один неразличимый канал.