MCP Tools Reference: ces.googleapis.com

Outil : list_conversations

Liste les conversations.

L'exemple de code suivant montre comment utiliser curl pour appeler l'outil MCP list_conversations.

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

Schéma d'entrée

Message de requête pour AgentService.ListConversations.

ListConversationsRequest

Représentation JSON
{
  "parent": string,
  "pageSize": integer,
  "pageToken": string,
  "filter": string,
  "source": enum (Source),
  "sources": [
    enum (Source)
  ]
}
Champs
parent

string

Obligatoire. Nom de ressource de l'application à partir de laquelle lister les conversations.

pageSize

integer

Facultatif. Taille de la page demandée. Le serveur peut renvoyer un nombre d'éléments inférieur à celui demandé. Si aucune valeur n'est spécifiée, le serveur sélectionne une valeur par défaut appropriée.

pageToken

string

Facultatif. La valeur next_page_token renvoyée par un appel de liste AgentService.ListConversations précédent.

filter

string

Facultatif. Filtre à appliquer lors de la liste des conversations. Pour en savoir plus, consultez https://google.aip.dev/160.

source

enum (Source)

Facultatif. Indiquez la source de la conversation. Si aucune valeur n'est définie, Source.Live est appliqué par défaut. Sera abandonné au profit du champ sources.

sources[]

enum (Source)

Facultatif. Indiquez les sources des conversations. Si aucune n'est définie, toutes les sources disponibles seront appliquées par défaut.

Source

Source de la conversation.

Enums
SOURCE_UNSPECIFIED Source non spécifiée.
LIVE La conversation provient de l'utilisateur final.
SIMULATOR La conversation provient du simulateur.
EVAL La conversation provient de l'évaluation.
AGENT_TOOL La conversation provient d'un outil d'agent. L'outil Agent exécute l'agent dans une session distincte, qui est conservée à des fins de test et de débogage.

Schéma de sortie

Message de réponse pour AgentService.ListConversations.

ListConversationsResponse

Représentation JSON
{
  "conversations": [
    {
      object (Conversation)
    }
  ],
  "nextPageToken": string
}
Champs
conversations[]

object (Conversation)

Liste des conversations.

nextPageToken

string

Jeton pouvant être envoyé en tant que ListConversationsRequest.page_token pour récupérer la page suivante. L'absence de ce champ indique qu'il n'y a pas d'autres pages.

Conversation

Représentation JSON
{
  "name": string,
  "startTime": string,
  "endTime": string,
  "turns": [
    {
      object (Turn)
    }
  ],
  "turnCount": integer,
  "channelType": enum (ChannelType),
  "source": enum (Source),
  "inputTypes": [
    enum (InputType)
  ],
  "entryAgent": string,
  "deployment": string,
  "appVersion": string,
  "languageCode": string,
  "messages": [
    {
      object (Message)
    }
  ]
}
Champs
name

string

Identifiant. Identifiant unique de la conversation. Format : projects/{project}/locations/{location}/apps/{app}/conversations/{conversation}

startTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la création de la conversation.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

endTime

string (Timestamp format)

Uniquement en sortie. Horodatage de la fin de la conversation.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

turns[]

object (Turn)

Obligatoire. Les tours de parole dans la conversation.

turnCount

integer

Uniquement en sortie. Nombre de tours de parole dans la conversation.

channelType
(deprecated)

enum (ChannelType)

OBSOLÈTE. Veuillez utiliser input_types à la place.

source

enum (Source)

Uniquement en sortie. Indiquez la source de la conversation.

inputTypes[]

enum (InputType)

Uniquement en sortie. Types d'entrées de la conversation.

entryAgent

string

Uniquement en sortie. Agent qui gère initialement la conversation. Si aucune valeur n'est spécifiée, la conversation est gérée par l'agent racine. Format : projects/{project}/locations/{location}/apps/{app}/agents/{agent}

deployment

string

Uniquement en sortie. Déploiement de l'application utilisée pour traiter la conversation. Format : projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}

appVersion

string

Uniquement en sortie. Version de l'application utilisée pour traiter la conversation. Format : projects/{project}/locations/{location}/apps/{app}/versions/{version}

languageCode

string

Uniquement en sortie. Code de langue de la conversation.

messages[]
(deprecated)

object (Message)

Obsolète. Utilisez plutôt les tours.

Horodatage

Représentation JSON
{
  "seconds": string,
  "nanos": integer
}
Champs
seconds

string (int64 format)

Représente les secondes de l'heure UTC à partir de l'epoch Unix 1970-01-01T00:00:00Z. Doit être compris entre -62135596800 et 253402300799 inclus (ce qui correspond à 0001-01-01T00:00:00Z et 9999-12-31T23:59:59Z).

nanos

integer

