Strumento: get_workspace
Recupera un singolo workspace di sviluppo Dataform.
Il valore parametro name deve essere nel formato projects/{project_id}/locations/{location}/repositories/{repository}/workspaces/{workspace}.
Se non conosci il nome esatto dello spazio di lavoro, utilizza lo strumento list_workspaces per trovarlo.
Il seguente esempio di codice mostra come utilizzare curl per chiamare lo strumento MCP get_workspace.
| 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": "get_workspace", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
Schema di input
GetWorkspace messaggio di richiesta.
GetWorkspaceRequest
| Rappresentazione JSON |
|---|
{ "name": string } |
| Campi | |
|---|---|
name |
Obbligatorio. Il nome del workspace. |
Schema di output
Rappresenta uno spazio di lavoro Git Dataform.
Workspace
| Rappresentazione JSON |
|---|
{ "name": string, "createTime": string, "dataEncryptionState": { object ( |
| Campi | |
|---|---|
name |
Identificatore. Il nome del workspace. |
createTime |
Solo output. Il timestamp di creazione dello spazio di lavoro. 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: |
dataEncryptionState |
Solo output. Stato di crittografia dei dati di un repository Git se questo spazio di lavoro è protetto da una chiave KMS. |
privateResourceMetadata |
Solo output. Metadati che indicano se questa risorsa è limitata all'utente. Per le risorse |
depth |
Facoltativo. Solo input. Immutabile. La profondità massima del repository Git da estrarre per questo workspace. Se definito e maggiore di 0, il repository Git verrà creato come clone shallow con la profondità specificata, altrimenti verrà eseguito un clone completo. Questo campo è disponibile solo per i repository GitHub, GitLab e di prima parte con la gestione dei rami attivata. |
Campo unione
|
|
internalMetadata |
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. |
Campo unione
|
|
disableMoves |
Facoltativo. Se impostato su true, gli spazi di lavoro non verranno spostati se il repository collegato viene spostato. Verrà invece eliminato. |
Campo unione
|
|
originalBranch |
Facoltativo. Solo input. Immutabile. Il nome del ramo upstream predefinito per tutte le operazioni pull/push nel repository remoto per questo workspace. Se il campo è vuoto, verrà utilizzato il ramo HEAD del repository. |
Campo unione
|
|
enableBranchManagement |
Immutabile. Controlla l'attivazione del checkout del ramo per lo spazio di lavoro. Se viene impostato su true, lo spazio di lavoro potrà estrarre i rami. |
Campo unione
|
|
shallow |
Solo output. Se impostato su true, lo spazio di lavoro è stato creato come clone shallow. Verrà impostato su true se il campo Profondità è impostato su un valore maggiore di 0, altrimenti verrà impostato su false. |
Timestamp
| Rappresentazione JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campi | |
|---|---|
seconds |
Rappresenta i secondi di tempo UTC 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 |
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. |
DataEncryptionState
| Rappresentazione JSON |
|---|
{ "kmsKeyVersionName": string } |
| Campi | |
|---|---|
kmsKeyVersionName |
Obbligatorio. Il nome della versione della chiave KMS con cui vengono criptati i dati di una risorsa. |
PrivateResourceMetadata
| Rappresentazione JSON |
|---|
{ "userScoped": boolean } |
| Campi | |
|---|---|
userScoped |
Solo output. Se true, questa risorsa è limitata all'utente, il che significa che è uno spazio di lavoro o proviene da uno spazio di lavoro. |
Annotazioni dello strumento
Le annotazioni dello strumento vengono inviate ai client MCP per descrivere il rischio di base di un determinato strumento. La maggior parte dei client considera questi suggerimenti non attendibili, ma possono essere utilizzati per decidere quando inviare a un utente una richiesta di conferma.
Oltre alla stringa del titolo, sono definiti i seguenti suggerimenti booleani:
readOnlyHint: se è true, lo strumento non modifica il suo ambiente. Valore predefinito: false.destructiveHint: se è true, lo strumento può eseguire azioni distruttive. Se il valore è false, lo strumento può eseguire solo azioni additive. Valore predefinito: true.idempotentHint: se è true, chiamare ripetutamente lo strumento con gli stessi argomenti non avrà alcun effetto aggiuntivo sul suo ambiente. Valore predefinito: false.openWorldHint: se è true, lo strumento può interagire con un "open world" di entità esterne. Se è false, lo strumento può interagire solo con le entità interne. Ad esempio, uno strumento di ricerca web sarebbe open world, mentre uno strumento di memoria no.
Suggerimento distruttivo: ❌ | Suggerimento idempotente: ✅ | Suggerimento di sola lettura: ✅ | Suggerimento open world: ❌