Strumento: create_folder
Crea una nuova cartella Dataform in un progetto cloud e una località Google Cloud specifici.
Le cartelle organizzano i repository Dataform in una gerarchia. La creazione di una cartella non comporta lo spostamento di alcun repository al suo interno. Per inserire un repository all'interno di una cartella, imposta il valore parametro containing_folder quando utilizzi lo strumento create_repository.
Non tentare di spostare un repository esistente in una cartella utilizzando lo strumento update_repository. Una volta creato un repository, il relativo campo containing_folder non può essere modificato utilizzando gli strumenti MCP.
Il valore parametro parent deve essere nel formato projects/{project_id}/locations/{location}.
Il valore parametro folder.display_name è obbligatorio e specifica il nome descrittivo della cartella.
Il seguente esempio di codice mostra come utilizzare curl per chiamare lo strumento MCP create_folder.
| 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": "create_folder", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
Schema di input
CreateFolder messaggio di richiesta.
CreateFolderRequest
| Rappresentazione JSON |
|---|
{
"parent": string,
"folder": {
object ( |
| Campi | |
|---|---|
parent |
Obbligatorio. La posizione in cui creare la cartella. Deve essere nel formato |
folder |
Obbligatorio. La cartella da creare. |
folderId |
Deprecato: questo campo non viene utilizzato. Il nome della risorsa viene generato automaticamente. L'ID da utilizzare per la cartella, che diventerà il componente finale del nome della risorsa della cartella. |
Cartella
| Rappresentazione JSON |
|---|
{ "name": string, "displayName": string, "containingFolder": string, "teamFolderName": string, "createTime": string, "updateTime": string, // Union field |
| Campi | |
|---|---|
name |
Identificatore. Il nome della cartella. |
displayName |
Obbligatorio. Il nome descrittivo della cartella. |
containingFolder |
Facoltativo. Il nome della risorsa Cartella contenitore. Deve avere il formato: projects/{project}/locations/{location}/folders/{folder}, projects/{project}/locations/{location}/teamFolders/{teamFolder} o semplicemente "" se si tratta di una cartella principale. Questo campo può essere aggiornato solo tramite MoveFolder. |
teamFolderName |
Solo output. Il nome della risorsa della cartella del team a cui è associata questa cartella. Deve avere il seguente formato: projects/{project}/locations/{location}/teamFolders/{teamFolder}. Se non è impostato, la cartella non è associata a una cartella del team ed è una cartella utente. |
createTime |
Solo output. Il timestamp di creazione della cartella. 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: |
updateTime |
Solo output. Il timestamp dell'ultimo aggiornamento della cartella. 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: |
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
|
|
creatorIamPrincipal |
Solo output. L'identificatore dell'entità IAM del creatore della cartella. |
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. |
Schema di output
Rappresenta una cartella Dataform. Si tratta di una risorsa utilizzata per organizzare file e altre cartelle e fornire controlli dell'accesso gerarchici.
Cartella
| Rappresentazione JSON |
|---|
{ "name": string, "displayName": string, "containingFolder": string, "teamFolderName": string, "createTime": string, "updateTime": string, // Union field |
| Campi | |
|---|---|
name |
Identificatore. Il nome della cartella. |
displayName |
Obbligatorio. Il nome descrittivo della cartella. |
containingFolder |
Facoltativo. Il nome della risorsa Cartella contenitore. Deve avere il formato: projects/{project}/locations/{location}/folders/{folder}, projects/{project}/locations/{location}/teamFolders/{teamFolder} o semplicemente "" se si tratta di una cartella principale. Questo campo può essere aggiornato solo tramite MoveFolder. |
teamFolderName |
Solo output. Il nome della risorsa della cartella del team a cui è associata questa cartella. Deve avere il seguente formato: projects/{project}/locations/{location}/teamFolders/{teamFolder}. Se non è impostato, la cartella non è associata a una cartella del team ed è una cartella utente. |
createTime |
Solo output. Il timestamp di creazione della cartella. 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: |
updateTime |
Solo output. Il timestamp dell'ultimo aggiornamento della cartella. 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: |
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
|
|
creatorIamPrincipal |
Solo output. L'identificatore dell'entità IAM del creatore della cartella. |
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. |
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: ❌