MCP Tools Reference: dataform.googleapis.com

Herramienta: create_folder

Crea una carpeta de Dataform nueva en un proyecto y una ubicación determinados de Google Cloud.

Las carpetas organizan los repositorios de Dataform en una jerarquía. La creación de una carpeta no mueve ningún repositorio a ella. Para colocar un repositorio dentro de una carpeta, establece el valor del parámetro containing_folder cuando uses la herramienta create_repository.

No intentes mover un repositorio existente a una carpeta con la herramienta update_repository. Una vez que se crea un repositorio, su campo containing_folder no se puede modificar con las herramientas de MCP.

El valor del parámetro parent debe tener el formato projects/{project_id}/locations/{location}.

El valor del parámetro folder.display_name es obligatorio y especifica el nombre descriptivo de la carpeta.

En la siguiente muestra de código, se muestra cómo usar curl para llamar a la herramienta de MCP create_folder.

Solicitud de 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
}'

Esquema de entrada

Mensaje de solicitud de CreateFolder.

CreateFolderRequest

Representación JSON
{
  "parent": string,
  "folder": {
    object (Folder)
  },
  "folderId": string
}
Campos
parent

string

Obligatorio. Ubicación en la que se creará la carpeta. Debe tener el formato projects/*/locations/*.

folder

object (Folder)

Obligatorio. Es la carpeta que se creará.

folderId
(deprecated)

string

Obsoleto: Este campo no se usa. El nombre del recurso se genera automáticamente. Es el ID que se usará para la carpeta, que se convertirá en el componente final del nombre del recurso de la carpeta.

Carpeta

Representación JSON
{
  "name": string,
  "displayName": string,
  "containingFolder": string,
  "teamFolderName": string,
  "createTime": string,
  "updateTime": string,

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

  // Union field _creator_iam_principal can be only one of the following:
  "creatorIamPrincipal": string
  // End of list of possible types for union field _creator_iam_principal.
}
Campos
name

string

Es el identificador. Es el nombre de la carpeta.

displayName

string

Obligatorio. Es el nombre descriptivo de la carpeta.

containingFolder

string

Es opcional. Es el nombre del recurso de la carpeta que lo contiene. Debe tener el formato projects/{project}/locations/{location}/folders/{folder}, projects/{project}/locations/{location}/teamFolders/{teamFolder} o simplemente "" si se trata de una carpeta raíz. Este campo solo se puede actualizar a través de MoveFolder.

teamFolderName

string

Solo salida. Es el nombre del recurso de TeamFolder con el que se asocia esta carpeta. Debe tener el formato projects/{project}/locations/{location}/teamFolders/{teamFolder}. Si no se establece, la carpeta no se asocia con una TeamFolder y es una UserFolder.

createTime

string (Timestamp format)

Solo salida. Es la marca de tiempo de la creación de la carpeta.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Solo salida. Es la marca de tiempo de la última actualización de la carpeta.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Campo de unión _internal_metadata.

_internal_metadata puede ser una de las siguientes opciones:

internalMetadata

string

Solo salida. Toda la información de metadatos que se usa de forma interna para entregar el recurso. Por ejemplo, marcas de tiempo, marcas, campos de estado, etcétera. El formato de este campo es una cadena JSON.

Campo de unión _creator_iam_principal.

_creator_iam_principal puede ser una de las siguientes opciones:

creatorIamPrincipal

string

Solo salida. Es el identificador principal de IAM del creador de la carpeta.

Marca de tiempo

Representación JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Representa los segundos de la hora UTC desde la época de Unix 1970-01-01T00:00:00Z. Debe estar entre -62135596800 y 253402300799 inclusive (lo que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z).

nanos

integer

Fracciones no negativas de un segundo a una resolución de nanosegundos. Este campo es la parte de nanosegundos de la duración, no una alternativa a los segundos. Los valores de segundos negativos con fracciones deben tener valores nanos no negativos que se cuentan hacia adelante en el tiempo. Debe ser un valor entre 0 y 999,999,999, inclusive.

Esquema de salida

Representa un elemento Folder de Dataform. Es un recurso que se usa para organizar archivos y otras carpetas, y proporcionar controles de acceso jerárquicos.

Carpeta

Representación JSON
{
  "name": string,
  "displayName": string,
  "containingFolder": string,
  "teamFolderName": string,
  "createTime": string,
  "updateTime": string,

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

  // Union field _creator_iam_principal can be only one of the following:
  "creatorIamPrincipal": string
  // End of list of possible types for union field _creator_iam_principal.
}
Campos
name

string

Es el identificador. Es el nombre de la carpeta.

displayName

string

Obligatorio. Es el nombre descriptivo de la carpeta.

containingFolder

string

Es opcional. Es el nombre del recurso de la carpeta que lo contiene. Debe tener el formato projects/{project}/locations/{location}/folders/{folder}, projects/{project}/locations/{location}/teamFolders/{teamFolder} o simplemente "" si se trata de una carpeta raíz. Este campo solo se puede actualizar a través de MoveFolder.

teamFolderName

string

Solo salida. Es el nombre del recurso de TeamFolder con el que se asocia esta carpeta. Debe tener el formato projects/{project}/locations/{location}/teamFolders/{teamFolder}. Si no se establece, la carpeta no se asocia con una TeamFolder y es una UserFolder.

createTime

string (Timestamp format)

Solo salida. Es la marca de tiempo de la creación de la carpeta.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Solo salida. Es la marca de tiempo de la última actualización de la carpeta.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Campo de unión _internal_metadata.

_internal_metadata puede ser una de las siguientes opciones:

internalMetadata

string

Solo salida. Toda la información de metadatos que se usa de forma interna para entregar el recurso. Por ejemplo, marcas de tiempo, marcas, campos de estado, etcétera. El formato de este campo es una cadena JSON.

Campo de unión _creator_iam_principal.

_creator_iam_principal puede ser una de las siguientes opciones:

creatorIamPrincipal

string

Solo salida. Es el identificador principal de IAM del creador de la carpeta.

Marca de tiempo

Representación JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Representa los segundos de la hora UTC desde la época de Unix 1970-01-01T00:00:00Z. Debe estar entre -62135596800 y 253402300799 inclusive (lo que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z).

nanos

integer

Fracciones no negativas de un segundo a una resolución de nanosegundos. Este campo es la parte de nanosegundos de la duración, no una alternativa a los segundos. Los valores de segundos negativos con fracciones deben tener valores nanos no negativos que se cuentan hacia adelante en el tiempo. Debe ser un valor entre 0 y 999,999,999, inclusive.

Anotaciones de herramientas

Las anotaciones de herramientas se envían a los clientes de MCP para describir el riesgo básico de una herramienta determinada. La mayoría de los clientes tratan estas sugerencias como no confiables, pero se pueden usar para decidir cuándo se le puede enviar un mensaje de confirmación a un usuario.

Junto con la cadena de título, se definen las siguientes sugerencias booleanas:

  • readOnlyHint: Si es verdadero, la herramienta no modifica su entorno. Valor predeterminado: false.
  • destructiveHint: Si es verdadero, la herramienta puede realizar acciones destructivas. Si es falso, la herramienta solo puede realizar acciones aditivas. Valor predeterminado: true.
  • idempotentHint: Si es verdadero, llamar a la herramienta de forma repetida con los mismos argumentos no tendrá ningún efecto adicional en su entorno. Valor predeterminado: false.
  • openWorldHint: Si es verdadero, la herramienta puede interactuar con un "mundo abierto" de entidades externas. Si es falso, la herramienta solo puede interactuar con entidades internas. Por ejemplo, una herramienta de búsqueda web sería de mundo abierto, mientras que una herramienta de memoria no lo sería.

Sugerencia destructiva: ❌ | Sugerencia idempotente: ❌ | Sugerencia de solo lectura: ❌ | Sugerencia de mundo abierto: ❌