MCP Tools Reference: drivemcp.googleapis.com

Herramienta: search_files

Busca archivos de Drive con una consulta estructurada (sintaxis: query_term operator values). Combina cláusulas con and, or, not, y paréntesis. Los valores de cadena deben estar entre comillas simples. Escapa las comillas integradas como \'.

Términos y operadores de consulta:

  • title (ops: contains, =, !=): Título del archivo
  • fullText (ops: contains): Título o texto del cuerpo
  • mimeType (ops: contains, =, !=): Tipo de MIME
  • modifiedTime, viewedByMeTime, createdTime (ops: <=, <, =, !=, >, >=). Usa RFC 3339 UTC, por ejemplo, 2012-06-04T12:00:00-08:00. Los tipos de fecha no son comparables.
  • parentId (ops: =, !=). Usa 'root' para la "Mi unidad" del usuario.
  • owner (ops: =, !=). Usa 'me' para el usuario solicitante.
  • sharedWithMe (ops: =, !=). Valores: true o false.

Otros operadores: and, or, not.

Ejemplos:

  • 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' (para archivos propiedad del usuario)

Usa next_page_token para paginar. Una respuesta vacía significa que no hay más resultados.

En el siguiente ejemplo, se muestra cómo usar curl para invocar la herramienta MCP search_files.

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

Esquema de entrada

Solicitud para buscar archivos.

SearchFilesRequest

Representación JSON
{
  "query": string,

  "pageToken": string

  "pageSize": integer

  "excludeContentSnippets": boolean
}
Campos
query

string

La búsqueda.

Campo de unión _page_token.

_page_token puede ser una de las siguientes opciones:

pageToken

string

El token de página que se usará para la paginación.

Campo de unión _page_size.

_page_size puede ser una de las siguientes opciones:

pageSize

integer

La cantidad máxima de archivos que se mostrarán en cada página.

Campo de unión _exclude_content_snippets.

_exclude_content_snippets puede ser una de las siguientes opciones:

excludeContentSnippets

boolean

Si se establece como verdadero, el fragmento de contenido se excluirá de la respuesta.

Esquema de salida

Respuesta para buscar archivos.

SearchFilesResponse

Representación JSON
{
  "files": [
    {
      object (File)
    }
  ],

  "nextPageToken": string
}
Campos
files[]

object (File)

Solo salida. La lista de páginas.

Campo de unión _next_page_token.

_next_page_token puede ser una de las siguientes opciones:

nextPageToken

string

El token de página siguiente.

Archivo

Representación 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
}
Campos
id

string

El ID del archivo que se recuperó.

title

string

El título del archivo.

parentId

string

El ID (opcional) del elemento superior del archivo.

Campo de unión _mime_type.

_mime_type puede ser una de las siguientes opciones:

mimeType

string

El tipo MIME del archivo.

Campo de unión _file_size.

_file_size puede ser una de las siguientes opciones:

fileSize

string (int64 format)

El tamaño del archivo en bytes.

Campo de unión _description.

_description puede ser una de las siguientes opciones:

description

string

La descripción del archivo.

Campo de unión _file_extension.

_file_extension puede ser una de las siguientes opciones:

fileExtension

string

La extensión de archivo original del archivo. Solo se propaga para los archivos con contenido almacenado en Drive.

Campo de unión _content_snippet.

_content_snippet puede ser una de las siguientes opciones:

contentSnippet

string

Fragmento generado sobre el contenido del archivo.

Campo de unión _view_url.

_view_url puede ser una de las siguientes opciones:

viewUrl

string

La URL para ver el archivo.

Campo de unión _shared_with_me_time.

_shared_with_me_time puede ser una de las siguientes opciones:

sharedWithMeTime

string (Timestamp format)

La hora en que se compartió el archivo con el solicitante.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Campo de unión _created_time.

_created_time puede ser una de las siguientes opciones:

createdTime

string (Timestamp format)

La hora en que se creó el archivo.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Campo de unión _modified_time.

_modified_time puede ser una de las siguientes opciones:

modifiedTime

string (Timestamp format)

La hora más reciente en la que se modificó el archivo.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Campo de unión _viewed_by_me_time.

_viewed_by_me_time puede ser una de las siguientes opciones:

viewedByMeTime

string (Timestamp format)

La hora más reciente en la que el solicitante vio el archivo.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Campo de unión _owner.

_owner puede ser una de las siguientes opciones:

owner

string

La dirección de correo electrónico del propietario del archivo.

Campo de unión _can_add_children.

_can_add_children puede ser una de las siguientes opciones:

canAddChildren

boolean

Indica si el solicitante puede agregar elementos secundarios a esta carpeta. Esto siempre es falso para los tipos que no son de carpeta.

Marca de tiempo

Representación JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Representa los segundos de la hora UTC desde la época de Unix 1970-01-01T00:00:00Z. Debe estar entre -62135596800 y 253402300799 inclusive (que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z).

nanos

integer

Fracciones no negativas de un segundo a una resolución de nanosegundos. Este campo es la parte de nanosegundos de la duración, no una alternativa a los segundos. Los valores de segundos negativos con fracciones deben tener valores nanos no negativos que se cuentan hacia adelante en el tiempo. Debe estar entre 0 y 999,999,999 inclusive.

Anotaciones de herramientas

Sugerencia destructiva: ❌ | Sugerencia idempotente: ✅ | Sugerencia de solo lectura: ✅ | Sugerencia de mundo abierto: ❌