MCP Tools Reference: ces.googleapis.com

Ferramenta: create_toolset

Cria um novo conjunto de ferramentas no app especificado.

O exemplo a seguir demonstra como usar curl para invocar a ferramenta create_toolset MCP.

Solicitação curl
                  
curl --location 'https://ces.[REGION].rep.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "create_toolset",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Esquema de entrada

Mensagem de solicitação para AgentService.CreateToolset.

CreateToolsetRequest

Representação JSON
{
  "parent": string,
  "toolsetId": string,
  "toolset": {
    object (Toolset)
  }
}
Campos
parent

string

Obrigatório. O nome do recurso do app em que um conjunto de ferramentas será criado.

toolsetId

string

Opcional. O ID a ser usado no conjunto de ferramentas, que se tornará o componente final do nome do recurso do conjunto de ferramentas. Se não for fornecido, um ID exclusivo será atribuído automaticamente ao conjunto de ferramentas.

toolset

object (Toolset)

Obrigatório. O conjunto de ferramentas a ser criado.

Conjunto de ferramentas

Representação JSON
{
  "name": string,
  "displayName": string,
  "description": string,
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "executionType": enum (ExecutionType),
  "toolFakeConfig": {
    object (ToolFakeConfig)
  },

  // Union field toolset_type can be only one of the following:
  "mcpToolset": {
    object (McpToolset)
  },
  "openApiToolset": {
    object (OpenApiToolset)
  },
  "connectorToolset": {
    object (ConnectorToolset)
  }
  // End of list of possible types for union field toolset_type.
}
Campos
name

string

Identificador. O identificador exclusivo do conjunto de ferramentas. Formato: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

displayName

string

Opcional. O nome de exibição do conjunto de ferramentas. Precisa ser exclusivo no mesmo app.

description

string

Opcional. A descrição do conjunto de ferramentas.

createTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora em que o conjunto de ferramentas 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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora da última atualização do conjunto de ferramentas.

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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

etag

string

ETag usada para garantir que o objeto não tenha sido 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.

executionType

enum (ExecutionType)

Opcional. O tipo de execução das ferramentas no conjunto de ferramentas.

toolFakeConfig

object (ToolFakeConfig)

Opcional. Configuração para o comportamento das ferramentas no modo simulado.

Campo de união toolset_type. O tipo do conjunto de ferramentas. toolset_type pode ser apenas de um dos tipos a seguir:
mcpToolset

object (McpToolset)

Opcional. Um conjunto de ferramentas que contém uma lista de ferramentas oferecidas pelo servidor MCP.

openApiToolset

object (OpenApiToolset)

Opcional. Um conjunto de ferramentas que contém uma lista de ferramentas definidas por um esquema da OpenAPI.

connectorToolset

object (ConnectorToolset)

Opcional. Um conjunto de ferramentas que gera ferramentas de uma conexão do Integration Connectors.

McpToolset

Representação JSON
{
  "serverAddress": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "tlsConfig": {
    object (TlsConfig)
  }
}
Campos
serverAddress

string

Obrigatório. O endereço do servidor MCP, por exemplo, "https://example.com/mcp/". Se o servidor for criado com o SDK do MCP, o URL vai ter o sufixo "/mcp/". Somente servidores baseados em transporte HTTP de streaming são compatíveis. Consulte https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http para mais detalhes.

apiAuthentication

object (ApiAuthentication)

Opcional. Informações de autenticação necessárias para acessar ferramentas e executar uma ferramenta no servidor MCP. Para a autenticação de token de portador, o token se aplica apenas à execução da ferramenta, não à listagem de ferramentas. Isso exige que as ferramentas possam ser listadas sem autenticação.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Opcional. Configuração do Diretório de serviços para VPC-SC, usada para resolver nomes de serviços em um perímetro.

tlsConfig

object (TlsConfig)

Opcional. A configuração de TLS. Inclui os certificados de servidor personalizados em que o cliente deve confiar.

ApiAuthentication