Fractions de secondes non négatives avec une précision de l'ordre de la nanoseconde. Ce champ correspond à la partie en nanosecondes de la durée, et non à une alternative aux secondes. Les valeurs de secondes négatives avec des fractions doivent toujours comporter des valeurs de nanosecondes non négatives comptabilisées dans le temps. Doit être compris entre 0 et 999 999 999 (inclus).

Tourner

Représentation JSON
{
  "messages": [
    {
      object (Message)
    }
  ],
  "rootSpan": {
    object (Span)
  },
  "userIntendedText": string
}
Champs
messages[]

object (Message)

Facultatif. Liste des messages du tour de conversation, y compris l'entrée utilisateur, les réponses de l'agent et les événements intermédiaires lors du traitement.

rootSpan

object (Span)

Facultatif. Portée racine du traitement de l'action.

userIntendedText

string

Facultatif. Texte de vérité terrain prévu de l'appelant simulé (Polysynth). N'est renseigné que lorsque les métriques sur le taux d'erreurs de mots sont activées.

Message

Représentation JSON
{
  "role": string,
  "chunks": [
    {
      object (Chunk)
    }
  ],
  "eventTime": string
}
Champs
role

string

Facultatif. Rôle dans la conversation (par exemple, utilisateur ou agent).

chunks[]

object (Chunk)

Facultatif. Contenu du message sous forme de série de blocs.

eventTime

string (Timestamp format)

Facultatif. Horodatage de l'envoi ou de la réception du message. Ne doit pas être utilisé si le message fait partie d'un example.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

Chunk

Représentation JSON
{

  // Union field data can be only one of the following:
  "text": string,
  "transcript": string,
  "blob": {
    object (Blob)
  },
  "payload": {
    object
  },
  "image": {
    object (Image)
  },
  "toolCall": {
    object (ToolCall)
  },
  "toolResponse": {
    object (ToolResponse)
  },
  "agentTransfer": {
    object (AgentTransfer)
  },
  "updatedVariables": {
    object
  },
  "defaultVariables": {
    object
  }
  // End of list of possible types for union field data.
}
Champs
Champ d'union data. Regroupez les données. data ne peut être qu'un des éléments suivants :
text

string

Facultatif. Données textuelles.

transcript

string

Facultatif. Transcription associée au contenu audio.

blob

object (Blob)

Facultatif. Données blob.

payload

object (Struct format)

Facultatif. Données de charge utile personnalisées.

image

object (Image)

Facultatif. Données d'image.

toolCall

object (ToolCall)

Facultatif. Requête d'exécution d'outil.

toolResponse

object (ToolResponse)

Facultatif. Réponse à l'exécution de l'outil.

agentTransfer

object (AgentTransfer)

Facultatif. Événement de transfert d'agent.

updatedVariables

object (Struct format)

Une structure représente les variables qui ont été mises à jour dans la conversation, avec les noms de variables comme clés.

defaultVariables

object (Struct format)

Une structure représente les variables par défaut au début de la conversation, avec les noms de variables comme clés.

Blob

Représentation JSON
{
  "mimeType": string,
  "data": string
}
Champs
mimeType

string

Obligatoire. Type MIME standard IANA des données sources.

data

string (bytes format)

Obligatoire. Octets bruts de l'objet blob.

Chaîne encodée en base64.

Struct

Représentation JSON
{
  "fields": {
    string: value,
    ...
  }
}
Champs
fields

map (key: string, value: value (Value format))

Carte non ordonnée de valeurs typées dynamiquement.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Représentation JSON
{
  "key": string,
  "value": value
}
Champs
key

string

value

value (Value format)

Valeur

Représentation JSON
{

  // Union field kind can be only one of the following:
  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
  // End of list of possible types for union field kind.
}
Champs
Champ d'union kind. Type de valeur. kind ne peut être qu'un des éléments suivants :
nullValue

null

Représente un null JSON.

numberValue

number

Représente un nombre JSON. Ne doit pas être NaN, Infinity ni -Infinity, car ces valeurs ne sont pas acceptées au format JSON. Il ne peut pas non plus représenter de grandes valeurs Int64, car le format JSON ne les accepte généralement pas dans son type numérique.

stringValue

string

Représente une chaîne JSON.

boolValue

boolean

Représente une valeur booléenne JSON (littéral true ou false dans JSON).

structValue

object (Struct format)

Représente un objet JSON.

listValue

array (ListValue format)

Représente un tableau JSON.

ListValue

Représentation JSON
{
  "values": [
    value
  ]
}
Champs
values[]

value (Value format)

Champ répété de valeurs typées de manière dynamique.

Image

Représentation JSON
{
  "mimeType": string,
  "data": string,
  "altText": string
}
Champs
mimeType

string

