MCP Tools Reference: drivemcp.googleapis.com

Outil : copy_file

Appelez cet outil pour copier un fichier existant dans Google Drive. L'outil permet de spécifier un nouveau titre et un dossier parent pour la copie. Si le titre n'est pas spécifié, le titre de la copie sera "Copie de {titre d'origine}". Si le dossier parent n'est pas spécifié, la copie sera créée dans le même dossier que le fichier d'origine, sauf si l'utilisateur demandeur ne dispose pas d'un accès en écriture à ce dossier. Dans ce cas, la copie sera créée dans le dossier racine de l'utilisateur. Renvoie l'objet File nouvellement créé une fois la copie effectuée.

L'exemple suivant montre comment utiliser curl pour appeler l'outil MCP copy_file.

Requête 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
}'
                

Schéma d'entrée

Demande de copie d'un fichier.

CopyFileRequest

Représentation JSON
{
  "fileId": string,

  "title": string

  "parentId": string
}
Champs
fileId

string

Obligatoire. ID du fichier à copier.

Champ d'union _title.

_title ne peut être qu'un des éléments suivants :

title

string

Titre du fichier nouvellement créé. Si ce champ est vide, le titre sera "Copie de [titre du fichier d'origine]".

Champ d'union _parent_id.

_parent_id ne peut être qu'un des éléments suivants :

parentId

string

ID parent du fichier nouvellement créé. Si ce champ est vide, le fichier sera créé avec le même parent que le fichier d'origine.

Schéma de sortie

Une ressource de fichier.

Fichier

Représentation 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
}
Champs
id

string

ID du fichier récupéré.

title

string

Titre du fichier.

parentId

string

ID (facultatif) du parent du fichier.

Champ d'union _mime_type.

_mime_type ne peut être qu'un des éléments suivants :

mimeType

string

Type MIME du fichier.

Champ d'union _file_size.

_file_size ne peut être qu'un des éléments suivants :

fileSize

string (int64 format)

Taille du fichier, en octets.

Champ d'union _description.

_description ne peut être qu'un des éléments suivants :

description

string

Description du fichier.

Champ d'union _file_extension.

_file_extension ne peut être qu'un des éléments suivants :

fileExtension

string

Extension du fichier d'origine. Ce champ n'est renseigné que pour les fichiers dont le contenu est stocké dans Drive.

Champ d'union _content_snippet.

_content_snippet ne peut être qu'un des éléments suivants :

contentSnippet

string

Extrait généré sur le contenu du fichier.

Champ d'union _view_url.

_view_url ne peut être qu'un des éléments suivants :

viewUrl

string

URL permettant d'afficher le fichier.

Champ d'union _shared_with_me_time.

_shared_with_me_time ne peut être qu'un des éléments suivants :

sharedWithMeTime

string (Timestamp format)

Heure à laquelle le fichier a été partagé avec le demandeur.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

Champ d'union _created_time.

_created_time ne peut être qu'un des éléments suivants :

createdTime

string (Timestamp format)

Heure à laquelle le fichier a été créé.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

Champ d'union _modified_time.

_modified_time ne peut être qu'un des éléments suivants :

modifiedTime

string (Timestamp format)

Heure la plus récente à laquelle le fichier a été modifié.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

Champ d'union _viewed_by_me_time.

_viewed_by_me_time ne peut être qu'un des éléments suivants :

viewedByMeTime

string (Timestamp format)

Heure la plus récente à laquelle le fichier a été consulté par le demandeur.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

Champ d'union _owner.

_owner ne peut être qu'un des éléments suivants :

owner

string

Adresse e-mail du propriétaire du fichier.

Champ d'union _can_add_children.

_can_add_children ne peut être qu'un des éléments suivants :

canAddChildren

boolean

Indique si le demandeur peut ajouter des enfants à ce dossier. Cette valeur est toujours "false" pour les types autres que les dossiers.

Horodatage

Représentation JSON
{
  "seconds": string,
  "nanos": integer
}
Champs
seconds

string (int64 format)

Représente les secondes de l'heure UTC à partir de l'epoch Unix 1970-01-01T00:00:00Z. La valeur doit être comprise entre -62135596800 et 253402300799 inclus (ce qui correspond à 0001-01-01T00:00:00Z et 9999-12-31T23:59:59Z).

nanos

integer

Fractions de secondes non négatives avec une précision de l'ordre de la nanoseconde. Ce champ correspond à la partie de la durée en nanosecondes, et non à une alternative aux secondes. Les valeurs de secondes négatives avec des fractions doivent toujours comporter des valeurs de nanosecondes non négatives comptabilisées dans le temps. La valeur doit être comprise entre 0 et 999 999 999 inclus.

Annotations d'outil

Indication destructive : ❌ | Indication idempotente : ❌ | Indication en lecture seule : ❌ | Indication Open World : ✅