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.documentapplication/vnd.google-apps.spreadsheetapplication/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 |
Titre du fichier. |
mimeType |
OBSOLÈTE. NE PAS UTILISER !! Définissez plutôt content_mime_type. |
contentMimeType |
Type MIME du contenu importé. Obligatoire lorsqu'un type de contenu est fourni. |
content |
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 |
Facultatif. Contenu encodé en base64 à importer. Il s'agit d'une erreur de définir cette valeur et text_content. |
textContent |
Facultatif. Contenu textuel (UTF-8) à importer. Il s'agit d'une erreur de définir à la fois cette valeur et base64_content. |
parentId |
ID parent du fichier. |
disableConversionToGoogleType |
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 |
ID du fichier récupéré. |
title |
Titre du fichier. |
parentId |
ID (facultatif) du parent du fichier. |
Champ d'union
|
|
mimeType |
Type MIME du fichier. |
Champ d'union
|
|
fileSize |
Taille du fichier en octets. |
Champ d'union
|
|
description |
Description du fichier. |
Champ d'union
|
|
fileExtension |
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
|
|
contentSnippet |
Extrait généré sur le contenu du fichier. |
Champ d'union
|
|
viewUrl |
URL permettant d'afficher le fichier. |
Champ d'union
|
|
sharedWithMeTime |
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 : |
Champ d'union
|
|
createdTime |
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 : |
Champ d'union
|
|
modifiedTime |
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 : |
Champ d'union
|
|
viewedByMeTime |
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 : |
Champ d'union
|
|
owner |
Adresse e-mail du propriétaire du fichier. |
Champ d'union
|
|
canAddChildren |
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 |
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 |
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/drivehttps://www.googleapis.com/auth/drive.appdatahttps://www.googleapis.com/auth/drive.file