Representação JSON
{

  // Union field auth_config can be only one of the following:
  "apiKeyConfig": {
    object (ApiKeyConfig)
  },
  "oauthConfig": {
    object (OAuthConfig)
  },
  "serviceAgentIdTokenAuthConfig": {
    object (ServiceAgentIdTokenAuthConfig)
  },
  "serviceAccountAuthConfig": {
    object (ServiceAccountAuthConfig)
  },
  "bearerTokenConfig": {
    object (BearerTokenConfig)
  }
  // End of list of possible types for union field auth_config.
}
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

object (ApiKeyConfig)

Opcional. Configuração para autenticação de chave de API.

oauthConfig

object (OAuthConfig)

Opcional. Configuração para OAuth.

serviceAgentIdTokenAuthConfig

object (ServiceAgentIdTokenAuthConfig)

Opcional. Configuração para autenticação de token de ID gerada pelo agente de serviço do CES.

serviceAccountAuthConfig

object (ServiceAccountAuthConfig)

Opcional. Configuração para autenticação de conta de serviço.

bearerTokenConfig

object (BearerTokenConfig)

Opcional. Configuração para autenticação de token do portador.

ApiKeyConfig

Representação JSON
{
  "keyName": string,
  "apiKeySecretVersion": string,
  "requestLocation": enum (RequestLocation)
}
Campos
keyName

string

Obrigatório. O nome do parâmetro ou do cabeçalho da chave de API. Ex.: Se a solicitação de API for "https://example.com/act?X-Api-Key=", "X-Api-Key" será o nome do parâmetro.

apiKeySecretVersion

string

Obrigatório. O nome do recurso da versão do secret do Secret Manager que armazena a chave de API. Formato: projects/{project}/secrets/{secret}/versions/{version}

Observação: conceda o papel roles/secretmanager.secretAccessor ao agente de serviço do CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

requestLocation

enum (RequestLocation)

Obrigatório. Localização da chave na solicitação.

OAuthConfig

Representação JSON
{
  "oauthGrantType": enum (OauthGrantType),
  "clientId": string,
  "clientSecretVersion": string,
  "tokenEndpoint": string,
  "scopes": [
    string
  ]
}
Campos
oauthGrantType

enum (OauthGrantType)

Obrigatório. Tipos de concessão do OAuth.

clientId

string

Obrigatório. O ID do cliente do provedor OAuth.

clientSecretVersion

string

Obrigatório. O nome do recurso da versão do secret do Secret Manager que armazena a chave secreta do cliente. Formato: projects/{project}/secrets/{secret}/versions/{version}

Observação: conceda o papel roles/secretmanager.secretAccessor ao agente de serviço do CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

tokenEndpoint

string

Obrigatório. O endpoint de token no provedor OAuth para troca por um token de acesso.

scopes[]

string

Opcional. Os escopos do OAuth a serem concedidos.

ServiceAccountAuthConfig

Representação JSON
{
  "serviceAccount": string,
  "scopes": [
    string
  ]
}
Campos
serviceAccount

string

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 Authorization da solicitação.

A conta de serviço precisa ter o papel roles/iam.serviceAccountTokenCreator concedido ao agente de serviço do CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

scopes[]

string

Opcional. Os escopos do OAuth a serem concedidos. Se não for especificado, o escopo padrão https://www.googleapis.com/auth/cloud-platform será usado.

BearerTokenConfig

Representação JSON
{
  "token": string
}
Campos
token

string

Obrigatório. O token do portador. Precisa estar no formato $context.variables.<name_of_variable>.

ServiceDirectoryConfig

Representação JSON
{
  "service": string
}
Campos
service

string

Obrigatório. O nome do serviço do Diretório de serviços. Formato: projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. O local do diretório de serviços precisa ser o mesmo do app.

TlsConfig

Representação JSON
{
  "caCerts": [
    {
      object (CaCert)
    }
  ]
}
Campos
caCerts[]

object (CaCert)

Obrigatório. Especifica uma lista de certificados de CA personalizados permitidos para verificação HTTPS.

CaCert

Representação JSON
{
  "displayName": string,
  "cert": string
}
Campos
displayName

string

Obrigatório. O nome dos certificados de CA personalizados permitidos. Isso pode ser usado para desambiguar os certificados de CA personalizados.

cert

string (bytes format)

