Outil : push_git_commits
Transférez les modifications validées d'un espace de travail Dataform vers le dépôt Git distant.
Prérequis : Vous devez valider les modifications apportées à l'espace de travail à l'aide de l'outil commit_workspace_changes avant d'effectuer le transfert. Les modifications non validées restent locales et ne sont pas transférées.
Si vous prévoyez d'utiliser l'outil create_release_config, vous devez d'abord envoyer vos commits. Une configuration de version résout son git_commitish par rapport au dépôt Git distant. Par conséquent, une branche ou un commit qui n'existe que dans l'espace de travail local est invisible pour elle.
La valeur du paramètre name doit être au format projects/{project_id}/locations/{location}/repositories/{repository}/workspaces/{workspace}.
La valeur du paramètre remote_branch correspond à la branche distante vers laquelle effectuer le push. Si elle est omise, un espace de travail avec la gestion des branches activée effectue un push vers sa branche actuellement extraite, et tout autre espace de travail effectue un push vers la branche par défaut configurée du dépôt.
L'exemple de code suivant montre comment utiliser curl pour appeler l'outil MCP push_git_commits.
| Requête curl |
|---|
curl --location 'https://dataform.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "push_git_commits", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
Schéma d'entrée
Message de requête PushGitCommits.
PushGitCommitsRequest
| Représentation JSON |
|---|
{ "name": string, "remoteBranch": string } |
| Champs | |
|---|---|
name |
Obligatoire. Nom de l'espace de travail. |
remoteBranch |
Facultatif. Nom de la branche du dépôt Git distant vers laquelle les commits doivent être envoyés. Si elle n'est pas définie, le nom de branche par défaut du dépôt sera utilisé. |
Schéma de sortie
Message de réponse PushGitCommits.
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 de destruction : ❌ | Indication d'idempotence : ❌ | Indication de lecture seule : ❌ | Indication de monde ouvert : ✅