MCP Tools Reference: dataform.googleapis.com

Outil : list_repositories

Lister les dépôts Dataform dans un projet et un emplacement Google Cloud donnés

La valeur du paramètre parent doit être au format projects/{project_id}/locations/{location}.

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

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": "list_repositories",
    "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 ListRepositories.

ListRepositoriesRequest

Représentation JSON
{
  "parent": string,
  "pageSize": integer,
  "pageToken": string,
  "orderBy": string,
  "filter": string
}
Champs
parent

string

Obligatoire. Emplacement dans lequel lister les dépôts. Il doit respecter le format projects/*/locations/*.

pageSize

integer

Facultatif. Nombre maximal de dépôts à renvoyer. 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. Jeton de page reçu d'un appel ListRepositories précédent. Fournissez-le pour récupérer la page suivante.

Lors de la pagination, tous les autres paramètres fournis à ListRepositories, à l'exception de page_size, doivent correspondre à l'appel ayant fourni le jeton de page.

orderBy

string

Facultatif. Ce champ n'accepte que le tri par name. Si aucune valeur n'est spécifiée, le serveur choisit l'ordre. Si elle est spécifiée, l'ordre par défaut est croissant pour le champ name.

filter

string

Facultatif. Filtre pour la liste renvoyée.

Schéma de sortie

Message de réponse ListRepositories.

ListRepositoriesResponse

Représentation JSON
{
  "repositories": [
    {
      object (Repository)
    }
  ],
  "nextPageToken": string,
  "unreachable": [
    string
  ]
}
Champs
repositories[]

object (Repository)

Liste des dépôts.

nextPageToken

string

Jeton pouvant être envoyé en tant que page_token pour récupérer la page suivante. Si ce champ est omis, il n'y a pas d'autres pages.

unreachable[]

string

Emplacements inaccessibles.

Dépôt

Représentation JSON
{
  "name": string,
  "createTime": string,
  "displayName": string,
  "gitRemoteSettings": {
    object (GitRemoteSettings)
  },
  "npmrcEnvironmentVariablesSecretVersion": string,
  "workspaceCompilationOverrides": {
    object (WorkspaceCompilationOverrides)
  },
  "labels": {
    string: string,
    ...
  },
  "setAuthenticatedUserAdmin": boolean,
  "serviceAccount": string,
  "kmsKeyName": string,
  "dataEncryptionState": {
    object (DataEncryptionState)
  },

  // Union field _containing_folder can be only one of the following:
  "containingFolder": string
  // End of list of possible types for union field _containing_folder.

  // Union field _team_folder_name can be only one of the following:
  "teamFolderName": string
  // End of list of possible types for union field _team_folder_name.

  // Union field _internal_metadata can be only one of the following:
  "internalMetadata": string
  // End of list of possible types for union field _internal_metadata.
}
Champs
name

string

Identifiant. Nom du dépôt.

createTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la création du dépôt.

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".

displayName

string

Facultatif. Nom convivial du dépôt.

gitRemoteSettings

object (GitRemoteSettings)

Facultatif. Si cette option est activée, ce dépôt est associé à un dépôt Git distant.

npmrcEnvironmentVariablesSecretVersion

string

Facultatif. Nom de la version du secret Secret Manager à utiliser pour interpoler les variables dans le fichier .npmrc pour les opérations d'installation de packages. Il doit respecter le format projects/*/secrets/*/versions/*. Le fichier lui-même doit être au format JSON.

workspaceCompilationOverrides

object (WorkspaceCompilationOverrides)

Facultatif. Si cette option est définie, les champs de workspace_compilation_overrides remplacent les paramètres de compilation par défaut spécifiés dans dataform.json lors de la création de résultats de compilation à l'échelle de l'espace de travail. Pour en savoir plus, consultez la documentation sur WorkspaceCompilationOverrides.

labels

map (key: string, value: string)

Facultatif. Libellés utilisateur du dépôt.

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

setAuthenticatedUserAdmin

boolean

Facultatif. Uniquement en entrée. Si la valeur est définie sur "true", le rôle roles/dataform.admin sera attribué à l'utilisateur authentifié sur le dépôt créé. Pour modifier l'accès au dépôt créé ultérieurement, appliquez setIamPolicy à partir de https://cloud.google.com/dataform/reference/rest#rest-resource:-v1beta1.projects.locations.repositories.

serviceAccount

string

Facultatif. Compte de service sous lequel exécuter les appels de workflow.

kmsKeyName

string

Facultatif. Référence à une clé de chiffrement KMS. Si elle est fournie, elle sera utilisée pour chiffrer les données utilisateur dans le dépôt et toutes les ressources enfants. Il n'est pas possible d'ajouter ni de modifier la clé de chiffrement une fois le dépôt créé. Exemple : projects/{kms_project}/locations/{location}/keyRings/{key_location}/cryptoKeys/{key}

dataEncryptionState

object (DataEncryptionState)

Uniquement en sortie. État de chiffrement des données d'un dépôt Git si ce dépôt est protégé par une clé KMS.

Champ d'union _containing_folder.

_containing_folder ne peut être qu'un des éléments suivants :

containingFolder

string

Facultatif. Nom du dossier contenant le dépôt. Ce champ est immuable et peut être modifié à l'aide d'une opération MoveRepository. Format : projects/*/locations/*/folders/*. ou projects/*/locations/*/teamFolders/*.

Champ d'union _team_folder_name.

_team_folder_name ne peut être qu'un des éléments suivants :

teamFolderName

string

Uniquement en sortie. Nom de ressource du dossier d'équipe auquel ce dépôt est associé. Il doit se présenter au format suivant : projects/{project}/locations/{location}/teamFolders/{teamFolder}. Si cette valeur n'est pas définie, le dépôt n'est pas associé à un dossier d'équipe.

Champ d'union _internal_metadata.

_internal_metadata ne peut être qu'un des éléments suivants :

internalMetadata

string

Uniquement en sortie. Toutes les informations de métadonnées utilisées en interne pour diffuser la ressource. Par exemple : codes temporels, indicateurs, champs d'état, etc. Le format de ce champ est une chaîne JSON.

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. La valeur doit être comprise 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. La valeur doit être comprise entre 0 et 999 999 999 inclus.

GitRemoteSettings

Représentation JSON
{
  "url": string,
  "defaultBranch": string,
  "effectiveDefaultBranch": string,
  "authenticationTokenSecretVersion": string,
  "sshAuthenticationConfig": {
    object (SshAuthenticationConfig)
  },
  "tokenStatus": enum (TokenStatus),

  // Union field _git_repository_link can be only one of the following:
  "gitRepositoryLink": string
  // End of list of possible types for union field _git_repository_link.
}
Champs
url

string

Obligatoire. URL du dépôt Git distant.

defaultBranch

string

Facultatif. Nom de la branche par défaut du dépôt Git distant. Si ce paramètre n'est pas défini, main est utilisé.

effectiveDefaultBranch

string

Uniquement en sortie. Nom de la branche par défaut effective du dépôt distant Git. Il s'agit du nom de la branche par défaut du dépôt Git distant, s'il est défini. Sinon, il s'agit de main.

authenticationTokenSecretVersion

string

Facultatif. Nom de la version du secret Secret Manager à utiliser comme jeton d'authentification pour les opérations Git. Il doit respecter le format projects/*/secrets/*/versions/*.

sshAuthenticationConfig

object (SshAuthenticationConfig)

Facultatif. Champs d'authentification pour les URI distants utilisant le protocole SSH.

tokenStatus
(deprecated)

enum (TokenStatus)

Uniquement en sortie. Obsolète : le champ ne contient aucune information sur l'état du jeton. Utilisez plutôt https://cloud.google.com/dataform/reference/rest/v1beta1/projects.locations.repositories/computeAccessTokenStatus.

Champ d'union _git_repository_link.

_git_repository_link ne peut être qu'un des éléments suivants :

gitRepositoryLink

string

Facultatif. Nom de ressource du GitRepositoryLink utilisé pour les identifiants machine. Doit être au format projects/*/locations/*/connections/*/gitRepositoryLinks/*

SshAuthenticationConfig

Représentation JSON
{
  "userPrivateKeySecretVersion": string,
  "hostPublicKey": string
}
Champs
userPrivateKeySecretVersion

string

Obligatoire. Nom de la version du secret Secret Manager à utiliser comme clé privée SSH pour les opérations Git. Il doit respecter le format projects/*/secrets/*/versions/*.

hostPublicKey

string

Obligatoire. Contenu d'une clé SSH publique permettant de vérifier l'identité d'un hôte Git distant.

WorkspaceCompilationOverrides

Représentation JSON
{
  "defaultDatabase": string,
  "schemaSuffix": string,
  "tablePrefix": string
}
Champs
defaultDatabase

string

Facultatif. Base de données par défaut (ID du projet Google Cloud).

schemaSuffix

string

Facultatif. Suffixe à ajouter à tous les noms de schémas (ID d'ensemble de données BigQuery).

tablePrefix

string

Facultatif. Préfixe à ajouter à tous les noms de tables.

LabelsEntry

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

string

value

string

DataEncryptionState

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

string

Obligatoire. Nom de la version de clé KMS avec laquelle les données d'une ressource sont chiffrées.

TokenStatus

État du jeton d'authentification.

Enums
TOKEN_STATUS_UNSPECIFIED Valeur par défaut. Cette valeur n'est pas utilisée.
NOT_FOUND Le jeton est introuvable dans Secret Manager (ou le compte de service Dataform n'est pas autorisé à y accéder).
INVALID Le jeton n'a pas pu être utilisé pour l'authentification auprès du dépôt Git distant.
VALID Le jeton a été utilisé avec succès pour l'authentification auprès du dépôt Git distant.

Annotations d'outils

Indication destructive : ❌ | Indication d'idempotence : ✅ | Indication de lecture seule : ✅ | Indication de monde ouvert : ❌