Obrigatório. Os certificados de CA personalizados permitidos (no formato DER) para verificação HTTPS. Isso substitui o repositório de confiança SSL padrão. Se estiver vazio ou não especificado, o CES vai usar o armazenamento de confiança padrão do Google para verificar certificados. Observação: verifique se os certificados do servidor HTTPS estão assinados com "subject alt name". Por exemplo, um certificado pode ser autoassinado usando o seguinte comando: openssl x509 -req -days 200 -in example.com.csr \ -signkey example.com.key \ -out example.com.crt \ -extfile <(printf "\nsubjectAltName='DNS:www.example.com'")

Uma string codificada em base64.

OpenApiToolset

Representação JSON
{
  "openApiSchema": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "ignoreUnknownFields": boolean,
  "url": string
}
Campos
openApiSchema

string

Obrigatório. O esquema OpenAPI do conjunto de ferramentas.

apiAuthentication

object (ApiAuthentication)

Opcional. Informações de autenticação exigidas pela API.

tlsConfig

object (TlsConfig)

Opcional. A configuração de TLS. Inclui os certificados de servidor personalizados

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Opcional. Configuração do Diretório de serviços.

ignoreUnknownFields

boolean

Opcional. Se for "true", o agente vai ignorar campos desconhecidos na resposta da API para todas as operações definidas no esquema OpenAPI.

url

string

Opcional. O URL do servidor do esquema da API aberta. Esse campo só é definido em conjuntos de ferramentas nas dependências do ambiente durante o processo de exportação se o esquema contiver um URL de servidor. Durante o processo de importação, se esse URL estiver presente nas dependências do ambiente e o esquema tiver o marcador de posição $env_var, ele vai substituir o marcador no esquema.

ConnectorToolset

Representação JSON
{
  "connection": string,
  "authConfig": {
    object (EndUserAuthConfig)
  },
  "connectorActions": [
    {
      object (Action)
    }
  ]
}
Campos
connection

string

Obrigatório. O nome completo do recurso da conexão referenciada do Integration Connectors. Formato: projects/{project}/locations/{location}/connections/{connection}

authConfig

object (EndUserAuthConfig)

Opcional. Configura como a autenticação é processada nos Integration Connectors. Por padrão, uma autenticação de administrador é transmitida nas solicitações da API Integration Connectors. É possível substituir essa configuração com outra de autenticação do usuário final. Observação: a conexão precisa ter a substituição de autenticação ativada para especificar uma configuração de EUC aqui. Caso contrário, a criação do conjunto de ferramentas vai falhar. Consulte: https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override

connectorActions[]

object (Action)

Obrigatório. A lista de ações do conector/operações de entidade para gerar ferramentas.

EndUserAuthConfig

Representação JSON
{

  // Union field auth_config can be only one of the following:
  "oauth2AuthCodeConfig": {
    object (Oauth2AuthCodeConfig)
  },
  "oauth2JwtBearerConfig": {
    object (Oauth2JwtBearerConfig)
  }
  // End of list of possible types for union field auth_config.
}
Campos
Campo de união auth_config. A configuração de autenticação. auth_config pode ser apenas de um dos tipos a seguir:
oauth2AuthCodeConfig

object (Oauth2AuthCodeConfig)

Autenticação de código de autorização do OAuth 2.0.

oauth2JwtBearerConfig

object (Oauth2JwtBearerConfig)

Autenticação de concessão de autorização OAuth 2.0 do perfil JWT.

Oauth2AuthCodeConfig

Representação JSON
{
  "oauthToken": string
}
Campos
oauthToken

string

Obrigatório. Nome do parâmetro do token OAuth a ser transmitido. Precisa estar no formato $context.variables.<name_of_variable>.

Oauth2JwtBearerConfig

Representação JSON
{
  "issuer": string,
  "subject": string,
  "clientKey": string
}
Campos
issuer

string

Obrigatório. Nome do parâmetro do emissor a ser transmitido. Precisa estar no formato $context.variables.<name_of_variable>.

subject

string

Obrigatório. Nome do parâmetro de assunto a ser transmitido. Precisa estar no formato $context.variables.<name_of_variable>.

clientKey

