Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Importante
Plugins só são suportados como ações em agentes declarativos. Eles não estão habilitados no Microsoft 365 Copilot.
Na primeira vez que o Microsoft 365 Copilot usa um MCP (Protocolo de Contexto de Modelo) ou um plug-in de API, ele notifica o usuário e solicita que ele permita ou cancele a operação. Se o usuário permitir que o Copilot se conecte ao plug-in, todas as operações futuras que recuperam dados (operações HTTP GET) não exigirão nenhuma confirmação. Outras operações HTTP solicitam o usuário, mostrando os dados a serem enviados e dando ao usuário a opção de permitir ou recusar.
Os desenvolvedores de plug-ins podem alterar esse comportamento para operações individuais em seu servidor MCP ou API. Os desenvolvedores também podem personalizar o texto que o Copilot exibe para o usuário como parte do prompt de confirmação.
Substituindo o comportamento do prompt
Os desenvolvedores podem controlar se o Microsoft 365 Copilot solicita ao usuário a confirmação (após o prompt inicial pela primeira vez) de uma ferramenta específica definindo a readOnlyHint propriedade como true para a ferramenta na resposta do tools/list servidor MCP. Para obter mais informações, consulte a referência do esquema MCP.
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"tools": [
{
"name": "get_weather",
"title": "Weather Information Provider",
"description": "Get current weather information for a location",
"annotations": {
"readOnlyHint": true,
},
"inputSchema": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "City name or zip code"
}
},
"required": ["location"]
}
}
]
}
}
Personalizando o texto de confirmação
Os desenvolvedores podem especificar o texto de confirmação definindo a body propriedade no objeto Confirmation no objeto Function capabilities da função no manifesto do plug-in. O valor de body deve ser indicativo do que a função faz. Se essa propriedade não estiver presente no manifesto, a description propriedade no objeto Function será usada.
{
"name": "GetBudgets",
"description": "Returns details including name and available funds of budgets, optionally filtered by budget name",
"capabilities": {
"confirmation": {
"type": "AdaptiveCard",
"title": "Search budgets",
"body": "Do you want to allow searching for budgets?"
}
}
}
Localizando o texto de confirmação
Você pode configurar cadeias de caracteres localizáveis para serem usadas como prompts de confirmação. As etapas a seguir descrevem o processo.
Etapa 1: usar chaves de localização no manifesto do plug-in
No manifesto do plug-in (por exemplo, plugin.json), substitua as cadeias de caracteres literais por chaves de localização usando o formato:
{
"schema_version": "v2.3",
"name_for_human": "[[plugin_name]]",
"description_for_human": "[[plugin_description]]"
}
Essas chaves (por exemplo, plugin_name e plugin_description) devem corresponder às entradas no arquivo de localização e estar em conformidade com o regex ^[a-zA-Z_][a-zA-Z0-9_]*.
Etapa 2: criar arquivos de localização
Crie seus arquivos de localização no formato JSON e inclua uma localizationKeys propriedade que mapeie cada chave para sua cadeia de caracteres traduzida, conforme mostrado no exemplo a seguir.
{
"localizationKeys": {
"plugin_name": "Weather Assistant",
"plugin_description": "Provides weather updates and forecasts."
}
}
Você pode criar vários arquivos de localização para diferentes idiomas (por exemplo, en.json, fr.json, de.json) e referenciá-los na configuração do plug-in.
Etapa 3: adicionar localizationInfo ao manifesto do aplicativo
Inclua uma seção localizationInfo no manifesto do aplicativo que faça referência aos arquivos de localização. Por exemplo,
"localizationInfo": {
"defaultLanguageTag": "en",
"defaultLanguageFile": "en.json",
"additionalLanguages": [
{
"languageTag": "fr",
"file": "fr.json"
}
]
}