MCP Tools Reference: ces.googleapis.com

Ferramenta: list_deployments

Lista as implantações no app especificado.

O exemplo de código a seguir mostra como usar curl para chamar a ferramenta MCP list_deployments.

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": "list_deployments",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Esquema de entrada

Mensagem de solicitação para AgentService.ListDeployments.

ListDeploymentsRequest

Representação JSON
{
  "parent": string,
  "pageSize": integer,
  "pageToken": string,
  "orderBy": string
}
Campos
parent

string

Obrigatório. O app principal. Formato: projects/{project}/locations/{location}/apps/{app}

pageSize

integer

Opcional. O número máximo de implantações a serem retornadas. O serviço pode retornar um valor inferior a este. Se não for especificado, no máximo 50 implantações serão retornadas. O valor máximo é 1.000. Valores maiores serão convertidos para 1.000.

pageToken

string

Opcional. Um token de página recebido de uma chamada ListDeployments anterior. Forneça isso para recuperar a página subsequente.

Ao paginar, todos os outros parâmetros fornecidos para ListDeployments precisam corresponder à chamada que forneceu o token da página.

orderBy

string

Opcional. Campo de classificação. Somente "name" e "create_time" são aceitos. Consulte https://google.aip.dev/132#ordering para mais detalhes.

Esquema de saída

Mensagem de resposta para AgentService.ListDeployments.

ListDeploymentsResponse

Representação JSON
{
  "deployments": [
    {
      object (Deployment)
    }
  ],
  "nextPageToken": string
}
Campos
deployments[]

object (Deployment)

A lista de implantações.

nextPageToken

string

Um token, que pode ser enviado como page_token para recuperar a próxima página. Se esse campo for omitido, não haverá páginas subsequentes.

Implantação

Representação JSON
{
  "name": string,
  "displayName": string,
  "appVersion": string,
  "channelProfile": {
    object (ChannelProfile)
  },
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "experimentConfig": {
    object (ExperimentConfig)
  },
  "whatsappCredentials": {
    object (WhatsAppCredentials)
  },
  "instagramCredentials": {
    object (InstagramCredentials)
  },
  "modelSettings": {
    object (ModelSettings)
  },
  "modality": enum (Modality),
  "agentRegistryDeployment": {
    object (AgentRegistryDeployment)
  }
}
Campos
name

string

Identificador. O nome do recurso da implantação. Formato: projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}

displayName

string

Obrigatório. Nome de exibição da implantação.

appVersion

string

Opcional. O nome do recurso da versão do app a ser implantada. Formato: projects/{project}/locations/{location}/apps/{app}/versions/{version}. Use projects/{project}/locations/{location}/apps/{app}/versions/- para usar o app de rascunho.

channelProfile

object (ChannelProfile)

Obrigatório. O perfil do canal usado na implantação.

createTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora em que a implantação foi criada.

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 em que a implantação foi atualizada pela última vez.

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

Apenas saída. 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.

experimentConfig

object (ExperimentConfig)

Opcional. Configuração do experimento para a implantação.

whatsappCredentials

object (WhatsAppCredentials)

Opcional. Somente entrada. Credenciais temporárias do WhatsApp necessárias ao configurar um perfil de canal do WhatsApp.

instagramCredentials

object (InstagramCredentials)

Opcional. Somente entrada. Credenciais temporárias do Instagram necessárias ao configurar um perfil de canal do Instagram.

modelSettings

object (ModelSettings)

Opcional. Configurações do modelo para a implantação. Substitui as configurações do modelo definidas nos níveis do app/agente. Observação: a substituição das configurações do modelo no nível da implantação é controlada por uma lista de permissão. Entre em contato com a equipe do CXAS para ativar esse campo.

modality

enum (Modality)

Opcional. A modalidade da implantação. Observação: a substituição de modalidade no nível da implantação é controlada por uma lista de permissões. Entre em contato com a equipe do CXAS para ativar esse campo.

agentRegistryDeployment

object (AgentRegistryDeployment)

Opcional. Configuração para implantação no Agent Registry. Se presente, essa implantação será publicada no Agent Registry.

ChannelProfile

Representação JSON
{
  "profileId": string,
  "channelType": enum (ChannelType),
  "personaProperty": {
    object (PersonaProperty)
  },
  "webWidgetConfig": {
    object (WebWidgetConfig)
  },
  "whatsappConfig": {
    object (WhatsAppConfig)
  },
  "instagramConfig": {
    object (InstagramConfig)
  },

  // Union field _disable_dtmf can be only one of the following:
  "disableDtmf": boolean
  // End of list of possible types for union field _disable_dtmf.

  // Union field _disable_barge_in_control can be only one of the following:
  "disableBargeInControl": boolean
  // End of list of possible types for union field _disable_barge_in_control.

  // Union field _noise_suppression_level can be only one of the following:
  "noiseSuppressionLevel": string
  // End of list of possible types for union field _noise_suppression_level.
}
Campos
profileId