string

Obrigatório. Nome do parâmetro do cliente a ser transmitido. Precisa estar no formato $context.variables.<name_of_variable>.

Ação

Representação JSON
{
  "inputFields": [
    string
  ],
  "outputFields": [
    string
  ],

  // Union field action_spec can be only one of the following:
  "connectionActionId": string,
  "entityOperation": {
    object (EntityOperation)
  }
  // End of list of possible types for union field action_spec.
}
Campos
inputFields[]

string

Opcional. Campos de entidade a serem usados como entradas para a operação. Se nenhum campo for especificado, todos os campos da entidade serão usados.

outputFields[]

string

Opcional. Campos de entidade a serem retornados da operação. Se nenhum campo for especificado, todos os campos da entidade serão retornados.

Campo de união action_spec. Especificação de uma ação a ser configurada para uso da ferramenta. action_spec pode ser apenas de um dos tipos a seguir:
connectionActionId

string

ID de uma ação de conexão para a ferramenta usar.

entityOperation

object (EntityOperation)

Configuração de operação de entidade para a ferramenta usar.

EntityOperation

Representação JSON
{
  "entityId": string,
  "operation": enum (OperationType)
}
Campos
entityId

string

Obrigatório. ID da entidade.

operation

enum (OperationType)

Obrigatório. Operação a ser realizada na entidade.

Carimbo de data/hora

Representação JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

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

integer

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 (inclusive).

ToolFakeConfig

Representação JSON
{
  "enableFakeMode": boolean,

  // Union field tool_response can be only one of the following:
  "codeBlock": {
    object (CodeBlock)
  }
  // End of list of possible types for union field tool_response.
}
Campos
enableFakeMode

boolean

Opcional. Indica se a ferramenta está usando o modo simulado.

Campo de união tool_response. A resposta é estática ou fornecida por uma função Python. tool_response pode ser apenas de um dos tipos a seguir:
codeBlock

object (CodeBlock)

Opcional. Bloco de código que será executado em vez de uma chamada de ferramenta real.

CodeBlock

Representação JSON
{
  "pythonCode": string
}
Campos
pythonCode

string

