MCP Tools Reference: drivemcp.googleapis.com

Outil : search_files

Appelez cet outil pour rechercher des fichiers Drive à partir d'une requête structurée.

Le champ query nécessite l'utilisation d'opérateurs de recherche de requête.

Une chaîne de requête contient les trois parties suivantes : query_term operator values, où :

  • query_term est le terme ou le champ de requête sur lequel effectuer la recherche.
  • operator spécifie la condition appliquée au terme de requête.
  • values sont les valeurs spécifiques à utiliser pour filtrer les résultats de recherche.

Termes de requête

Le tableau suivant répertorie les termes de requête valides et leur description :

Terme de requête Opérateurs valides Utilisation
title contains, =, != Titre du fichier. Entourez-les de guillemets simples ('). Échappez les guillemets simples dans les requêtes avec \', par exemple 'Valentine\'s Day'.
fullText contains Indique si le title ou le texte du contenu du fichier correspondent. Entourez-les de guillemets simples ('). Échappez les guillemets simples dans les requêtes avec \', par exemple 'Valentine\'s Day'.
mimeType contains, =, != Type MIME du fichier. Entourez-les de guillemets simples ('). Échappez les guillemets simples dans les requêtes avec \', par exemple 'Valentine\'s Day'.
modifiedTime <=, <, =, !=, >, >= Date de la dernière modification du fichier. Format RFC 3339, fuseau horaire par défaut UTC, par exemple 2012-06-04T12:00:00-08:00. Les champs de type date ne sont pas comparables.
viewedByMeTime <=, <, =, !=, >, >= Date à laquelle l'utilisateur a consulté un fichier pour la dernière fois. Format RFC 3339, fuseau horaire par défaut UTC, par exemple 2012-06-04T12:00:00-08:00. Les champs de type date ne sont pas comparables.
parentId =, != Indique si le parent est égal à l'ID spécifié. root peut être utilisé pour spécifier le "Mon Drive " de l'utilisateur, qui sert de hiérarchie principale.
owner =, != Utilisateur propriétaire du fichier. me peut être utilisé pour spécifier l'utilisateur qui effectue la requête.
sharedWithMe =, != Fichiers de la collection "Partagés avec moi " de l'utilisateur. Tous les utilisateurs du fichier figurent dans la liste de contrôle d'accès (LCA) du fichier. Il peut s'agir de true ou false.
createdTime <=, <, =, !=, >, >= Date de création du fichier. Utilisez le format RFC 3339. Le fuseau horaire par défaut est UTC, par exemple 2012-06-04T12:00:00-08:00.

Opérateurs de requête

Le tableau suivant répertorie les opérateurs de requête valides :

Opérateur Utilisation
contains Le contenu d'une chaîne est présent dans l'autre.
= Le contenu d'une chaîne ou d'un booléen est égal à l'autre.
!= Le contenu d'une chaîne ou d'une valeur booléenne n'est pas égal à l'autre.
< Une valeur est inférieure à une autre.
<= Une valeur est inférieure ou égale à une autre.
> Une valeur est supérieure à une autre.
>= Une valeur est supérieure ou égale à une autre.
in Un élément est contenu dans une collection.
and Renvoyer les éléments correspondant aux deux requêtes.
or Renvoie les éléments correspondant à l'une ou l'autre des requêtes.
not Annule une requête de recherche.
has Une collection contient un élément correspondant aux paramètres.

Voici quelques exemples de requêtes :

  • title contains 'hello' and title contains 'goodbye'
  • modifiedTime > '2024-01-01T00:00:00Z' and (mimeType contains 'image/' or mimeType contains 'video/')
  • parentId = '1234567'
  • fullText contains 'hello'
  • owner = 'test@example.org'
  • sharedWithMe = true
  • owner = 'me' (pour les fichiers appartenant à l'utilisateur)

Utilisez next_page_token pour parcourir les résultats. Une réponse vide indique qu'il n'y a pas de résultats ou qu'il n'y a plus de résultats à renvoyer.

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

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": "search_files",
    "arguments": {
      // provide these details according to the tool MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Schéma d'entrée

Demander à rechercher des fichiers

SearchFilesRequest

Représentation JSON
{
  "query": string,

  "pageToken": string

  "pageSize": integer

  "excludeContentSnippets": boolean
}
Champs
query

string

Requête de recherche.

Champ d'union _page_token.

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

pageToken

string

Jeton de page à utiliser pour la pagination.

Champ d'union _page_size.

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

pageSize

integer

Nombre maximal de fichiers à renvoyer sur chaque page.

Champ d'union _exclude_content_snippets.

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

excludeContentSnippets

boolean

Si la valeur est "true", l'extrait de contenu sera exclu de la réponse.

Schéma de sortie

Réponse à la recherche de fichiers.

SearchFilesResponse

Représentation JSON
{
  "files": [
    {
      object (File)
    }
  ],

  "nextPageToken": string
}
Champs
files[]

object (File)

Uniquement en sortie. Liste des fichiers.

Champ d'union _next_page_token.

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

nextPageToken

string

Jeton de la page suivante.

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 destructive : ❌ | Indication idempotente : ✅ | Indication en lecture seule : ✅ | Indication Open World : ❌