MCP Tools Reference: dataform.googleapis.com

Strumento: list_repositories

Elenca i repository Dataform in un progetto cloud e una località Google Cloud specifici.

Il valore parametro parent deve essere nel formato projects/{project_id}/locations/{location}.

Il seguente esempio mostra come utilizzare curl per richiamare lo strumento MCP list_repositories.

Richiesta 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
}'
                

Schema di input

Messaggio di richiesta di ListRepositories.

ListRepositoriesRequest

Rappresentazione JSON
{
  "parent": string,
  "pageSize": integer,
  "pageToken": string,
  "orderBy": string,
  "filter": string
}
Campi
parent

string

Obbligatorio. La posizione in cui elencare i repository. Deve essere nel formato projects/*/locations/*.

pageSize

integer

Facoltativo. Il numero massimo di repository da restituire. Il server potrebbe restituire meno elementi di quelli richiesti. Se non specificato, il server sceglierà un valore predefinito appropriato.

pageToken

string

Facoltativo. Token di pagina ricevuto da una precedente chiamata ListRepositories. Forniscilo per recuperare la pagina successiva.

Durante la paginazione, tutti gli altri parametri forniti a ListRepositories, ad eccezione di page_size, devono corrispondere alla chiamata che ha fornito il token di pagina.

orderBy

string

Facoltativo. Questo campo supporta solo l'ordinamento per name. Se non specificato, il server sceglierà l'ordinamento. Se specificato, l'ordine predefinito è crescente per il campo name.

filter

string

Facoltativo. Filtra l'elenco restituito.

Schema di output

Messaggio di risposta ListRepositories.

ListRepositoriesResponse

Rappresentazione JSON
{
  "repositories": [
    {
      object (Repository)
    }
  ],
  "nextPageToken": string,
  "unreachable": [
    string
  ]
}
Campi
repositories[]

object (Repository)

Elenco dei repository.

nextPageToken

string

Un token che può essere inviato come page_token per recuperare la pagina successiva. Se questo campo viene omesso, non verranno visualizzate altre pagine.

unreachable[]

string

Località non raggiungibili.

Repository

Rappresentazione 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.
}
Campi
name

string

Identificatore. Il nome del repository.

createTime

string (Timestamp format)

Solo output. Il timestamp di creazione del repository.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

displayName

string

Facoltativo. Il nome intuitivo del repository.

gitRemoteSettings

object (GitRemoteSettings)

Facoltativo. Se impostato, configura questo repository in modo che sia collegato a un Git remoto.

npmrcEnvironmentVariablesSecretVersion

string

Facoltativo. Il nome della versione del secret di Secret Manager da utilizzare per interpolare le variabili nel file .npmrc per le operazioni di installazione dei pacchetti. Deve essere nel formato projects/*/secrets/*/versions/*. Il file stesso deve essere in formato JSON.

workspaceCompilationOverrides

object (WorkspaceCompilationOverrides)

Facoltativo. Se impostati, i campi di workspace_compilation_overrides sostituiscono le impostazioni di compilazione predefinite specificate in dataform.json durante la creazione di risultati di compilazione con ambito workspace. Per ulteriori informazioni, consulta la documentazione relativa a WorkspaceCompilationOverrides.

labels

map (key: string, value: string)

Facoltativo. Etichette utente del repository.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

setAuthenticatedUserAdmin

boolean

Facoltativo. Solo input. Se impostata su true, all'utente autenticato verrà concesso il ruolo roles/dataform.admin nel repository creato. Per modificare l'accesso al repository creato in un secondo momento, applica setIamPolicy da https://cloud.google.com/dataform/reference/rest#rest-resource:-v1beta1.projects.locations.repositories

serviceAccount

string

Facoltativo. Il account di servizio con cui eseguire le chiamate del flusso di lavoro.

kmsKeyName

string

Facoltativo. Il riferimento a una chiave di crittografia KMS. Se fornita, verrà utilizzata per criptare i dati utente nel repository e in tutte le risorse secondarie. Non è possibile aggiungere o aggiornare la chiave di crittografia dopo la creazione del repository. Esempio: projects/{kms_project}/locations/{location}/keyRings/{key_location}/cryptoKeys/{key}

dataEncryptionState

object (DataEncryptionState)

Solo output. Stato di crittografia dei dati di un repository Git se questo repository è protetto da una chiave KMS.

Campo unione _containing_folder.

_containing_folder può essere solo uno dei seguenti tipi:

containingFolder

string

Facoltativo. Il nome della cartella contenitore del repository. Il campo è immutabile e può essere modificato tramite un'operazione MoveRepository. Formato: projects/*/locations/*/folders/*. o projects/*/locations/*/teamFolders/*.

Campo unione _team_folder_name.

_team_folder_name può essere solo uno dei seguenti tipi:

teamFolderName

string

Solo output. Il nome della risorsa del TeamFolder a cui è associato questo repository. Deve avere il seguente formato: projects/{project}/locations/{location}/teamFolders/{teamFolder}. Se non è impostato, il repository non è associato a una cartella del team.

Campo unione _internal_metadata.

_internal_metadata può essere solo uno dei seguenti tipi:

internalMetadata

string

Solo output. Tutte le informazioni sui metadati utilizzate internamente per pubblicare la risorsa. Ad esempio, timestamp, flag, campi di stato e così via. Il formato di questo campo è una stringa JSON.

Timestamp

Rappresentazione JSON
{
  "seconds": string,
  "nanos": integer
}
Campi
seconds

string (int64 format)

Rappresenta i secondi di tempo UTC trascorsi dall'epoca di Unix 1970-01-01T00:00:00Z. Deve essere compreso tra -62135596800 e 253402300799 inclusi (corrispondenti a 0001-01-01T00:00:00Z e 9999-12-31T23:59:59Z).

nanos

integer

Frazioni di secondo non negative con risoluzione in nanosecondi. Questo campo è la parte in nanosecondi della durata, non un'alternativa ai secondi. I valori negativi dei secondi con frazioni devono comunque avere valori di nanosecondi non negativi che vengono conteggiati in avanti nel tempo. Deve essere compreso tra 0 e 999.999.999 inclusi.

GitRemoteSettings

Rappresentazione 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.
}
Campi
url

string

Obbligatorio. L'URL del repository Git remoto.

defaultBranch

string

Facoltativo. Il nome del ramo predefinito del repository Git remoto. Se non viene impostato, verrà utilizzato main.

effectiveDefaultBranch

string

Solo output. Il nome del ramo predefinito effettivo del repository Git remoto. Se impostato, questo è il nome del branch predefinito del Git remoto, altrimenti è main.

authenticationTokenSecretVersion

string

Facoltativo. Il nome della versione del secret di Secret Manager da utilizzare come token di autenticazione per le operazioni Git. Deve essere nel formato projects/*/secrets/*/versions/*.

sshAuthenticationConfig

object (SshAuthenticationConfig)

Facoltativo. Campi di autenticazione per URI remoti che utilizzano il protocollo SSH.

tokenStatus
(deprecated)

enum (TokenStatus)

Solo output. Obsoleto: il campo non contiene informazioni sullo stato del token. Utilizza invece https://cloud.google.com/dataform/reference/rest/v1beta1/projects.locations.repositories/computeAccessTokenStatus

Campo unione _git_repository_link.

_git_repository_link può essere solo uno dei seguenti tipi:

gitRepositoryLink

string

Facoltativo. Nome della risorsa per GitRepositoryLink utilizzato per le credenziali della macchina. Deve essere nel formato projects/*/locations/*/connections/*/gitRepositoryLinks/*

SshAuthenticationConfig

Rappresentazione JSON
{
  "userPrivateKeySecretVersion": string,
  "hostPublicKey": string
}
Campi
userPrivateKeySecretVersion

string

Obbligatorio. Il nome della versione del secret Secret Manager da utilizzare come chiave privata SSH per le operazioni Git. Deve essere nel formato projects/*/secrets/*/versions/*.

hostPublicKey

string

Obbligatorio. Contenuto di una chiave SSH pubblica per verificare l'identità di un host Git remoto.

WorkspaceCompilationOverrides

Rappresentazione JSON
{
  "defaultDatabase": string,
  "schemaSuffix": string,
  "tablePrefix": string
}
Campi
defaultDatabase

string

Facoltativo. Il database predefinito (ID progetto Google Cloud).

schemaSuffix

string

Facoltativo. Il suffisso da aggiungere a tutti i nomi degli schemi (ID set di dati BigQuery).

tablePrefix

string

Facoltativo. Il prefisso da aggiungere all'inizio di tutti i nomi delle tabelle.

LabelsEntry

Rappresentazione JSON
{
  "key": string,
  "value": string
}
Campi
key

string

value

string

DataEncryptionState

Rappresentazione JSON
{
  "kmsKeyVersionName": string
}
Campi
kmsKeyVersionName

string

Obbligatorio. Il nome della versione della chiave KMS con cui vengono criptati i dati di una risorsa.

TokenStatus

Lo stato del token di autenticazione.

Enum
TOKEN_STATUS_UNSPECIFIED Valore predefinito. Questo valore non viene utilizzato.
NOT_FOUND Il token non è stato trovato in Secret Manager (o l'account di servizio Dataform non disponeva dell'autorizzazione per accedervi).
INVALID Il token non può essere utilizzato per l'autenticazione rispetto al repository Git remoto.
VALID Il token è stato utilizzato correttamente per l'autenticazione con il repository Git remoto.

Annotazioni dello strumento

Suggerimento distruttivo: ❌ | Suggerimento idempotente: ✅ | Suggerimento di sola lettura: ✅ | Suggerimento open world: ❌