Obrigatório. Código Python que será invocado no modo simulado da ferramenta. Assinatura esperada da função Python: para capturar todas as chamadas de ferramenta: def fake_tool_call(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: para capturar uma chamada de ferramenta específica: def fake_{tool_id}(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: se a função retornar "None", a ferramenta real será invocada.

Esquema de saída

Um conjunto de ferramentas representa um grupo de ferramentas gerenciadas dinamicamente que podem ser usadas pelo agente.

Conjunto de ferramentas

Representação JSON
{
  "name": string,
  "displayName": string,
  "description": string,
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "executionType": enum (ExecutionType),
  "toolFakeConfig": {
    object (ToolFakeConfig)
  },

  // Union field toolset_type can be only one of the following:
  "mcpToolset": {
    object (McpToolset)
  },
  "openApiToolset": {
    object (OpenApiToolset)
  },
  "connectorToolset": {
    object (ConnectorToolset)
  }
  // End of list of possible types for union field toolset_type.
}
Campos
name

string

Identificador. O identificador exclusivo do conjunto de ferramentas. Formato: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

displayName

string

Opcional. O nome de exibição do conjunto de ferramentas. Precisa ser exclusivo no mesmo app.

description

string

Opcional. A descrição do conjunto de ferramentas.

createTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora em que o conjunto de ferramentas 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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora da última atualização do conjunto de ferramentas.

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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

etag

string

ETag usada para garantir que o objeto não tenha sido 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.

executionType

enum (ExecutionType)

Opcional. O tipo de execução das ferramentas no conjunto de ferramentas.

toolFakeConfig

object (ToolFakeConfig)

Opcional. Configuração para o comportamento das ferramentas no modo simulado.

Campo de união toolset_type. O tipo do conjunto de ferramentas. toolset_type pode ser apenas de um dos tipos a seguir:
mcpToolset

object (McpToolset)

Opcional. Um conjunto de ferramentas que contém uma lista de ferramentas oferecidas pelo servidor MCP.

openApiToolset

object (OpenApiToolset)

Opcional. Um conjunto de ferramentas que contém uma lista de ferramentas definidas por um esquema da OpenAPI.

connectorToolset

object (ConnectorToolset)

Opcional. Um conjunto de ferramentas que gera ferramentas de uma conexão do Integration Connectors.

McpToolset

Representação JSON
{
  "serverAddress": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "tlsConfig": {
    object (TlsConfig)
  }
}
Campos
serverAddress

string

Obrigatório. O endereço do servidor MCP, por exemplo, "https://example.com/mcp/". Se o servidor for criado com o SDK do MCP, o URL vai ter o sufixo "/mcp/". Somente servidores baseados em transporte HTTP de streaming são compatíveis. Consulte https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http para mais detalhes.

apiAuthentication

object (ApiAuthentication)

Opcional. Informações de autenticação necessárias para acessar ferramentas e executar uma ferramenta no servidor MCP. Para a autenticação de token de portador, o token se aplica apenas à execução da ferramenta, não à listagem de ferramentas. Isso exige que as ferramentas possam ser listadas sem autenticação.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Opcional. Configuração do Diretório de serviços para VPC-SC, usada para resolver nomes de serviços em um perímetro.

tlsConfig

object (TlsConfig)

Opcional. A configuração de TLS. Inclui os certificados de servidor personalizados em que o cliente deve confiar.

ApiAuthentication

Representação JSON
{

  // Union field auth_config can be only one of the following:
  "apiKeyConfig": {
    object (ApiKeyConfig)
  },
  "oauthConfig": {
    object (OAuthConfig)
  },
  "serviceAgentIdTokenAuthConfig": {
    object (ServiceAgentIdTokenAuthConfig)
  },
  "serviceAccountAuthConfig": {
    object (ServiceAccountAuthConfig)
  },
  "bearerTokenConfig": {
    object (BearerTokenConfig)
  }
  // End of list of possible types for union field auth_config.
}
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

object (ApiKeyConfig)

Opcional. Configuração para autenticação de chave de API.

oauthConfig

object (OAuthConfig)

Opcional. Configuração para OAuth.

serviceAgentIdTokenAuthConfig

object (ServiceAgentIdTokenAuthConfig)

Opcional. Configuração para autenticação de token de ID gerada pelo agente de serviço do CES.

serviceAccountAuthConfig

object (ServiceAccountAuthConfig)

Opcional. Configuração para autenticação de conta de serviço.

bearerTokenConfig

object (BearerTokenConfig)

Opcional. Configuração para autenticação de token do portador.

ApiKeyConfig

Representação JSON
{
  "keyName": string,
  "apiKeySecretVersion": string,
  "requestLocation": enum (RequestLocation)
}
Campos
keyName

string

Obrigatório. O nome do parâmetro ou do cabeçalho da chave de API. Ex.: Se a solicitação de API for "https://example.com/act?X-Api-Key=", "X-Api-Key" será o nome do parâmetro.

apiKeySecretVersion

string

Obrigatório. O nome do recurso da versão do secret do Secret Manager que armazena a chave de API. Formato: projects/{project}/secrets/{secret}/versions/{version}

Observação: conceda o papel roles/secretmanager.secretAccessor ao agente de serviço do CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

requestLocation

enum (RequestLocation)

Obrigatório. Localização da chave na solicitação.

OAuthConfig

Representação JSON
{
  "oauthGrantType": enum (OauthGrantType),
  "clientId": string,
  "clientSecretVersion": string,
  "tokenEndpoint": string,
  "scopes": [
    string
  ]
}
Campos
oauthGrantType

enum (OauthGrantType)

Obrigatório. Tipos de concessão do OAuth.

clientId

string

Obrigatório. O ID do cliente do provedor OAuth.

clientSecretVersion

string

Obrigatório. O nome do recurso da versão do secret do Secret Manager que armazena a chave secreta do cliente. Formato: projects/{project}/secrets/{secret}/versions/{version}

Observação: conceda o papel roles/secretmanager.secretAccessor ao agente de serviço do CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

tokenEndpoint

string

Obrigatório. O endpoint de token no provedor OAuth para troca por um token de acesso.

scopes[]

string

Opcional. Os escopos do OAuth a serem concedidos.

ServiceAccountAuthConfig

Representação JSON
{
  "serviceAccount": string,
  "scopes": [
    string
  ]
}
Campos
serviceAccount

string

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 Authorization da solicitação.

A conta de serviço precisa ter o papel roles/iam.serviceAccountTokenCreator concedido ao agente de serviço do CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

scopes[]

string

Opcional. Os escopos do OAuth a serem concedidos. Se não for especificado, o escopo padrão https://www.googleapis.com/auth/cloud-platform será usado.

BearerTokenConfig

Representação JSON
{
  "token": string
}
Campos
token

string

Obrigatório. O token do portador. Precisa estar no formato $context.variables.<name_of_variable>.

ServiceDirectoryConfig

Representação JSON
{
  "service": string
}
Campos
service

string

Obrigatório. O nome do serviço do Diretório de serviços. Formato: projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. O local do diretório de serviços precisa ser o mesmo do app.

TlsConfig

Representação JSON
{
  "caCerts": [
    {
      object (CaCert)
    }
  ]
}
Campos
caCerts[]

object (CaCert)

Obrigatório. Especifica uma lista de certificados de CA personalizados permitidos para verificação HTTPS.

CaCert

Representação JSON
{
  "displayName": string,
  "cert": string
}
Campos
displayName

string

Obrigatório. O nome dos certificados de CA personalizados permitidos. Isso pode ser usado para desambiguar os certificados de CA personalizados.

cert

string (bytes format)

Obrigatório. Os certificados de CA personalizados permitidos (no formato DER) para verificação HTTPS. Isso substitui o repositório de confiança SSL padrão. Se estiver vazio ou não especificado, o CES vai usar o armazenamento de confiança padrão do Google para verificar certificados. Observação: verifique se os certificados do servidor HTTPS estão assinados com "subject alt name". Por exemplo, um certificado pode ser autoassinado usando o seguinte comando: openssl x509 -req -days 200 -in example.com.csr \ -signkey example.com.key \ -out example.com.crt \ -extfile <(printf "\nsubjectAltName='DNS:www.example.com'")

Uma string codificada em base64.

OpenApiToolset

Representação JSON
{
  "openApiSchema": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "ignoreUnknownFields": boolean,
  "url": string
}
Campos
openApiSchema

string

Obrigatório. O esquema OpenAPI do conjunto de ferramentas.

apiAuthentication

object (ApiAuthentication)

Opcional. Informações de autenticação exigidas pela API.

tlsConfig

object (TlsConfig)

Opcional. A configuração de TLS. Inclui os certificados de servidor personalizados

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Opcional. Configuração do Diretório de serviços.

ignoreUnknownFields

boolean

Opcional. Se for "true", o agente vai ignorar campos desconhecidos na resposta da API para todas as operações definidas no esquema OpenAPI.

url

string

Opcional. O URL do servidor do esquema da API aberta. Esse campo só é definido em conjuntos de ferramentas nas dependências do ambiente durante o processo de exportação se o esquema contiver um URL de servidor. Durante o processo de importação, se esse URL estiver presente nas dependências do ambiente e o esquema tiver o marcador de posição $env_var, ele vai substituir o marcador no esquema.

ConnectorToolset

Representação JSON
{
  "connection": string,
  "authConfig": {
    object (EndUserAuthConfig)
  },
  "connectorActions": [
    {
      object (Action)
    }
  ]
}
Campos
connection

string

Obrigatório. O nome completo do recurso da conexão referenciada do Integration Connectors. Formato: projects/{project}/locations/{location}/connections/{connection}

authConfig

object (EndUserAuthConfig)

Opcional. Configura como a autenticação é processada nos Integration Connectors. Por padrão, uma autenticação de administrador é transmitida nas solicitações da API Integration Connectors. É possível substituir essa configuração com outra de autenticação do usuário final. Observação: a conexão precisa ter a substituição de autenticação ativada para especificar uma configuração de EUC aqui. Caso contrário, a criação do conjunto de ferramentas vai falhar. Consulte: https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override

connectorActions[]

object (Action)

Obrigatório. A lista de ações do conector/operações de entidade para gerar ferramentas.

EndUserAuthConfig

Representação JSON
{

  // Union field auth_config can be only one of the following:
  "oauth2AuthCodeConfig": {
    object (Oauth2AuthCodeConfig)
  },
  "oauth2JwtBearerConfig": {
    object (Oauth2JwtBearerConfig)
  }
  // End of list of possible types for union field auth_config.
}
Campos
Campo de união auth_config. A configuração de autenticação. auth_config pode ser apenas de um dos tipos a seguir:
oauth2AuthCodeConfig

object (Oauth2AuthCodeConfig)

Autenticação de código de autorização do OAuth 2.0.

oauth2JwtBearerConfig

object (Oauth2JwtBearerConfig)

Autenticação de concessão de autorização OAuth 2.0 do perfil JWT.

Oauth2AuthCodeConfig

Representação JSON
{
  "oauthToken": string
}
Campos
oauthToken

string

Obrigatório. Nome do parâmetro do token OAuth a ser transmitido. Precisa estar no formato $context.variables.<name_of_variable>.

Oauth2JwtBearerConfig

Representação JSON
{
  "issuer": string,
  "subject": string,
  "clientKey": string
}
Campos
issuer

string

Obrigatório. Nome do parâmetro do emissor a ser transmitido. Precisa estar no formato $context.variables.<name_of_variable>.

subject

string

Obrigatório. Nome do parâmetro de assunto a ser transmitido. Precisa estar no formato $context.variables.<name_of_variable>.

clientKey

string

Obrigatório. Nome do parâmetro do cliente a ser transmitido. Precisa estar no formato $context.variables.<name_of_variable>.

Ação

Representação JSON
{
  "inputFields": [
    string
  ],
  "outputFields": [
    string
  ],

  // Union field action_spec can be only one of the following:
  "connectionActionId": string,
  "entityOperation": {
    object (EntityOperation)
  }
  // End of list of possible types for union field action_spec.
}
Campos
inputFields[]

string

Opcional. Campos de entidade a serem usados como entradas para a operação. Se nenhum campo for especificado, todos os campos da entidade serão usados.

outputFields[]

string

Opcional. Campos de entidade a serem retornados da operação. Se nenhum campo for especificado, todos os campos da entidade serão retornados.

Campo de união action_spec. Especificação de uma ação a ser configurada para uso da ferramenta. action_spec pode ser apenas de um dos tipos a seguir:
connectionActionId

string

ID de uma ação de conexão para a ferramenta usar.

entityOperation

object (EntityOperation)

Configuração de operação de entidade para a ferramenta usar.

EntityOperation

Representação JSON
{
  "entityId": string,
  "operation": enum (OperationType)
}
Campos
entityId

string

Obrigatório. ID da entidade.

operation

enum (OperationType)

Obrigatório. Operação a ser realizada na entidade.

Carimbo de data/hora

Representação JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

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

integer

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 (inclusive).

ToolFakeConfig

Representação JSON
{
  "enableFakeMode": boolean,

  // Union field tool_response can be only one of the following:
  "codeBlock": {
    object (CodeBlock)
  }
  // End of list of possible types for union field tool_response.
}
Campos
enableFakeMode

boolean

Opcional. Indica se a ferramenta está usando o modo simulado.

Campo de união tool_response. A resposta é estática ou fornecida por uma função Python. tool_response pode ser apenas de um dos tipos a seguir:
codeBlock

object (CodeBlock)

Opcional. Bloco de código que será executado em vez de uma chamada de ferramenta real.

CodeBlock

Representação JSON
{
  "pythonCode": string
}
Campos
pythonCode

string

Obrigatório. Código Python que será invocado no modo simulado da ferramenta. Assinatura esperada da função Python: para capturar todas as chamadas de ferramenta: def fake_tool_call(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: para capturar uma chamada de ferramenta específica: def fake_{tool_id}(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: se a função retornar "None", a ferramenta real será invocada.

Anotações de ferramentas

Dica destrutiva: ✅ | Dica idempotente: ❌ | Dica somente leitura: ❌ | Dica de mundo aberto: ❌