Herramienta: get_conversation
Obtiene detalles de la conversación especificada.
En el siguiente ejemplo, se muestra cómo usar curl para invocar la herramienta de MCP get_conversation.
| Solicitud de 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": "get_conversation", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Esquema de entrada
Mensaje de solicitud para AgentService.GetConversation.
GetConversationRequest
| Representación JSON |
|---|
{
"name": string,
"source": enum ( |
| Campos | |
|---|---|
name |
Obligatorio. Es el nombre del recurso de la conversación que se recuperará. |
source |
Es opcional. Indica la fuente de la conversación. Si no se configura, se buscará en todas las fuentes. |
Esquema de salida
Una conversación representa una interacción entre un usuario final y la app de CES.
Conversación
| Representación JSON |
|---|
{ "name": string, "startTime": string, "endTime": string, "turns": [ { object ( |
| Campos | |
|---|---|
name |
Es el identificador. Es el identificador único de la conversación. Formato: |
startTime |
Solo salida. Es la marca de tiempo de cuando se creó la conversación. Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
endTime |
Solo salida. Es la marca de tiempo en la que se completó la conversación. Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
turns[] |
Obligatorio. Son los turnos de la conversación. |
turnCount |
Solo salida. Es la cantidad de turnos en la conversación. |
channelType |
OBSOLETO. En su lugar, usa |
source |
Solo salida. Indica la fuente de la conversación. |
inputTypes[] |
Solo salida. Son los tipos de entrada de la conversación. |
entryAgent |
Solo salida. Es el agente que inicialmente maneja la conversación. Si no se especifica, el agente raíz controla la conversación. Formato: |
deployment |
Solo salida. Es la implementación de la app que se usa para procesar la conversación. Formato: |
appVersion |
Solo salida. Es la versión de la app que se usó para procesar la conversación. Formato: |
languageCode |
Solo salida. Es el código de idioma de la conversación. |
messages[] |
Obsoleto. En su lugar, usa giros. |
Marca de tiempo
| Representación JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campos | |
|---|---|
seconds |
Representa los segundos de la hora UTC desde la época de Unix 1970-01-01T00:00:00Z. Debe estar entre -62135596800 y 253402300799 inclusive (lo que corresponde a 0001-01-01T00:00:00Z y 9999-12-31T23:59:59Z). |
nanos |
Fracciones no negativas de un segundo a una resolución de nanosegundos. Este campo es la parte de la duración en nanosegundos, no una alternativa a los segundos. Los valores de segundos negativos con fracciones deben tener valores nanos no negativos que se cuentan hacia adelante en el tiempo. Debe ser un valor entre 0 y 999,999,999, inclusive. |
Turno
| Representación JSON |
|---|
{ "messages": [ { object ( |
| Campos | |
|---|---|
messages[] |
Es opcional. Es la lista de mensajes en el turno de conversación, incluidas las entradas del usuario, las respuestas del agente y los eventos intermedios durante el procesamiento. |
rootSpan |
Es opcional. Es el intervalo raíz del procesamiento de la acción. |
Mensaje
| Representación JSON |
|---|
{
"role": string,
"chunks": [
{
object ( |
| Campos | |
|---|---|
role |
Es opcional. Es el rol dentro de la conversación, p.ej., usuario o agente. |
chunks[] |
Es opcional. Es el contenido del mensaje como una serie de fragmentos. |
eventTime |
Es opcional. Es la marca de tiempo del momento en que se envió o recibió el mensaje. No se debe usar si el mensaje forma parte de un Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
Fragmento
| Representación JSON |
|---|
{ // Union field |
| Campos | |
|---|---|
Campo de unión data. Datos de fragmentos data puede ser solo uno de los parámetros siguientes: |
|
text |
Es opcional. Datos de texto. |
transcript |
Es opcional. Es la transcripción asociada al audio. |
blob |
Es opcional. Son los datos del BLOB. |
payload |
Es opcional. Son los datos de carga útil personalizados. |
image |
Es opcional. Son los datos de la imagen. |
toolCall |
Es opcional. Es la solicitud de ejecución de la herramienta. |
toolResponse |
Es opcional. Es la respuesta de la ejecución de la herramienta. |
agentTransfer |
Es opcional. Es el evento de transferencia del agente. |
updatedVariables |
Un struct representa las variables que se actualizaron en la conversación, con claves según los nombres de las variables. |
defaultVariables |
Un struct representa las variables predeterminadas al comienzo de la conversación, con claves según los nombres de las variables. |
BLOB
| Representación JSON |
|---|
{ "mimeType": string, "data": string } |
| Campos | |
|---|---|
mimeType |
Obligatorio. Es el tipo de MIME estándar de IANA de los datos de origen. |
data |
Obligatorio. Son los bytes sin procesar del BLOB. Es una cadena codificada en Base64. |
Struct
| Representación JSON |
|---|
{ "fields": { string: value, ... } } |
| Campos | |
|---|---|
fields |
Es un mapa no ordenado de valores escritos de forma dinámica. Un objeto que contiene una lista de pares |
FieldsEntry
| Representación JSON |
|---|
{ "key": string, "value": value } |
| Campos | |
|---|---|
key |
|
value |
|
Valor
| Representación JSON |
|---|
{ // Union field |
| Campos | |
|---|---|
Campo de unión kind. Es el tipo de valor. kind puede ser solo uno de los parámetros siguientes: |
|
nullValue |
Representa un valor nulo. |
numberValue |
Representa un valor doble. |
stringValue |
Representa un valor de cadena. |
boolValue |
Representa un valor booleano. |
structValue |
Representa un valor estructurado. |
listValue |
Representa un |
ListValue
| Representación JSON |
|---|
{ "values": [ value ] } |
| Campos | |
|---|---|
values[] |
Es un campo repetido de valores escritos de forma dinámica. |
Imagen
| Representación JSON |
|---|
{ "mimeType": string, "data": string } |
| Campos | |
|---|---|
mimeType |
Obligatorio. Es el tipo de MIME estándar de IANA de los datos de origen. Los tipos de imágenes admitidos incluyen los siguientes: * image/png * image/jpeg * image/webp |
data |
Obligatorio. Son los bytes sin procesar de la imagen. Es una cadena codificada en Base64. |
ToolCall
| Representación JSON |
|---|
{ "id": string, "displayName": string, "args": { object }, // Union field |
| Campos | |
|---|---|
id |
Es opcional. Es el identificador único de la llamada a la herramienta. Si se completa, el cliente debe devolver el resultado de la ejecución con el ID para coincidencias en |
displayName |
Solo salida. Nombre visible de la herramienta. |
args |
Es opcional. Son los parámetros y valores de entrada de la herramienta en formato de objeto JSON. |
Campo de unión tool_identifier. Es el identificador de la herramienta que se ejecutará. Puede ser una herramienta persistente o una herramienta de un conjunto de herramientas. tool_identifier puede ser solo uno de los parámetros siguientes: |
|
tool |
Es opcional. Es el nombre de la herramienta que se ejecutará. Formato: |
toolsetTool |
Es opcional. Es la herramienta del conjunto de herramientas que se ejecutará. |
ToolsetTool
| Representación JSON |
|---|
{ "toolset": string, "toolId": string } |
| Campos | |
|---|---|
toolset |
Obligatorio. Es el nombre del recurso del conjunto de herramientas del que se deriva esta herramienta. Formato: |
toolId |
Es opcional. Es el ID de la herramienta para filtrar las herramientas y recuperar el esquema. |
ToolResponse
| Representación JSON |
|---|
{ "id": string, "displayName": string, "response": { object }, // Union field |
| Campos | |
|---|---|
id |
Es opcional. Es el ID para coincidencias del |
displayName |
Solo salida. Nombre visible de la herramienta. |
response |
Obligatorio. Es el resultado de la ejecución de la herramienta en formato de objeto JSON. Usa la clave "output" para especificar la respuesta de la herramienta y la clave "error" para especificar los detalles del error (si hay alguno). Si no se especifican las claves "output" y "error", toda la "response" se trata como resultado de la ejecución de la herramienta. |
Campo de unión tool_identifier. Es el identificador de la herramienta que se ejecutó. Puede ser una herramienta persistente o una herramienta de un conjunto de herramientas. tool_identifier puede ser solo uno de los parámetros siguientes: |
|
tool |
Es opcional. Es el nombre de la herramienta que se ejecutará. Formato: |
toolsetTool |
Es opcional. Es la herramienta del conjunto de herramientas que se ejecutó. |
AgentTransfer
| Representación JSON |
|---|
{ "targetAgent": string, "displayName": string } |
| Campos | |
|---|---|
targetAgent |
Obligatorio. Es el agente al que se transfiere la conversación. El agente se encargará de la conversación a partir de este punto. Formato: |
displayName |
Solo salida. Es el nombre visible del agente. |
Intervalo
| Representación JSON |
|---|
{
"name": string,
"startTime": string,
"endTime": string,
"duration": string,
"attributes": {
object
},
"childSpans": [
{
object ( |
| Campos | |
|---|---|
name |
Solo salida. Es el nombre del intervalo. |
startTime |
Solo salida. Es la hora de inicio del período. Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
endTime |
Solo salida. Es la hora de finalización del período. Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
duration |
Solo salida. Es la duración del intervalo. Una duración en segundos con hasta nueve dígitos decimales, que terminan en “ |
attributes |
Solo salida. Son los atributos clave-valor asociados con el intervalo. |
childSpans[] |
Solo salida. Son los intervalos secundarios anidados en este intervalo. |
Duración
| Representación JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campos | |
|---|---|
seconds |
Son los segundos firmados del período. Debe estar entre -315,576,000,000 y +315,576,000,000, inclusive. Nota: Estos límites se calculan de la siguiente manera: 60 s/min * 60 min/h * 24 h/día * 365.25 días/año * 10,000 años |
nanos |
Fracciones firmadas de un segundo con una resolución de nanosegundos del período. Las duraciones inferiores a un segundo se representan con un campo |
Anotaciones de herramientas
Sugerencia destructiva: ❌ | Sugerencia idempotente: ✅ | Sugerencia de solo lectura: ✅ | Sugerencia de mundo abierto: ❌