MCP Tools Reference: ces.googleapis.com

Ferramenta: create_deployment

Cria uma nova implantação no app especificado.

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

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": "create_deployment",
    "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.CreateDeployment.

CreateDeploymentRequest

Representação JSON
{
  "parent": string,
  "deploymentId": string,
  "deployment": {
    object (Deployment)
  }
}
Campos
parent

string

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

deploymentId

string

Opcional. O ID a ser usado na implantação, que se tornará o componente final do nome do recurso da implantação. Se não for fornecido, um ID exclusivo será atribuído automaticamente à implantação.

deployment

object (Deployment)

Obrigatório. A implantação a ser criada.

Implantação

Representação JSON
{
  "name": string,
  "displayName": string,
  "appVersion": string,
  "channelProfile": {
    object (ChannelProfile)
  },
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "experimentConfig": {
    object (ExperimentConfig)
  }
}
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 em 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 essa 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.

ChannelProfile

Representação JSON
{
  "profileId": string,
  "channelType": enum (ChannelType),
  "personaProperty": {
    object (PersonaProperty)
  },
  "disableDtmf": boolean,
  "disableBargeInControl": boolean,
  "webWidgetConfig": {
    object (WebWidgetConfig)
  },
  "noiseSuppressionLevel": string
}
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.

disableDtmf

boolean

Opcional. Indica se o DTMF (multifrequência de dois tons) será desativado.

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.

webWidgetConfig

object (WebWidgetConfig)

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

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" e "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 for 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 que podem hospedar o widget da Web. Uma origem é definida pela RFC 6454. Se estiver vazio, todas as origens serão permitidas. São permitidas no máximo 100 origens. Exemplo: "https://example.com"

enableRecaptcha

boolean

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

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 estar entre 0 e 999.999.999 (inclusive).

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}

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 da central de atendimento como serviço (CCaaS).
FIVE9 Canal da Five9.
CONTACT_CENTER_INTEGRATION Canal de integração de central de atendimento de terceiros.

Persona

A persona do canal.

Tipos enumerados
UNKNOWN Perfil 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 é compatível com entrada de texto e entrada de texto por voz.
VOICE_ONLY O widget só aceita entrada de texto por voz.
CHAT_ONLY O widget só aceita entrada de chat.
CHAT_VOICE_AND_VIDEO O widget aceita entrada de texto, 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 Estado pendente. O experimento está pendente e não é válido.
RUNNING Estado de execução. O experimento está em execução e é válido.
DONE Estado concluído. O experimento foi concluído e não é mais válido.
EXPIRED Estado expirado. O experimento expirou e não é mais válido.

Esquema de saída

Uma implantação representa uma versão imutável e consultável do app. Ela é usada para implantar uma versão do app com um perfil de canal específico.

Implantação

Representação JSON
{
  "name": string,
  "displayName": string,
  "appVersion": string,
  "channelProfile": {
    object (ChannelProfile)
  },
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "experimentConfig": {
    object (ExperimentConfig)
  }
}
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 em 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 essa 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.

ChannelProfile

Representação JSON
{
  "profileId": string,
  "channelType": enum (ChannelType),
  "personaProperty": {
    object (PersonaProperty)
  },
  "disableDtmf": boolean,
  "disableBargeInControl": boolean,
  "webWidgetConfig": {
    object (WebWidgetConfig)
  },
  "noiseSuppressionLevel": string
}
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.

disableDtmf

boolean

Opcional. Indica se o DTMF (multifrequência de dois tons) será desativado.

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.

webWidgetConfig

object (WebWidgetConfig)

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

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" e "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 for 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 que podem hospedar o widget da Web. Uma origem é definida pela RFC 6454. Se estiver vazio, todas as origens serão permitidas. São permitidas no máximo 100 origens. Exemplo: "https://example.com"

enableRecaptcha

boolean

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

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 estar entre 0 e 999.999.999 (inclusive).

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}

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 da central de atendimento como serviço (CCaaS).
FIVE9 Canal da Five9.
CONTACT_CENTER_INTEGRATION Canal de integração de central de atendimento de terceiros.

Persona

A persona do canal.

Tipos enumerados
UNKNOWN Perfil 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 é compatível com entrada de texto e entrada de texto por voz.
VOICE_ONLY O widget só aceita entrada de texto por voz.
CHAT_ONLY O widget só aceita entrada de chat.
CHAT_VOICE_AND_VIDEO O widget aceita entrada de texto, 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 Estado pendente. O experimento está pendente e não é válido.
RUNNING Estado de execução. O experimento está em execução e é válido.
DONE Estado concluído. O experimento foi concluído e não é mais válido.
EXPIRED Estado expirado. O experimento expirou e não é mais válido.

Anotações de ferramentas

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