Obligatoire. Type MIME standard IANA des données sources. Les types d'images acceptés sont les suivants : * image/png * image/jpeg * image/webp

data

string (bytes format)

Obligatoire. Octets bruts de l'image.

Chaîne encodée en base64.

altText

string

Facultatif. Texte alternatif de l'image.

ToolCall

Représentation JSON
{
  "id": string,
  "displayName": string,
  "args": {
    object
  },
  "parentToolCallId": string,
  "agentName": string,

  // Union field tool_identifier can be only one of the following:
  "tool": string,
  "toolsetTool": {
    object (ToolsetTool)
  }
  // End of list of possible types for union field tool_identifier.
}
Champs
id

string

Facultatif. Identifiant unique de l'appel d'outil. Si ce champ est renseigné, le client doit renvoyer le résultat de l'exécution avec l'ID correspondant dans ToolResponse.

displayName

string

Uniquement en sortie. Nom à afficher de l'outil.

args

object (Struct format)

Facultatif. Paramètres et valeurs d'entrée de l'outil au format d'objet JSON.

parentToolCallId

string

Uniquement en sortie. ID de l'appel d'outil qui a déclenché celui-ci, lorsqu'il a été émis par un sous-agent travaillant pour le compte d'un appel parent. Vide pour les appels de premier niveau. Permet à un client de regrouper le travail d'un sous-agent sous l'appel qui l'a déclenché au lieu de rendre chaque étape en tant que frère.

agentName

string

Uniquement en sortie. Nom de l'agent lisible par l'humain qui a émis cet appel, par exemple "Architecte de contrat". Vide lorsque l'agent racine l'a émis.

Champ d'union tool_identifier. Identifiant de l'outil à exécuter. Il peut s'agir d'un outil persistant ou d'un outil d'un ensemble d'outils. tool_identifier ne peut être qu'un des éléments suivants :
tool

string

Facultatif. Nom de l'outil à exécuter. Format : projects/{project}/locations/{location}/apps/{app}/tools/{tool}

toolsetTool

object (ToolsetTool)

Facultatif. Outil du toolset à exécuter.

ToolsetTool

Représentation JSON
{
  "toolset": string,
  "toolId": string
}
Champs
toolset

string

Obligatoire. Nom de ressource du Toolset à partir duquel cet outil est dérivé. Format : projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

toolId

string

Facultatif. ID de l'outil permettant de filtrer les outils pour récupérer le schéma.

ToolResponse

Représentation JSON
{
  "id": string,
  "displayName": string,
  "response": {
    object
  },
  "parentToolCallId": string,
  "agentName": string,

  // Union field tool_identifier can be only one of the following:
  "tool": string,
  "toolsetTool": {
    object (ToolsetTool)
  }
  // End of list of possible types for union field tool_identifier.
}
Champs
id

string

Facultatif. ID correspondant du tool call auquel la réponse se rapporte.

displayName

string

Uniquement en sortie. Nom à afficher de l'outil.

response

object (Struct format)

Obligatoire. Résultat de l'exécution de l'outil au format d'objet JSON. Utilisez la clé "output" pour spécifier la réponse de l'outil et la clé "error" pour spécifier les détails de l'erreur (le cas échéant). Si les clés "output" et "error" ne sont pas spécifiées, l'ensemble de la "response" est traité comme le résultat de l'exécution de l'outil.

parentToolCallId

string

Uniquement en sortie. ID de l'appel d'outil qui a déclenché celui-ci, lorsqu'il a été émis par un sous-agent travaillant pour le compte d'un appel parent. Vide pour les appels de premier niveau. Permet à un client de regrouper le travail d'un sous-agent sous l'appel qui l'a déclenché au lieu de rendre chaque étape en tant que frère.

agentName

string

Uniquement en sortie. Nom de l'agent lisible par l'humain qui a émis cet appel, par exemple "Architecte de contrat". Vide lorsque l'agent racine l'a émis.

Champ d'union tool_identifier. Identifiant de l'outil exécuté. Il peut s'agir d'un outil persistant ou d'un outil d'un ensemble d'outils. tool_identifier ne peut être qu'un des éléments suivants :
tool

string

Facultatif. Nom de l'outil à exécuter. Format : projects/{project}/locations/{location}/apps/{app}/tools/{tool}

toolsetTool

object (ToolsetTool)

Facultatif. Outil de l'ensemble d'outils qui a été exécuté.

AgentTransfer

Représentation JSON
{
  "targetAgent": string,
  "displayName": string
}
Champs
targetAgent

string

Obligatoire. Agent auquel la conversation est transférée. L'agent gérera la conversation à partir de ce moment. Format : projects/{project}/locations/{location}/apps/{app}/agents/{agent}

displayName

string

Uniquement en sortie. Nom à afficher de l'agent.

Segment

