Herramienta: copy_file
Llama a esta herramienta para copiar un archivo existente en Google Drive. La herramienta permite especificar un título nuevo y una carpeta principal para la copia. Si no se especifica el título, el título de la copia será "Copia de {título original}". Si no se especifica la carpeta principal, la copia se creará en la misma carpeta que el archivo original, a menos que el usuario solicitante no tenga acceso de escritura a esa carpeta, en cuyo caso la copia se creará en la carpeta raíz del usuario. Devuelve el objeto File recién creado si la copia se realiza correctamente.
En el siguiente ejemplo, se muestra cómo usar curl para invocar la herramienta de MCP copy_file.
| Solicitud de Curl |
|---|
curl --location 'https://drivemcp.googleapis.com/mcp/v1' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "copy_file", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Esquema de entrada
Solicita copiar un archivo.
CopyFileRequest
| Representación JSON |
|---|
{ "fileId": string, "title": string "parentId": string } |
| Campos | |
|---|---|
fileId |
Obligatorio. ID del archivo que se copiará. |
Campo de unión
|
|
title |
Es el título del archivo recién creado. Si está vacío, el título será "Copia de [título del archivo original]". |
Campo de unión
|
|
parentId |
Es el ID principal del archivo recién creado. Si está vacío, el archivo se creará con el mismo elemento superior que el archivo original. |
Esquema de salida
Es un recurso de archivo.
Archivo
| Representación JSON |
|---|
{ "id": string, "title": string, "parentId": string, "mimeType": string "fileSize": string "description": string "fileExtension": string "contentSnippet": string "viewUrl": string "sharedWithMeTime": string "createdTime": string "modifiedTime": string "viewedByMeTime": string "owner": string "canAddChildren": boolean } |
| Campos | |
|---|---|
id |
Es el ID del archivo que se recuperó. |
title |
Es el título del archivo. |
parentId |
Es el ID (opcional) del elemento superior del archivo. |
Campo de unión
|
|
mimeType |
Es el tipo MIME del archivo. |
Campo de unión
|
|
fileSize |
Tamaño del archivo en bytes. |
Campo de unión
|
|
description |
Es la descripción del archivo. |
Campo de unión
|
|
fileExtension |
Es la extensión original del archivo. Este campo solo se completa para los archivos con contenido almacenado en Drive. |
Campo de unión
|
|
contentSnippet |
Es un fragmento generado sobre el contenido del archivo. |
Campo de unión
|
|
viewUrl |
Es la URL para ver el archivo. |
Campo de unión
|
|
sharedWithMeTime |
Fecha y hora en que se compartió el archivo con el solicitante. 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: |
Campo de unión
|
|
createdTime |
Es la fecha y hora en que se creó el archivo. 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: |
Campo de unión
|
|
modifiedTime |
Es la fecha y hora más reciente en la que se modificó el archivo. 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: |
Campo de unión
|
|
viewedByMeTime |
Es la fecha y hora más recientes en que el solicitante vio el archivo. 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: |
Campo de unión
|
|
owner |
Dirección de correo electrónico del propietario del archivo. |
Campo de unión
|
|
canAddChildren |
Indica si el solicitante puede agregar elementos secundarios a esta carpeta. Siempre es falso para los tipos que no son carpetas. |
Marca de tiempo
| Representación JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campos | |
|---|---|
seconds |
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 |
Fracciones no negativas de un segundo a una resolución de nanosegundos. Este campo es la parte de la duración en nanosegundos, 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
Sugerencia destructiva: ❌ | Sugerencia idempotente: ❌ | Sugerencia de solo lectura: ❌ | Sugerencia de mundo abierto: ✅