string

Opcional. O identificador exclusivo do perfil do canal.

channelType

enum (ChannelType)

Opcional. O tipo do perfil do canal.

personaProperty

object (PersonaProperty)

Opcional. A propriedade de persona do perfil do canal.

webWidgetConfig

object (WebWidgetConfig)

Opcional. A configuração do widget da Web.

whatsappConfig

object (WhatsAppConfig)

Opcional. Configuração específica para implantações do WhatsApp.

instagramConfig

object (InstagramConfig)

Opcional. Configuração específica para implantações do Instagram.

Campo de união _disable_dtmf.

_disable_dtmf pode ser apenas de um dos tipos a seguir:

disableDtmf

boolean

Opcional. Indica se a multifrequência de tons duplos (DTMF) deve ser desativada.

Campo de união _disable_barge_in_control.

_disable_barge_in_control pode ser apenas de um dos tipos a seguir:

disableBargeInControl

boolean

Opcional. Se o controle de interrupção do usuário na conversa deve ser desativado. - true: as interrupções do usuário são desativadas enquanto o agente está falando. - false: o agente mantém o controle automático sobre quando o usuário pode interromper.

Campo de união _noise_suppression_level.

_noise_suppression_level pode ser apenas de um dos tipos a seguir:

noiseSuppressionLevel

string

Opcional. O nível de supressão de ruído do perfil do canal. Os valores disponíveis são "low", "moderate", "high", "very_high".

PersonaProperty

Representação JSON
{
  "persona": enum (Persona)
}
Campos
persona

enum (Persona)

Opcional. A persona do canal.

WebWidgetConfig

Representação JSON
{
  "modality": enum (Modality),
  "theme": enum (Theme),
  "webWidgetTitle": string,
  "securitySettings": {
    object (SecuritySettings)
  }
}
Campos
modality

enum (Modality)

Opcional. A modalidade do widget da Web.

theme

enum (Theme)

Opcional. O tema do widget da Web.

webWidgetTitle

string

Opcional. O título do widget da Web.

securitySettings

object (SecuritySettings)

Opcional. As configurações de segurança do widget da Web.

SecuritySettings

Representação JSON
{
  "enablePublicAccess": boolean,
  "enableOriginCheck": boolean,
  "allowedOrigins": [
    string
  ],
  "enableRecaptcha": boolean
}
Campos
enablePublicAccess

boolean

Opcional. Indica se o acesso público ao widget da Web está ativado. Se true, o widget da Web será acessível publicamente. Se false, o widget da Web precisará ser integrado ao seu próprio sistema de autenticação e autorização para retornar credenciais válidas de acesso ao agente da CES.

enableOriginCheck

boolean

Opcional. Indica se a verificação de origem do widget da Web está ativada. Se true, o widget da Web vai verificar a origem do site que o carrega e só vai permitir que ele seja carregado na mesma origem ou em qualquer uma das origens permitidas.

allowedOrigins[]

string

Opcional. As origens permitidas para hospedar o widget da Web. Uma origem é definida pela RFC 6454. Se estiver vazio, todas as origens serão permitidas. É permitido um máximo de 100 origens. Exemplo: "https://example.com"

enableRecaptcha

boolean

Opcional. Indica se a verificação reCAPTCHA para o widget da Web está ativada.

WhatsAppConfig

Representação JSON
{
  "wabaId": string,
  "phoneNumberId": string,
  "phoneNumber": string,
  "displayName": string,
  "thumbnailUrl": string,
  "description": string
}
Campos
wabaId

string

Obrigatório. O ID da conta do WhatsApp Business.

phoneNumberId

string

Obrigatório. O ID do número de telefone da Meta.

phoneNumber

string

Opcional. O número de telefone no formato E.164.

displayName

string

Apenas saída. O nome da página comercial da Meta buscada.

thumbnailUrl

string

Apenas saída. O URL da miniatura do perfil comercial do Meta buscado.

description

string

Apenas saída. A descrição da página ou do perfil comercial da Meta.

InstagramConfig

Representação JSON
{
  "instagramAccountId": string,
  "displayName": string,
  "thumbnailUrl": string,
  "description": string
}
Campos
instagramAccountId

string

Obrigatório. O ID da conta do Instagram.

displayName

string

Apenas saída. O nome da página comercial da Meta buscada.

thumbnailUrl

string

Apenas saída. O URL da miniatura do perfil comercial do Meta buscado.

description

string

Apenas saída. A descrição da página ou do perfil comercial da Meta.

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.

ExperimentConfig

Representação JSON
{
  "versionRelease": {
    object (VersionRelease)
  }
}
Campos
versionRelease

object (VersionRelease)

Opcional. Versão de lançamento do experimento.

VersionRelease

