MCP Tools Reference: drivemcp.googleapis.com

Outil : create_file

Appelez cet outil pour créer ou importer un fichier dans Google Drive.

Si vous importez du contenu, préférez "text_content" pour le contenu textuel. Pour les contenus non UTF8, utilisez le champ "base64_content" et encodez les données en base64 pour les définir dans ce champ.

Renvoie un seul objet File en cas de création réussie.

Les types Mime propriétaires Google suivants peuvent être créés sans fournir de contenu :

  • application/vnd.google-apps.document
  • application/vnd.google-apps.spreadsheet
  • application/vnd.google-apps.presentation

Pour créer des dossiers, définissez le type MIME sur application/vnd.google-apps.folder.

Lorsque vous importez du contenu, le champ content_mime_type est obligatoire et doit correspondre au type de contenu importé.

Par défaut, les contenus compatibles sont convertis en types MIME first party Google.

Pour désactiver les conversions pour les types MIME propriétaires, définissez disable_conversion_to_google_type sur "true".

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

Requête curl
curl --location 'https://drivemcp.googleapis.com/mcp/v1' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "create_file",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Schéma d'entrée

Demande d'importer un fichier.

CreateFileRequest

Représentation JSON
{
  "title": string,
  "mimeType": string,
  "contentMimeType": string,
  "content": string,
  "base64Content": string,
  "textContent": string,
  "parentId": string,
  "disableConversionToGoogleType": boolean
}
Champs
title

string

Titre du fichier.

mimeType

string

OBSOLÈTE. NE PAS UTILISER !! Définissez plutôt content_mime_type.

contentMimeType

string

Type MIME du contenu importé. Obligatoire lorsqu'un type de contenu est fourni.

content

string

Contenu du fichier encodé en base64. Le champ "content" doit toujours être encodé en base64, quel que soit le type MIME du fichier. OBSOLÈTE. Utilisez plutôt base64_content ou text_content.

base64Content

string

Facultatif. Contenu encodé en base64 à importer. Il s'agit d'une erreur de définir cette valeur et text_content.

textContent

string

Facultatif. Contenu textuel (UTF-8) à importer. Il s'agit d'une erreur de définir à la fois cette valeur et base64_content.

parentId

string

ID parent du fichier.

disableConversionToGoogleType

boolean

Définissez sur "true" pour conserver le type MIME du contenu transmis et ne pas le convertir en type Google. Par exemple, sans cela, un type MIME de contenu text/plain sera converti en application/vnd.google-apps.document. N'a aucun effet pour les types qui n'ont pas d'équivalent Google.

Schéma de sortie

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. Cette valeur n'est renseignée 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 de création du fichier.

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)

Date et heure de la dernière modification du fichier.

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)

Date et heure les plus récentes auxquelles 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 en nanosecondes de la durée, 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'outils

Indication de destruction : ❌ | Indication d'idempotence : ❌ | Indication de lecture seule : ❌ | Indication de monde ouvert : ✅

Champs d'application des autorisations

Nécessite l'un des champs d'application OAuth suivants :

  • https://www.googleapis.com/auth/drive
  • https://www.googleapis.com/auth/drive.appdata
  • https://www.googleapis.com/auth/drive.file