Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Подключаемые модули позволяют декларативным агентам в Microsoft 365 Copilot взаимодействовать с серверами протокола контекста модели (MCP) или REST API с описанием OpenAPI. С помощью подключаемого модуля пользователи могут запрашивать у декларативного агента не только запрос сведений к серверу MCP или REST API, но и создание, обновление и удаление данных и объектов. Все, что может сделать сервер MCP или REST API, доступно через запросы на естественном языке.
Важно!
Подключаемые модули поддерживаются только в качестве действий внутри декларативных агентов. Они не включены в Microsoft 365 Copilot.
Подключаемый модуль предоставляет манифест подключаемого модуля, который Copilot использует для изучения возможностей MCP-сервера или API-интерфейса подключаемого модуля. Затем Copilot может решить, когда установленный и включенный подключаемый модуль подходит для ответа на тот или иной запрос. Дополнительные сведения о файле манифеста, необходимом плагину, см. в разделе Схема манифеста плагина для Microsoft 365 Copilot.
Как Copilot обнаруживает инструменты сервера MCP
Для плагинов на основе MCP-сервера Copilot по умолчанию динамически разрешает инструменты плагина во время выполнения непосредственно с сервера MCP. Динамическое обнаружение средств означает, что вы получаете новейшие инструменты, предоставляемые сервером MCP, не дожидаясь переупаковки и повторной публикации агента. При создании агента разработчик может при желании закрепить фиксированный набор инструментов в манифесте плагина. Подключаемые модули REST API всегда используют инструменты, определенные в манифесте подключаемого модуля. Дополнительные сведения см. в статьях "Создание подключаемых модулей с сервера MCP для Microsoft 365 Copilot" и "Динамическое обнаружение инструментов для подключаемых модулей MCP" в Microsoft 365 Copilot.
Это значение по умолчанию применяется только к подключаемым модулям. Она не распространяется на соединители агентов, которые регистрируют сервер MCP через agentConnectors узел в манифесте приложения Microsoft 365, а не через манифест подключаемого модуля. Для соединителей агентов для динамического обнаружения средств требуется манифест приложения версии 1.29 или более поздней и узел, который это разрешает. Дополнительные сведения см. в статье Регистрация серверов MCP в качестве соединителей агентов.
Пример подключаемого модуля
Рассмотрите возможность использования сервера бюджетов MCP, который позволяет запрашивать и создавать бюджеты, выставлять счета за расходы или добавлять средства к существующим бюджетам. Запрос "Сколько осталось в бюджете на поездки Contoso" может вызвать плагин бюджета, вызвав средство get-budgets .
POST /mcp
Content-Type: application/json
{
"method": "tools/call",
"params": {
"name": "get-budgets",
"arguments": {
"budgetName": "contoso travel"
}
}
}
Copilot использует ответ из результата средства для создания своего ответа: "В бюджете на поездки Contoso в настоящее время предусмотрено 5 000 долларов США свободных средств. Если вам нужно распределить средства по определенным категориям или отслеживать расходы, я также могу помочь вам с этим. Просто дайте мне знать, чем я могу помочь!»
Запрос "Снять 500 долларов с бюджета поездки Contoso за авиабилет Меган" можно перевести в следующий вызов средства MCP.
POST /mcp
Content-Type: application/json
{
"method": "tools/call",
"params": {
"name": "charge-budget",
"arguments": {
"budgetName": "contoso travel",
"amount": 500,
"description": "Megan's airline ticket"
}
}
}
Copilot отвечает пользователю, используя возвращенную информацию: «Платеж в размере 500 долларов за авиабилет Меган успешно обработан. В бюджете на поездки Contoso теперь осталось 4500 долларов США. Если вам нужно совершить еще какие-либо транзакции или вам нужна дополнительная помощь с вашим бюджетом, пожалуйста, дайте мне знать!»
Как работают подключаемые модули
Пользователь спрашивает агента: «Сколько осталось в бюджете на ремонт вестибюля Fourth Coffee?».
Для плагина MCP, использующего динамическое обнаружение инструментов, агент получает текущие определения инструментов с сервера MCP плагина во время выполнения и проверяет любые новые или измененные инструменты перед их использованием. Для подключаемого модуля с закрепленным набором инструментов или для подключаемого модуля REST API агент использует инструменты, определенные в манифесте подключаемого модуля.
Агент определяет плагин, связанный с бюджетом, из доступных плагинов, который имеет MCP-сервер, инструмент или API
GetBudgetдля получения сведений о бюджете. Он сопоставляет части вопроса пользователя с параметрами функции:budgetName="".Агент просит пользователя разрешить отправку в
Fourth Coffee lobby renovationплагин.Пользователь разрешает однократный обмен данными с подключаемым модулем или всегда разрешает отправку данных для этой функции.
Если MCP-сервер или API плагина требует аутентификации, плагин запрашивает токен или ключ API из хранилища токенов.
Хранилище маркеров возвращает маркер или ключ. При необходимости хранилище маркеров заставляет агент предлагать пользователю войти в систему.
Агент отправляет запрос на MCP-сервер или API-интерфейс подключаемого модуля, размещенный за пределами Microsoft 365.
MCP-сервер или API возвращает ответ.
{ "name": "Fourth Coffee lobby renovation", "availableFunds": 5000.00 }Агент формирует ответ на основе ответа MCP-сервера или API.
Агент отправляет ответ: «Свободные средства, оставшиеся в бюджете на ремонт вестибюля Fourth Coffee, составляют 5 000 долларов».
Подтверждение действий
Copilot запрашивает пользователя перед первой отправкой любых данных в плагин.
После того как пользователь подтвердит подключение, средства и API сервера MCP, которые только извлекают данные, не требуют подтверждения, в то время как инструменты и API, которые изменяют данные, требуют подтверждения. Разработчики плагинов могут переопределять эти значения по умолчанию. Дополнительные сведения см. в разделе "Запросы на подтверждение для MCP и плагинов API для Microsoft 365 Copilot".
Настройка презентации ответа
Copilot создает ответы в ходе беседы, используя данные сервера MCP или ответы API. Подключаемые модули могут настраивать способ представления этих данных, и механизм зависит от типа подключаемого модуля.
Подключаемые модули MCP могут предоставлять насыщенные интерактивные ответы с помощью приложений MCP — мини-приложений пользовательского интерфейса, которые сервер MCP возвращает вместе с результатом средства во время выполнения. Поскольку мини-приложение доставляется вместе с ответом инструмента, а не определяется в манифесте, приложения MCP работают независимо от того, использует ли подключаемый модуль закрепленный набор инструментов или динамическое обнаружение средств.
Подключаемые модули API могут предоставлять шаблоныадаптивных карточек в манифесте подключаемого модуля для отображения данных в структурированном виде. Поскольку шаблоны определяются для операций, объявленных в манифесте, этот подход применим к подключаемым модулям API и MCP-плагинам, использующим закрепленный набор инструментов.
Для ссылок, связанных с источниками, для любого типа плагина Copilot использует семантику ответа и может автоматически выводить метаданные цитирования из инструмента или ответа API. Автоматический вывод особенно полезен для подключаемых модулей MCP, использующих динамическое обнаружение инструментов, где инструменты разрешаются во время выполнения и не требуют настройки определения инструмента манифеста. Дополнительные сведения см. в статье Отображение ссылок с семантикой ответа.
Обработка URL-адресов в ответах на действия
Чат Microsoft 365 Copilot может отображать URL-адреса, возвращаемые в составе ответов на действия, будь то из плагинов MCP, плагинов API, соединителей или потоков, в виде интерактивных ссылок. Среда выполнения Copilot управляет этим поведением и не оценивает его на каких-либо доменах, объявленных подключаемым модулем (например, servers в разделе описания OpenAPI плагина API).
Правила безопасности, доверия и политики платформы определяют поведение при отображении URL-адресов для ответов на действия и могут со временем изменяться. Не полагайтесь на интерактивные URL-адреса в ответах на действия в критически важных для рабочей среды сценариях.
Помощь оркестратору Copilot в выборе подключаемого модуля
Microsoft 365 Copilot может однозначно выбрать нужный навык из множества навыков в своем репертуаре. Но как убедиться, что Copilot выберет ваш плагин для предоставления нужного навыка?
Ответ заключается в том, как вы описываете свой плагин, его навыки и параметры для инициации навыков. Укажите краткие и точные описания в манифесте подключаемого модуля, чтобы оркестратор Copilot знал, когда и как вызывать подключаемый модуль.
Способ описания подключаемого модуля для оркестратора зависит от типа создаваемого подключаемого модуля, как описано в следующей таблице.
| Тип подключаемого модуля | Автор описания | Дополнительные сведения |
|---|---|---|
| Подключаемые модули API | Описание OpenAPI | Как сделать документ OpenAPI эффективным при расширении Copilot |
| Действия Copilot Studio | Имена и описания на карте бесед Copilot Studio | Управляйте темами и действиями Copilot с помощью генеративного ИИ |
| Подключаемые модули расширений для сообщений | Манифест приложения | Руководство по подключаемым модулям расширения сообщений |
Создание подключаемого модуля декларативного агента
Разработчики могут использовать два инструмента для создания пакетов плагинов API:
- Набор средств агентов Microsoft 365 в Visual Studio или Visual Studio Code создает пакеты подключаемых модулей на основе существующего MCP-сервера или описания OpenAPI. В наборе средств агентов также есть стартовые проекты с примером API и соответствующим пакетом плагинов.
- Kiota — это инструмент командной строки и расширение Visual Studio Code, которое создает пакеты подключаемых модулей на основе существующего описания OpenAPI.
Совет
Средства разработчика Work IQ (предварительная версия) — вы также можете прикреплять и проверка действия из командной строки.
wiqd agent add action добавляет действие в декларативный агент и wiqd agent validate --mode deep подтверждает, что описание OpenAPI действия достижимо и правильно сформатировано, а манифест плагина со ссылкой объявляет правильную схему аутентификации. Также существует альфа-дерево wiqd plugin команд, но его интерфейс может быть изменен. Дополнительные сведения см. в документации по средствам разработчика Work IQ.
Ограничения
Если декларативный агент включает до пяти плагинов, определенных в манифесте декларативного агента, агент всегда внедряет плагины в запрос. Когда агент включает более пяти плагинов, он использует семантическое сопоставление. Семантическое сопоставление основано на описании плагина, а не на каких-либо отдельных функциях или инструментах внутри самого плагина.
Плагин может включать в себя неограниченное количество функций или инструментов MCP. Возвращаются все функции или инструменты соответствующего подключаемого модуля, даже если сопоставлена только одна. Для подключаемого модуля MCP, использующего динамическое обнаружение инструментов, средства, разрешенные сервером MCP во время выполнения, учитываются в этом общем количестве. Из-за ограничений окна маркера качество ответов может ухудшиться, если включено более 10 функций или средств.
Окно маркера для входных и выходных данных плагина отсекает большой объем содержимого. Функциональный предел может изменяться по мере совершенствования моделей и в зависимости от любых системных издержек. Оптимизируйте маркеры небольшой длины или выберите параметры расширяемости, позволяющие при необходимости выполнять потоковую передачу большого объема содержимого.
Связанные материалы
- Создавайте подключаемые модули на основе сервера MCP для Microsoft 365 Copilot
- Добавление приложений MCP к декларативным агентам в Microsoft 365 Copilot
- Динамическое обнаружение инструментов для подключаемых модулей MCP в Microsoft 365 Copilot
- Создание подключаемых модулей API из существующего API для Microsoft 365 Copilot
- Создание подключаемых модулей API с помощью нового API для Microsoft 365 Copilot
- Схема манифеста подключаемого модуля для Microsoft 365 Copilot
- Написание эффективных инструкций для декларативных агентов с помощью API-плагинов