Representação JSON
{
  "state": enum (State),
  "trafficAllocations": [
    {
      object (TrafficAllocation)
    }
  ]
}
Campos
state

enum (State)

Opcional. Estado do lançamento da versão.

trafficAllocations[]

object (TrafficAllocation)

Opcional. Alocações de tráfego para o lançamento da versão.

TrafficAllocation

Representação JSON
{
  "id": string,
  "trafficPercentage": integer,
  "appVersion": string
}
Campos
id

string

Opcional. ID da alocação de tráfego. String de formato livre com até 128 caracteres.

trafficPercentage

integer

Opcional. Porcentagem de tráfego da alocação de tráfego. Precisa ser entre 0 e 100.

appVersion

string

Opcional. Versão do app da alocação de tráfego. Formato: projects/{project}/locations/{location}/apps/{app}/versions/{version}

WhatsAppCredentials

Representação JSON
{
  "authCode": string,
  "pin": string,
  "phoneNumber": string,
  "businessAccountId": string,
  "wabaId": string,
  "conversationProfileId": string
}
Campos
authCode

string

Obrigatório. O código de autenticação da Meta fornecido pelo fluxo de inscrição incorporado.

pin

string

Obrigatório. O PIN de seis dígitos criado pelo usuário para a verificação em duas etapas.

phoneNumber

string

Obrigatório. O número de telefone para registrar no WhatsApp.

businessAccountId

string

Obrigatório. O ID da conta comercial a ser usado para o número de telefone.

wabaId

string

Obrigatório. O ID da conta do WhatsApp Business.

conversationProfileId

string

Opcional. O ID do perfil de conversa a ser usado na implantação.

InstagramCredentials

Representação JSON
{
  "authCode": string,
  "conversationProfileId": string
}
Campos
authCode

string

Obrigatório. O código de autenticação da Meta fornecido pelo fluxo de inscrição incorporado.

conversationProfileId

string

Opcional. O ID do perfil de conversa a ser usado na implantação.

ModelSettings

Representação JSON
{
  "model": string,
  "thinkingLevel": enum (ThinkingLevel),

  // Union field _temperature can be only one of the following:
  "temperature": number
  // End of list of possible types for union field _temperature.
}
Campos
model

string

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

enum (ThinkingLevel)

Opcional. O nível de raciocínio do modelo.

Campo de união _temperature.

_temperature pode ser apenas de um dos tipos a seguir:

temperature

number

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.

AgentRegistryDeployment

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

string

Opcional. Apenas saída. O nome do recurso do serviço do Artifact Registry implantado. Formato: projects/{project}/locations/{location}/services/{service}

ChannelType

O tipo do perfil do canal.

Tipos enumerados
UNKNOWN Tipo de canal desconhecido.
WEB_UI Canal da interface da Web.
API Canal da API.
TWILIO Canal do Twilio.
GOOGLE_TELEPHONY_PLATFORM Canal da Plataforma de telefonia do Google.
CONTACT_CENTER_AS_A_SERVICE Canal de central de atendimento como serviço (CCaaS).
CONTACT_CENTER_AS_A_SERVICE_CHAT Canal da central de atendimento como serviço (chat da CCaaS).
FIVE9 Canal da Five9.
CONTACT_CENTER_INTEGRATION Canal de integração da central de atendimento de terceiros.
WHATSAPP Canal do WhatsApp.
INSTAGRAM Canal do Instagram.

Persona

A persona do canal.

Tipos enumerados
UNKNOWN Persona UNKNOWN.
CONCISE O agente mantém as respostas concisas e diretas.
CHATTY O agente fornece mais contexto, explicações e detalhes

Modalidade

Modalidade do widget da Web.

Tipos enumerados
MODALITY_UNSPECIFIED Modalidade desconhecida.
CHAT_AND_VOICE O widget aceita entrada de texto por chat e voz.
VOICE_ONLY O widget só aceita entrada de texto por voz.
CHAT_ONLY O widget só aceita entrada de texto.
CHAT_VOICE_AND_VIDEO O widget aceita entradas de chat, voz e vídeo.

Tema

Tema do widget da Web.

Tipos enumerados
THEME_UNSPECIFIED Tema desconhecido.
LIGHT Tema claro.
DARK Tema escuro.

Estado

Estado do experimento.

Tipos enumerados
STATE_UNSPECIFIED Estado não especificado.
PENDING Descontinuado: este estado não é mais usado.
RUNNING Estado de execução. O experimento está em execução e é válido.
DONE Descontinuado: este estado não é mais usado.
EXPIRED Descontinuado: este estado não é mais usado.

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.

Modalidade

A modalidade da implantação.

Tipos enumerados
MODALITY_UNSPECIFIED Modalidade desconhecida.
MODALITY_TEXT Modalidade de texto.
MODALITY_VOICE Modalidade de voz.
MODALITY_VIDEO Modalidade de vídeo.

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: ❌