Ferramenta: update_agent
Atualiza o agente especificado. Sempre transmita uma máscara de atualização na entrada.
O exemplo de código a seguir mostra como usar curl para chamar a ferramenta MCP update_agent.
| Solicitação curl |
|---|
curl --location 'https://ces.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "update_agent", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
Esquema de entrada
Mensagem de solicitação para AgentService.UpdateAgent.
UpdateAgentRequest
| Representação JSON |
|---|
{
"agent": {
object ( |
| Campos | |
|---|---|
agent |
Obrigatório. O agente a ser atualizado. |
updateMask |
Opcional. A máscara de campo é usada para controlar quais campos são atualizados. Se a máscara não estiver presente, todos os campos serão atualizados. Uma lista separada por vírgulas de nomes de campos totalmente qualificados. Exemplo: |
Agente
| Representação JSON |
|---|
{ "name": string, "displayName": string, "description": string, "modelSettings": { object ( |
| Campos | |
|---|---|
name |
Identificador. O identificador exclusivo do agente. Formato: |
displayName |
Obrigatório. Nome de exibição do agente. |
description |
Opcional. Descrição do agente legível por humanos. |
modelSettings |
Opcional. Configurações do modelo de LLM. |
instruction |
Opcional. Instruções para o modelo de LLM orientar o comportamento do agente. |
tools[] |
Opcional. Lista de ferramentas disponíveis para o agente. Formato: |
childAgents[] |
Opcional. Lista de agentes filhos na árvore de agentes. Formato: |
beforeAgentCallbacks[] |
Opcional. Os callbacks a serem executados antes da chamada do agente. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados. |
afterAgentCallbacks[] |
Opcional. Os callbacks a serem executados depois que o agente for chamado. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados. |
beforeModelCallbacks[] |
Opcional. Os callbacks a serem executados antes da chamada do modelo. Se houver várias chamadas para o modelo, o callback será executado várias vezes. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados. |
afterModelCallbacks[] |
Opcional. Os callbacks a serem executados depois que o modelo é chamado. Se houver várias chamadas para o modelo, o callback será executado várias vezes. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados. |
beforeToolCallbacks[] |
Opcional. Os callbacks a serem executados antes da invocação da ferramenta. Se houver várias invocações de ferramentas, o callback será executado várias vezes. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados. |
afterToolCallbacks[] |
Opcional. Os callbacks a serem executados depois que a ferramenta é invocada. Se houver várias invocações de ferramentas, o callback será executado várias vezes. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados. |
createTime |
Apenas saída. Carimbo de data/hora em que o agente foi criado. Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
updateTime |
Apenas saída. Carimbo de data/hora da última atualização do agente. Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
guardrails[] |
Opcional. Lista de mecanismos de segurança para o agente. Formato: |
etag |
Etag usada para garantir que o objeto não foi alterado durante uma operação de leitura-modificação-gravação. Se a ETag estiver vazia, a atualização vai substituir todas as mudanças simultâneas. |
toolsets[] |
Opcional. Lista de conjuntos de ferramentas para o agente. |
generatedSummary |
Apenas saída. Se o agente for gerado pelo assistente de LLM, esse campo vai conter um resumo descritivo da geração. |
transferRules[] |
Opcional. Regras de transferência de agente. Se várias regras corresponderem, a primeira da lista será usada. |
validationErrors[] |
Apenas saída. Erros ou configurações incorretas no agente que podem afetar a qualidade dele. |
Campo de união agent_type. O tipo de agente. agent_type pode ser apenas de um dos tipos a seguir: |
|
llmAgent |
Opcional. O tipo de agente padrão. |
remoteDialogflowAgent |
Opcional. O agente Dialogflow remoto a ser usado para a execução do agente. Se esse campo for definido, todas as outras propriedades no nível do agente serão ignoradas. Observação: se o agente do Dialogflow estiver em um projeto diferente do app, conceda |
remoteA2aAgent |
Opcional. O agente A2A remoto a ser usado para a execução do agente. |
RemoteDialogflowAgent
| Representação JSON |
|---|
{ "agent": string, "flowId": string, "environmentId": string, "inputVariableMapping": { string: string, ... }, "outputVariableMapping": { string: string, ... }, "respectResponseInterruptionSettings": boolean, "languageCodeVariable": string } |
| Campos | |
|---|---|
agent |
Obrigatório. O nome do recurso do agente do Dialogflow. Formato: |
flowId |
Opcional. O ID do fluxo no agente do Dialogflow. |
environmentId |
Opcional. O ID do ambiente do agente do Dialogflow a ser usado para a execução do agente. Se não for especificado, o ambiente de rascunho será usado. |
inputVariableMapping |
Opcional. O mapeamento dos nomes das variáveis do app para os nomes dos parâmetros da sessão do Dialogflow a serem enviados ao agente do Dialogflow como entrada. Um objeto com uma lista de pares |
outputVariableMapping |
Opcional. O mapeamento dos nomes dos parâmetros da sessão do Dialogflow para os nomes das variáveis do app que serão enviadas de volta ao agente do CES após o término da execução do agente do Dialogflow. Um objeto com uma lista de pares |
respectResponseInterruptionSettings |
Opcional. Indica se as configurações de interrupção no nível da mensagem configuradas no agente do Dialogflow devem ser respeitadas.
|
languageCodeVariable |
Opcional. O nome da variável que contém o código do idioma a ser usado na sessão do Dialogflow. Se não for especificado, o código de idioma padrão do agente do Dialogflow será usado. |
InputVariableMappingEntry
| Representação JSON |
|---|
{ "key": string, "value": string } |
| Campos | |
|---|---|
key |
|
value |
|
OutputVariableMappingEntry
| Representação JSON |
|---|
{ "key": string, "value": string } |
| Campos | |
|---|---|
key |
|
value |
|
RemoteA2aAgent
| Representação JSON |
|---|
{
"a2aConfig": {
object ( |
| Campos | |
|---|---|
a2aConfig |
Obrigatório. A configuração da conexão A2A. |
RemoteA2aConfig
| Representação JSON |
|---|
{ "apiAuthentication": { object ( |
| Campos | |
|---|---|
apiAuthentication |
Opcional. Configuração de autenticação para chamar o agente remoto. Opcional se a referência do registro já processar a autenticação. |
inputVariableMapping |
Opcional. Mapeamento de nomes de variáveis de entrada do agente remoto para nomes de variáveis do GECX. Um objeto com uma lista de pares |
outputVariableMapping |
Opcional. Mapeamento de nomes de variáveis de saída do agente remoto para nomes de variáveis do GECX. Um objeto com uma lista de pares |
streamingEnabled |
Opcional. Se o streaming está ativado para o agente remoto. |
contextId |
Opcional. Se não estiver vazio, as interações com o agente A2A remoto vão usar esse ID de contexto. Esse campo context_id pode se referir a uma variável de sessão, como |
Campo de união agent_spec. Especificação do agente remoto. agent_spec pode ser apenas de um dos tipos a seguir: |
|
agentCard |
Opcional. O card completo do agente definido inline. |
agentRegistry |
Opcional. Referência ao agente no Agent Registry. Formato: |
AgentCard
| Representação JSON |
|---|
{ "name": string, "description": string, "supportedInterfaces": [ { object ( |
| Campos | |
|---|---|
name |
Obrigatório. Um nome do agente legível por humanos. |
description |
Obrigatório. Uma descrição do domínio de ação/espaço de solução do agente. |
supportedInterfaces[] |
Obrigatório. Lista ordenada de interfaces compatíveis. A primeira entrada é a preferida. |
version |
Obrigatório. A versão do agente. |
skills[] |
Obrigatório. As habilidades representam uma unidade de capacidade que um agente pode realizar. Isso pode ser um pouco abstrato, mas representa um conjunto mais focado de ações que o agente tem grande probabilidade de realizar com sucesso. |
AgentInterface
| Representação JSON |
|---|
{ "url": string, "protocolBinding": string, "tenant": string, "protocolVersion": string } |
| Campos | |
|---|---|
url |
Obrigatório. O URL em que essa interface está disponível. Precisa ser um URL HTTPS absoluto válido em produção. Exemplo: "https://api.example.com/a2a/v1", "https://grpc.example.com/a2a" |
protocolBinding |
Obrigatório. A vinculação de protocolo compatível com este URL. Essa é uma string de formulário aberta, que pode ser facilmente estendida para outras vinculações de protocolo. Os principais com suporte oficial são |
tenant |
ID do locatário a ser usado na solicitação ao chamar o agente. |
protocolVersion |
Obrigatório. A versão do protocolo A2A que essa interface expõe. Use a versão secundária mais recente compatível por versão principal. Exemplos: "0.3", "1.0" |
AgentSkill
| Representação JSON |
|---|
{ "id": string, "name": string, "description": string, "tags": [ string ], "examples": [ string ], "inputModes": [ string ], "outputModes": [ string ] } |
| Campos | |
|---|---|
id |
Obrigatório. Um identificador exclusivo da habilidade do agente. |
name |
Obrigatório. Um nome legível para a habilidade. |
description |
Obrigatório. Uma descrição detalhada da habilidade. |
tags[] |
Obrigatório. Um conjunto de palavras-chave que descrevem as funcionalidades da skill. |
examples[] |
Exemplos de comandos ou cenários que essa habilidade pode processar. |
inputModes[] |
O conjunto de tipos de mídia de entrada compatíveis com essa habilidade, substituindo os padrões do agente. |
outputModes[] |
O conjunto de tipos de mídia de saída compatíveis com essa habilidade, substituindo os padrões do agente. |
ApiAuthentication
| Representação JSON |
|---|
{ // Union field |
| Campos | |
|---|---|
Campo de união auth_config. A configuração de autenticação. auth_config pode ser apenas de um dos tipos a seguir: |
|
apiKeyConfig |
Opcional. Configuração para autenticação de chave de API. |
oauthConfig |
Opcional. Configuração para OAuth. |
serviceAgentIdTokenAuthConfig |
Opcional. Configuração para autenticação de token de ID gerada pelo agente de serviço do CES. |
serviceAccountAuthConfig |
Opcional. Configuração para autenticação de conta de serviço. |
bearerTokenConfig |
Opcional. Configuração para autenticação de token do portador. |
ApiKeyConfig
| Representação JSON |
|---|
{
"keyName": string,
"apiKeySecretVersion": string,
"requestLocation": enum ( |
| Campos | |
|---|---|
keyName |
Obrigatório. O nome do parâmetro ou do cabeçalho da chave de API. Por exemplo, Se a solicitação de API for "https://example.com/act?X-Api-Key= |
apiKeySecretVersion |
Obrigatório. O nome do recurso da versão do secret do Secret Manager que armazena a chave de API. Formato: Observação: conceda o papel |
requestLocation |
Obrigatório. Localização da chave na solicitação. |
OAuthConfig
| Representação JSON |
|---|
{
"oauthGrantType": enum ( |
| Campos | |
|---|---|
oauthGrantType |
Obrigatório. Tipos de permissão de acesso OAuth. |
clientId |
Obrigatório. O ID do cliente do provedor OAuth. |
clientSecretVersion |
Obrigatório. O nome do recurso da versão do secret do Secret Manager que armazena a chave secreta do cliente. Formato: Observação: conceda o papel |
tokenEndpoint |
Obrigatório. O endpoint do token no provedor OAuth para troca por um token de acesso. |
scopes[] |
Opcional. Os escopos do OAuth a serem concedidos. |
ServiceAccountAuthConfig
| Representação JSON |
|---|
{ "serviceAccount": string, "scopes": [ string ] } |
| Campos | |
|---|---|
serviceAccount |
Obrigatório. O endereço de e-mail da conta de serviço usada para autenticação. O CES usa essa conta de serviço para trocar um token de acesso, que é enviado no cabeçalho A conta de serviço precisa ter o papel |
scopes[] |
Opcional. Os escopos do OAuth a serem concedidos. Se não for especificado, o escopo padrão |
BearerTokenConfig
| Representação JSON |
|---|
{ "token": string } |
| Campos | |
|---|---|
token |
Obrigatório. O token do portador. Precisa estar no formato |
InputVariableMappingEntry
| Representação JSON |
|---|
{ "key": string, "value": string } |
| Campos | |
|---|---|
key |
|
value |
|
OutputVariableMappingEntry
| Representação JSON |
|---|
{ "key": string, "value": string } |
| Campos | |
|---|---|
key |
|
value |
|
ModelSettings
| Representação JSON |
|---|
{ "model": string, "thinkingLevel": enum ( |
| Campos | |
|---|---|
model |
Opcional. O modelo de LLM que o agente deve usar. Se não for definido, o agente vai herdar o modelo do agente principal. |
thinkingLevel |
Opcional. O nível de raciocínio do modelo. |
Campo de união
|
|
temperature |
Opcional. Se definido, essa temperatura será usada para o modelo de LLM. A temperatura controla a aleatoriedade das respostas do modelo. Temperaturas mais baixas produzem respostas mais previsíveis. Temperaturas mais altas produzem respostas mais criativas. |
Callback
| Representação JSON |
|---|
{ "description": string, "disabled": boolean, "proactiveExecutionEnabled": boolean, // Union field |
| Campos | |
|---|---|
description |
Opcional. Descrição legível da callback. |
disabled |
Opcional. Indica se o callback está desativado. Callbacks desativados são ignorados pelo agente. |
proactiveExecutionEnabled |
Opcional. Se ativado, o callback também será executado em saídas intermediárias do modelo. Essa configuração afeta apenas a chamada de retorno "After model". ATIVE COM CUIDADO. Normalmente, a chamada de retorno do modelo só precisa ser executada depois de receber todas as respostas do modelo. Ativar a execução proativa pode ter implicações negativas no custo e na latência da execução. Portanto, essa opção só deve ser ativada em situações raras. |
Campo de união callback. O callback a ser executado. callback pode ser apenas de um dos tipos a seguir: |
|
pythonCode |
Obrigatório. O código Python a ser executado para o callback. |
Carimbo de data/hora
| Representação JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campos | |
|---|---|
seconds |
Representa os segundos do horário UTC desde a época Unix 1970-01-01T00:00:00Z. Precisa estar entre -62135596800 e 253402300799 (o que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z). |
nanos |
Frações não negativas de um segundo com resolução de nanossegundos. Esse campo é a parte de nanossegundos da duração, não uma alternativa aos segundos. Os valores de segundos negativos com frações ainda precisam ter valores em nanossegundos não negativos que representam períodos posteriores. O valor precisa ser de 0 a 999.999.999. |
AgentToolset
| Representação JSON |
|---|
{ "toolset": string, "toolIds": [ string ] } |
| Campos | |
|---|---|
toolset |
Obrigatório. O nome do recurso do conjunto de ferramentas. Formato: |
toolIds[] |
Opcional. Os IDs das ferramentas para filtrar o conjunto de ferramentas. |
TransferRule
| Representação JSON |
|---|
{ "childAgent": string, "direction": enum ( |
| Campos | |
|---|---|
childAgent |
Obrigatório. O nome do recurso do agente secundário a que a regra se aplica. Formato: |
direction |
Obrigatório. A direção da transferência. |
Campo de união rule_type. O tipo de regra. rule_type pode ser apenas de um dos tipos a seguir: |
|
deterministicTransfer |
Opcional. Uma regra que transfere imediatamente para o agente de destino quando a condição é atendida. |
disablePlannerTransfer |
Opcional. Regra que impede a transferência do planejador para o agente de destino. |
DeterministicTransfer
| Representação JSON |
|---|
{ // Union field |
| Campos | |
|---|---|
Campo de união condition_type. A condição a ser avaliada. condition_type pode ser apenas de um dos tipos a seguir: |
|
expressionCondition |
Opcional. Uma regra que avalia uma condição de estado da sessão. Se a condição for avaliada como verdadeira, a transferência vai ocorrer. |
pythonCodeCondition |
Opcional. Uma regra que usa um bloco de código Python para avaliar as condições. Se a condição for avaliada como verdadeira, a transferência vai ocorrer. |
ExpressionCondition
| Representação JSON |
|---|
{ "expression": string } |
| Campos | |
|---|---|
expression |
Obrigatório. A representação de string da condição cloud.api.Expression. |
PythonCodeCondition
| Representação JSON |
|---|
{ "pythonCode": string } |
| Campos | |
|---|---|
pythonCode |
Obrigatório. O código Python a ser executado. |
DisablePlannerTransfer
| Representação JSON |
|---|
{
"expressionCondition": {
object ( |
| Campos | |
|---|---|
expressionCondition |
Obrigatório. Se a condição for avaliada como verdadeira, o planejador não poderá ser transferido para o agente de destino. |
FieldMask
| Representação JSON |
|---|
{ "paths": [ string ] } |
| Campos | |
|---|---|
paths[] |
O conjunto de caminhos de máscara de campo. |
RequestLocation
O local da chave de API na solicitação.
| Tipos enumerados | |
|---|---|
REQUEST_LOCATION_UNSPECIFIED |
Não especificado. Esse valor não deve ser usado. |
HEADER |
Representa a chave no cabeçalho HTTP. |
QUERY_STRING |
Representa a chave na string de consulta. |
OauthGrantType
Tipos de permissão de acesso OAuth. Somente a concessão de credenciais de cliente é aceita.
| Tipos enumerados | |
|---|---|
OAUTH_GRANT_TYPE_UNSPECIFIED |
Não especificado. O padrão é CLIENT_CREDENTIAL. |
CLIENT_CREDENTIAL |
Representa o fluxo de credenciais do cliente. |
ThinkingLevel
Configuração do nível de raciocínio para o modelo.
| Tipos enumerados | |
|---|---|
THINKING_LEVEL_UNSPECIFIED |
O nível de raciocínio não foi especificado. |
DEFAULT |
Nível de raciocínio padrão. |
LOW |
Nível de raciocínio baixo. |
MEDIUM |
Nível de raciocínio médio. |
HIGH |
Nível de raciocínio alto. |
Direção
A direção da transferência.
| Tipos enumerados | |
|---|---|
DIRECTION_UNSPECIFIED |
Direção não especificada. |
PARENT_TO_CHILD |
Transferência do agente principal para o agente secundário. |
CHILD_TO_PARENT |
Transferir do agente secundário para o agente pai. |
Esquema de saída
Um agente atua como o elemento básico que fornece instruções ao modelo de linguagem grande (LLM) para executar tarefas específicas.
Agente
| Representação JSON |
|---|
{ "name": string, "displayName": string, "description": string, "modelSettings": { object ( |
| Campos | |
|---|---|
name |
Identificador. O identificador exclusivo do agente. Formato: |
displayName |
Obrigatório. Nome de exibição do agente. |
description |
Opcional. Descrição do agente legível por humanos. |
modelSettings |
Opcional. Configurações do modelo de LLM. |
instruction |
Opcional. Instruções para o modelo de LLM orientar o comportamento do agente. |
tools[] |
Opcional. Lista de ferramentas disponíveis para o agente. Formato: |
childAgents[] |
Opcional. Lista de agentes filhos na árvore de agentes. Formato: |
beforeAgentCallbacks[] |
Opcional. Os callbacks a serem executados antes da chamada do agente. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados. |
afterAgentCallbacks[] |
Opcional. Os callbacks a serem executados depois que o agente for chamado. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados. |
beforeModelCallbacks[] |
Opcional. Os callbacks a serem executados antes da chamada do modelo. Se houver várias chamadas para o modelo, o callback será executado várias vezes. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados. |
afterModelCallbacks[] |
Opcional. Os callbacks a serem executados depois que o modelo é chamado. Se houver várias chamadas para o modelo, o callback será executado várias vezes. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados. |
beforeToolCallbacks[] |
Opcional. Os callbacks a serem executados antes da invocação da ferramenta. Se houver várias invocações de ferramentas, o callback será executado várias vezes. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados. |
afterToolCallbacks[] |
Opcional. Os callbacks a serem executados depois que a ferramenta é invocada. Se houver várias invocações de ferramentas, o callback será executado várias vezes. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados. |
createTime |
Apenas saída. Carimbo de data/hora em que o agente foi criado. Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
updateTime |
Apenas saída. Carimbo de data/hora da última atualização do agente. Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
guardrails[] |
Opcional. Lista de mecanismos de segurança para o agente. Formato: |
etag |
Etag usada para garantir que o objeto não foi alterado durante uma operação de leitura-modificação-gravação. Se a ETag estiver vazia, a atualização vai substituir todas as mudanças simultâneas. |
toolsets[] |
Opcional. Lista de conjuntos de ferramentas para o agente. |
generatedSummary |
Apenas saída. Se o agente for gerado pelo assistente de LLM, esse campo vai conter um resumo descritivo da geração. |
transferRules[] |
Opcional. Regras de transferência de agente. Se várias regras corresponderem, a primeira da lista será usada. |
validationErrors[] |
Apenas saída. Erros ou configurações incorretas no agente que podem afetar a qualidade dele. |
Campo de união agent_type. O tipo de agente. agent_type pode ser apenas de um dos tipos a seguir: |
|
llmAgent |
Opcional. O tipo de agente padrão. |
remoteDialogflowAgent |
Opcional. O agente Dialogflow remoto a ser usado para a execução do agente. Se esse campo for definido, todas as outras propriedades no nível do agente serão ignoradas. Observação: se o agente do Dialogflow estiver em um projeto diferente do app, conceda |
remoteA2aAgent |
Opcional. O agente A2A remoto a ser usado para a execução do agente. |
RemoteDialogflowAgent
| Representação JSON |
|---|
{ "agent": string, "flowId": string, "environmentId": string, "inputVariableMapping": { string: string, ... }, "outputVariableMapping": { string: string, ... }, "respectResponseInterruptionSettings": boolean, "languageCodeVariable": string } |
| Campos | |
|---|---|
agent |
Obrigatório. O nome do recurso do agente do Dialogflow. Formato: |
flowId |
Opcional. O ID do fluxo no agente do Dialogflow. |
environmentId |
Opcional. O ID do ambiente do agente do Dialogflow a ser usado para a execução do agente. Se não for especificado, o ambiente de rascunho será usado. |
inputVariableMapping |
Opcional. O mapeamento dos nomes das variáveis do app para os nomes dos parâmetros da sessão do Dialogflow a serem enviados ao agente do Dialogflow como entrada. Um objeto com uma lista de pares |
outputVariableMapping |
Opcional. O mapeamento dos nomes dos parâmetros da sessão do Dialogflow para os nomes das variáveis do app que serão enviadas de volta ao agente do CES após o término da execução do agente do Dialogflow. Um objeto com uma lista de pares |
respectResponseInterruptionSettings |
Opcional. Indica se as configurações de interrupção no nível da mensagem configuradas no agente do Dialogflow devem ser respeitadas.
|
languageCodeVariable |
Opcional. O nome da variável que contém o código do idioma a ser usado na sessão do Dialogflow. Se não for especificado, o código de idioma padrão do agente do Dialogflow será usado. |
InputVariableMappingEntry
| Representação JSON |
|---|
{ "key": string, "value": string } |
| Campos | |
|---|---|
key |
|
value |
|
OutputVariableMappingEntry
| Representação JSON |
|---|
{ "key": string, "value": string } |
| Campos | |
|---|---|
key |
|
value |
|
RemoteA2aAgent
| Representação JSON |
|---|
{
"a2aConfig": {
object ( |
| Campos | |
|---|---|
a2aConfig |
Obrigatório. A configuração da conexão A2A. |
RemoteA2aConfig
| Representação JSON |
|---|
{ "apiAuthentication": { object ( |
| Campos | |
|---|---|
apiAuthentication |
Opcional. Configuração de autenticação para chamar o agente remoto. Opcional se a referência do registro já processar a autenticação. |
inputVariableMapping |
Opcional. Mapeamento de nomes de variáveis de entrada do agente remoto para nomes de variáveis do GECX. Um objeto com uma lista de pares |
outputVariableMapping |
Opcional. Mapeamento de nomes de variáveis de saída do agente remoto para nomes de variáveis do GECX. Um objeto com uma lista de pares |
streamingEnabled |
Opcional. Se o streaming está ativado para o agente remoto. |
contextId |
Opcional. Se não estiver vazio, as interações com o agente A2A remoto vão usar esse ID de contexto. Esse campo context_id pode se referir a uma variável de sessão, como |
Campo de união agent_spec. Especificação do agente remoto. agent_spec pode ser apenas de um dos tipos a seguir: |
|
agentCard |
Opcional. O card completo do agente definido inline. |
agentRegistry |
Opcional. Referência ao agente no Agent Registry. Formato: |
AgentCard
| Representação JSON |
|---|
{ "name": string, "description": string, "supportedInterfaces": [ { object ( |
| Campos | |
|---|---|
name |
Obrigatório. Um nome do agente legível por humanos. |
description |
Obrigatório. Uma descrição do domínio de ação/espaço de solução do agente. |
supportedInterfaces[] |
Obrigatório. Lista ordenada de interfaces compatíveis. A primeira entrada é a preferida. |
version |
Obrigatório. A versão do agente. |
skills[] |
Obrigatório. As habilidades representam uma unidade de capacidade que um agente pode realizar. Isso pode ser um pouco abstrato, mas representa um conjunto mais focado de ações que o agente tem grande probabilidade de realizar com sucesso. |
AgentInterface
| Representação JSON |
|---|
{ "url": string, "protocolBinding": string, "tenant": string, "protocolVersion": string } |
| Campos | |
|---|---|
url |
Obrigatório. O URL em que essa interface está disponível. Precisa ser um URL HTTPS absoluto válido em produção. Exemplo: "https://api.example.com/a2a/v1", "https://grpc.example.com/a2a" |
protocolBinding |
Obrigatório. A vinculação de protocolo compatível com este URL. Essa é uma string de formulário aberta, que pode ser facilmente estendida para outras vinculações de protocolo. Os principais com suporte oficial são |
tenant |
ID do locatário a ser usado na solicitação ao chamar o agente. |
protocolVersion |
Obrigatório. A versão do protocolo A2A que essa interface expõe. Use a versão secundária mais recente compatível por versão principal. Exemplos: "0.3", "1.0" |
AgentSkill
| Representação JSON |
|---|
{ "id": string, "name": string, "description": string, "tags": [ string ], "examples": [ string ], "inputModes": [ string ], "outputModes": [ string ] } |
| Campos | |
|---|---|
id |
Obrigatório. Um identificador exclusivo da habilidade do agente. |
name |
Obrigatório. Um nome legível para a habilidade. |
description |
Obrigatório. Uma descrição detalhada da habilidade. |
tags[] |
Obrigatório. Um conjunto de palavras-chave que descrevem as funcionalidades da skill. |
examples[] |
Exemplos de comandos ou cenários que essa habilidade pode processar. |
inputModes[] |
O conjunto de tipos de mídia de entrada compatíveis com essa habilidade, substituindo os padrões do agente. |
outputModes[] |
O conjunto de tipos de mídia de saída compatíveis com essa habilidade, substituindo os padrões do agente. |
ApiAuthentication
| Representação JSON |
|---|
{ // Union field |
| Campos | |
|---|---|
Campo de união auth_config. A configuração de autenticação. auth_config pode ser apenas de um dos tipos a seguir: |
|
apiKeyConfig |
Opcional. Configuração para autenticação de chave de API. |
oauthConfig |
Opcional. Configuração para OAuth. |
serviceAgentIdTokenAuthConfig |
Opcional. Configuração para autenticação de token de ID gerada pelo agente de serviço do CES. |
serviceAccountAuthConfig |
Opcional. Configuração para autenticação de conta de serviço. |
bearerTokenConfig |
Opcional. Configuração para autenticação de token do portador. |
ApiKeyConfig
| Representação JSON |
|---|
{
"keyName": string,
"apiKeySecretVersion": string,
"requestLocation": enum ( |
| Campos | |
|---|---|
keyName |
Obrigatório. O nome do parâmetro ou do cabeçalho da chave de API. Por exemplo, Se a solicitação de API for "https://example.com/act?X-Api-Key= |
apiKeySecretVersion |
Obrigatório. O nome do recurso da versão do secret do Secret Manager que armazena a chave de API. Formato: Observação: conceda o papel |
requestLocation |
Obrigatório. Localização da chave na solicitação. |
OAuthConfig
| Representação JSON |
|---|
{
"oauthGrantType": enum ( |
| Campos | |
|---|---|
oauthGrantType |
Obrigatório. Tipos de permissão de acesso OAuth. |
clientId |
Obrigatório. O ID do cliente do provedor OAuth. |
clientSecretVersion |
Obrigatório. O nome do recurso da versão do secret do Secret Manager que armazena a chave secreta do cliente. Formato: Observação: conceda o papel |
tokenEndpoint |
Obrigatório. O endpoint do token no provedor OAuth para troca por um token de acesso. |
scopes[] |
Opcional. Os escopos do OAuth a serem concedidos. |
ServiceAccountAuthConfig
| Representação JSON |
|---|
{ "serviceAccount": string, "scopes": [ string ] } |
| Campos | |
|---|---|
serviceAccount |
Obrigatório. O endereço de e-mail da conta de serviço usada para autenticação. O CES usa essa conta de serviço para trocar um token de acesso, que é enviado no cabeçalho A conta de serviço precisa ter o papel |
scopes[] |
Opcional. Os escopos do OAuth a serem concedidos. Se não for especificado, o escopo padrão |
BearerTokenConfig
| Representação JSON |
|---|
{ "token": string } |
| Campos | |
|---|---|
token |
Obrigatório. O token do portador. Precisa estar no formato |
InputVariableMappingEntry
| Representação JSON |
|---|
{ "key": string, "value": string } |
| Campos | |
|---|---|
key |
|
value |
|
OutputVariableMappingEntry
| Representação JSON |
|---|
{ "key": string, "value": string } |
| Campos | |
|---|---|
key |
|
value |
|
ModelSettings
| Representação JSON |
|---|
{ "model": string, "thinkingLevel": enum ( |
| Campos | |
|---|---|
model |
Opcional. O modelo de LLM que o agente deve usar. Se não for definido, o agente vai herdar o modelo do agente principal. |
thinkingLevel |
Opcional. O nível de raciocínio do modelo. |
Campo de união
|
|
temperature |
Opcional. Se definido, essa temperatura será usada para o modelo de LLM. A temperatura controla a aleatoriedade das respostas do modelo. Temperaturas mais baixas produzem respostas mais previsíveis. Temperaturas mais altas produzem respostas mais criativas. |
Callback
| Representação JSON |
|---|
{ "description": string, "disabled": boolean, "proactiveExecutionEnabled": boolean, // Union field |
| Campos | |
|---|---|
description |
Opcional. Descrição legível da callback. |
disabled |
Opcional. Indica se o callback está desativado. Callbacks desativados são ignorados pelo agente. |
proactiveExecutionEnabled |
Opcional. Se ativado, o callback também será executado em saídas intermediárias do modelo. Essa configuração afeta apenas a chamada de retorno "After model". ATIVE COM CUIDADO. Normalmente, a chamada de retorno do modelo só precisa ser executada depois de receber todas as respostas do modelo. Ativar a execução proativa pode ter implicações negativas no custo e na latência da execução. Portanto, essa opção só deve ser ativada em situações raras. |
Campo de união callback. O callback a ser executado. callback pode ser apenas de um dos tipos a seguir: |
|
pythonCode |
Obrigatório. O código Python a ser executado para o callback. |
Carimbo de data/hora
| Representação JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campos | |
|---|---|
seconds |
Representa os segundos do horário UTC desde a época Unix 1970-01-01T00:00:00Z. Precisa estar entre -62135596800 e 253402300799 (o que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z). |
nanos |
Frações não negativas de um segundo com resolução de nanossegundos. Esse campo é a parte de nanossegundos da duração, não uma alternativa aos segundos. Os valores de segundos negativos com frações ainda precisam ter valores em nanossegundos não negativos que representam períodos posteriores. O valor precisa ser de 0 a 999.999.999. |
AgentToolset
| Representação JSON |
|---|
{ "toolset": string, "toolIds": [ string ] } |
| Campos | |
|---|---|
toolset |
Obrigatório. O nome do recurso do conjunto de ferramentas. Formato: |
toolIds[] |
Opcional. Os IDs das ferramentas para filtrar o conjunto de ferramentas. |
TransferRule
| Representação JSON |
|---|
{ "childAgent": string, "direction": enum ( |
| Campos | |
|---|---|
childAgent |
Obrigatório. O nome do recurso do agente secundário a que a regra se aplica. Formato: |
direction |
Obrigatório. A direção da transferência. |
Campo de união rule_type. O tipo de regra. rule_type pode ser apenas de um dos tipos a seguir: |
|
deterministicTransfer |
Opcional. Uma regra que transfere imediatamente para o agente de destino quando a condição é atendida. |
disablePlannerTransfer |
Opcional. Regra que impede a transferência do planejador para o agente de destino. |
DeterministicTransfer
| Representação JSON |
|---|
{ // Union field |
| Campos | |
|---|---|
Campo de união condition_type. A condição a ser avaliada. condition_type pode ser apenas de um dos tipos a seguir: |
|
expressionCondition |
Opcional. Uma regra que avalia uma condição de estado da sessão. Se a condição for avaliada como verdadeira, a transferência vai ocorrer. |
pythonCodeCondition |
Opcional. Uma regra que usa um bloco de código Python para avaliar as condições. Se a condição for avaliada como verdadeira, a transferência vai ocorrer. |
ExpressionCondition
| Representação JSON |
|---|
{ "expression": string } |
| Campos | |
|---|---|
expression |
Obrigatório. A representação de string da condição cloud.api.Expression. |
PythonCodeCondition
| Representação JSON |
|---|
{ "pythonCode": string } |
| Campos | |
|---|---|
pythonCode |
Obrigatório. O código Python a ser executado. |
DisablePlannerTransfer
| Representação JSON |
|---|
{
"expressionCondition": {
object ( |
| Campos | |
|---|---|
expressionCondition |
Obrigatório. Se a condição for avaliada como verdadeira, o planejador não poderá ser transferido para o agente de destino. |
RequestLocation
O local da chave de API na solicitação.
| Tipos enumerados | |
|---|---|
REQUEST_LOCATION_UNSPECIFIED |
Não especificado. Esse valor não deve ser usado. |
HEADER |
Representa a chave no cabeçalho HTTP. |
QUERY_STRING |
Representa a chave na string de consulta. |
OauthGrantType
Tipos de permissão de acesso OAuth. Somente a concessão de credenciais de cliente é aceita.
| Tipos enumerados | |
|---|---|
OAUTH_GRANT_TYPE_UNSPECIFIED |
Não especificado. O padrão é CLIENT_CREDENTIAL. |
CLIENT_CREDENTIAL |
Representa o fluxo de credenciais do cliente. |
ThinkingLevel
Configuração do nível de raciocínio para o modelo.
| Tipos enumerados | |
|---|---|
THINKING_LEVEL_UNSPECIFIED |
O nível de raciocínio não foi especificado. |
DEFAULT |
Nível de raciocínio padrão. |
LOW |
Nível de raciocínio baixo. |
MEDIUM |
Nível de raciocínio médio. |
HIGH |
Nível de raciocínio alto. |
Direção
A direção da transferência.
| Tipos enumerados | |
|---|---|
DIRECTION_UNSPECIFIED |
Direção não especificada. |
PARENT_TO_CHILD |
Transferência do agente principal para o agente secundário. |
CHILD_TO_PARENT |
Transferir do agente secundário para o agente pai. |
Anotações de ferramentas
As anotações de ferramentas são enviadas aos clientes do MCP para descrever o risco básico de uma determinada ferramenta. A maioria dos clientes trata essas dicas como não confiáveis, mas elas podem ser usadas para decidir quando um pedido de confirmação pode ser enviado a um usuário.
Além da string de título, as seguintes dicas booleanas são definidas da seguinte maneira:
readOnlyHint: se for "true", a ferramenta não vai modificar o ambiente. Padrão: false.destructiveHint: se for "true", a ferramenta poderá realizar ações destrutivas. Se for "false", a ferramenta só poderá realizar ações aditivas. Padrão: verdadeiro.idempotentHint: se for "true", chamar a ferramenta repetidamente com os mesmos argumentos não terá efeito adicional no ambiente dela. Padrão: false.openWorldHint: se for "true", a ferramenta poderá interagir com um "mundo aberto" de entidades externas. Se for "false", a ferramenta só poderá interagir com entidades internas. Por exemplo, uma ferramenta de pesquisa na Web seria de mundo aberto, enquanto uma ferramenta de memória não seria.
Dica destrutiva: ✅ | Dica idempotente: ❌ | Dica somente leitura: ❌ | Dica de mundo aberto: ❌