Représentation JSON
{
  "name": string,
  "startTime": string,
  "endTime": string,
  "duration": string,
  "attributes": {
    object
  },
  "childSpans": [
    {
      object (Span)
    }
  ]
}
Champs
name

string

Uniquement en sortie. Nom du segment.

startTime

string (Timestamp format)

Uniquement en sortie. Heure de début du segment.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

endTime

string (Timestamp format)

Uniquement en sortie. Heure de fin de la période.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

duration

string (Duration format)

Uniquement en sortie. Durée du segment.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

attributes

object (Struct format)

Uniquement en sortie. Attributs clé-valeur associés à la portée.

childSpans[]

object (Span)

Uniquement en sortie. Les portées enfants imbriquées sous cette portée.

Durée

Représentation JSON
{
  "seconds": string,
  "nanos": integer
}
Champs
seconds

string (int64 format)

Secondes signées de la période. La valeur doit être comprise entre -315 576 000 000 et +315 576 000 000 (inclus). Remarque : Ces limites sont calculées à partir de : 60 s/min * 60 min/h * 24 h/jour * 365,25 jours/an * 10 000 ans.

nanos

integer

Fractions de seconde signées avec une résolution en nanosecondes de la durée. Les durées inférieures à une seconde sont représentées par un champ seconds égal à 0 et un champ nanos positif ou négatif. Pour les durées d'une seconde ou plus, une valeur non nulle pour le champ nanos doit avoir le même signe que le champ seconds. La valeur doit être comprise entre -999 999 999 et +999 999 999 inclus.

NullValue

Représente un null JSON.

NullValue est une sentinelle qui utilise une énumération avec une seule valeur pour représenter la valeur nulle de l'union de type Value.

Un champ de type NullValue avec une valeur autre que 0 est considéré comme non valide. La plupart des sérialiseurs ProtoJSON émettent un Value avec un null_value défini comme un null JSON, quelle que soit la valeur entière, et effectuent donc un aller-retour vers une valeur 0.

Enums
NULL_VALUE Valeur nulle.

ChannelType

Type de canal de la conversation.

Enums
CHANNEL_TYPE_UNSPECIFIED Type de canal non spécifié.
TEXT La conversation ne contient que des messages texte entre l'utilisateur final et l'agent.
AUDIO La conversation contient des messages audio entre l'utilisateur final et l'agent.
MULTIMODAL Messages multimodaux (image, par exemple) de la conversation entre l'utilisateur final et l'agent.

Source

Source de la conversation.

Enums
SOURCE_UNSPECIFIED Source non spécifiée.
LIVE La conversation provient de l'utilisateur final.
SIMULATOR La conversation provient du simulateur.
EVAL La conversation provient de l'évaluation.
AGENT_TOOL La conversation provient d'un outil d'agent. L'outil Agent exécute l'agent dans une session distincte, qui est conservée à des fins de test et de débogage.

InputType

Type du message d'entrée.

Enums
INPUT_TYPE_UNSPECIFIED Type d'entrée non spécifié.
INPUT_TYPE_TEXT Saisie de texte.
INPUT_TYPE_EVENT Entrée d'événement.
INPUT_TYPE_AUDIO Entrée audio.
INPUT_TYPE_IMAGE Image d'entrée.
INPUT_TYPE_BLOB Entrée Blob.
INPUT_TYPE_TOOL_RESPONSE Entrée de réponse de l'outil de fonction client.
INPUT_TYPE_VARIABLES Variables d'entrée.

Annotations d'outils

Les annotations d'outil sont envoyées aux clients MCP pour décrire le risque de base d'un outil donné. La plupart des clients traitent ces indices comme non fiables, mais ils peuvent être utilisés pour déterminer quand un message de confirmation peut être envoyé à un utilisateur.

En plus de la chaîne de titre, les indications booléennes suivantes sont définies comme suit :

  • readOnlyHint : si la valeur est "true", l'outil ne modifie pas son environnement. Valeur par défaut : "false".
  • destructiveHint : si la valeur est "true", l'outil peut effectuer des actions destructrices. Si la valeur est "false", l'outil ne peut effectuer que des actions d'ajout. Valeur par défaut : "true".
  • idempotentHint : si la valeur est "true", appeler l'outil à plusieurs reprises avec les mêmes arguments n'aura aucun effet supplémentaire sur son environnement. Valeur par défaut : "false".
  • openWorldHint : si la valeur est "true", l'outil peut interagir avec un "monde ouvert" d'entités externes. Si la valeur est "false", l'outil ne peut interagir qu'avec des entités internes. Par exemple, un outil de recherche Web serait en monde ouvert, tandis qu'un outil de mémoire ne le serait pas.

Indication destructive : ❌ | Indication idempotente : ✅ | Indication en lecture seule : ✅ | Indication Open World : ❌