MCP Tools Reference: ces.googleapis.com

Outil : get_operation

Obtient l'état d'une opération de longue durée.

Utilisation : certains outils (par exemple, run_evaluation) renvoient une opération de longue durée. Vous pouvez utiliser cet outil pour obtenir l'état de l'opération. Elle peut être appelée de manière répétée pour interroger l'état d'une opération de longue durée.

Paramètres * name : nom de l'opération à obtenir. * name doit correspondre au nom renvoyé par l'outil qui a lancé l'opération. * name doit être au format projects/{project}/locations/{location}/operations/{operation}.

L'exemple suivant montre comment utiliser curl pour appeler l'outil MCP get_operation.

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

Schéma d'entrée

Message de requête pour Operations.GetOperation.

GetOperationRequest

Représentation JSON
{
  "name": string
}
Champs
name

string

Nom de la ressource de l'opération.

Schéma de sortie

Cette ressource représente une opération de longue durée résultant d'un appel d'API réseau.

Opération

Représentation JSON
{
  "name": string,
  "metadata": {
    "@type": string,
    field1: ...,
    ...
  },
  "done": boolean,

  // Union field result can be only one of the following:
  "error": {
    object (Status)
  },
  "response": {
    "@type": string,
    field1: ...,
    ...
  }
  // End of list of possible types for union field result.
}
Champs
name

string

Nom attribué par le serveur. Unique au sein du service qui le renvoie initialement. Si vous utilisez le mappage HTTP par défaut, le champ name doit être un nom de ressource se terminant par operations/{unique_id}.

metadata

object

Métadonnées spécifiques au service associées à l'opération. Ce champ contient généralement des informations de progression et des métadonnées courantes telles que la date de création. Certains services peuvent ne pas fournir ce genre de métadonnées. Toute méthode renvoyant une opération de longue durée doit indiquer le type de métadonnées, le cas échéant.

Objet contenant des champs d'un type arbitraire. Un champ supplémentaire "@type" contient un URI identifiant le type. Exemple : { "id": 1234, "@type": "types.example.com/standard/id" }.

done

boolean

Si la valeur est false, cela signifie que l'opération est toujours en cours. Si elle est définie sur true, l'opération est terminée, et un message error ou response est disponible.

Champ d'union result. Résultat de l'opération, qui peut être une erreur (message error) ou une réponse valide (message response). Si done == false, ni error, ni response ne sont définis. Si done == true, une seule des options error ou response peut être définie. Certains services peuvent ne pas fournir le résultat. result ne peut être qu'un des éléments suivants :
error

object (Status)

Résultat d'erreur de l'opération en cas d'échec ou d'annulation.

response

object

Réponse normale indiquant la réussite de l'opération. Si la méthode d'origine ne renvoie aucune donnée en cas de réussite (telle que Delete), la réponse est google.protobuf.Empty. Si la méthode d'origine est une méthode Get/Create/Update standard, la réponse doit correspondre à la ressource. Pour les autres méthodes, la réponse doit avoir le type XxxResponse, où Xxx est le nom de la méthode d'origine. Par exemple, si le nom de la méthode d'origine est TakeSnapshot(), le type de réponse déduit est TakeSnapshotResponse.

Objet contenant des champs d'un type arbitraire. Un champ supplémentaire "@type" contient un URI identifiant le type. Exemple : { "id": 1234, "@type": "types.example.com/standard/id" }.

Tous

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

string

Identifie le type du message Protobuf sérialisé avec une référence URI composée d'un préfixe se terminant par une barre oblique et du nom de type complet.

Exemple : type.googleapis.com/google.protobuf.StringValue

Cette chaîne doit contenir au moins un caractère /, et le contenu après le dernier / doit être le nom complet du type sous forme canonique, sans point au début. N'écrivez pas de schéma sur ces références URI afin que les clients ne tentent pas de les contacter.

Le préfixe est arbitraire et les implémentations Protobuf sont censées supprimer tout ce qui précède le dernier / (y compris) pour identifier le type. type.googleapis.com/ est un préfixe par défaut courant requis par certaines anciennes implémentations. Ce préfixe n'indique pas l'origine du type, et les URI qui le contiennent ne sont pas censés répondre aux requêtes.

Toutes les chaînes d'URL de type doivent être des références URI légales avec la restriction supplémentaire (pour le format texte) que le contenu de la référence ne doit être composé que de caractères alphanumériques, d'échappements encodés en pourcentage et de caractères de l'ensemble suivant (sans les accents graves extérieurs) : /-.~_!$&()*+,;=. Bien que nous autorisions les encodages en pourcentage, les implémentations ne doivent pas les décoder pour éviter toute confusion avec les analyseurs existants. Par exemple, type.googleapis.com%2FFoo doit être rejeté.

Dans la conception d'origine de Any, la possibilité de lancer un service de résolution de type à ces URL de type a été envisagée, mais Protobuf n'en a jamais implémenté et considère que la prise de contact avec ces URL est problématique et constitue un problème de sécurité potentiel. N'essayez pas de contacter les URL de type.

value

string (bytes format)

Contient une sérialisation Protobuf du type décrit par type_url.

Chaîne encodée en base64.

État

Représentation JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Champs
code

integer

Code d'état, qui doit être une valeur d'énumération de google.rpc.Code.

message

string

Message d'erreur destiné au développeur, qui doit être en anglais. Tout message d'erreur destiné aux utilisateurs doit être localisé et envoyé dans le champ google.rpc.Status.details, ou localisé par le client.

details[]

object

Liste de messages comportant les détails de l'erreur. Il existe un ensemble commun de types de message utilisable par les API.

Objet contenant des champs d'un type arbitraire. Un champ supplémentaire "@type" contient un URI identifiant le type. Exemple : { "id": 1234, "@type": "types.example.com/standard/id" }.

Annotations d'outils

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