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 un fichier, le contenu doit être encodé en base64 dans le champ content, quel que soit le type MIME du fichier importé.

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

Les types MIME first party Google Drive suivants peuvent être créés sans fournir de contenu :

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

Par défaut, les conversions suivantes seront effectuées pour les types MIME suivants :

  • De text/plain à application/vnd.google-apps.document
  • De text/csv à application/vnd.google-apps.spreadsheet

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

Vous pouvez créer des dossiers en définissant le type MIME sur application/vnd.google-apps.folder.

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

Requête curl
curl --location 'https://drivemcp.googleapis.com/mcp' \
--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 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,
  "content": string,
  "parentId": string,
  "disableConversionToGoogleType": boolean
}
Champs
title

string

Titre du fichier.

mimeType

string

Type MIME du fichier à importer.

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.

parentId

string

ID du parent du fichier.

disableConversionToGoogleType

boolean

Si la valeur est "true", le fichier ne sera pas converti en type Google. N'a aucun effet pour les types MIME 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
}
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.

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 : ✅