MCP Tools Reference: drivemcp.googleapis.com

Ferramenta: search_files

Pesquise arquivos do Drive usando uma consulta estruturada (sintaxe: query_term operator values). Combine cláusulas com and, or, not, e parênteses. Os valores de string precisam estar entre aspas simples. Use o escape nas aspas incorporadas como \'.

Termos e operadores de consulta:

  • title (operadores: contains, =, !=) — título do arquivo
  • fullText (operadores: contains) — título ou corpo do texto
  • mimeType (operadores: contains, =, !=) — tipo MIME
  • modifiedTime, viewedByMeTime, createdTime (operadores: <=, <, =, !=, >, >=). Use o padrão UTC RFC 3339, por exemplo, 2012-06-04T12:00:00-08:00. Os tipos de data não são comparáveis.
  • parentId (operadores: =, !=). Use 'root' para "Meu Drive" do usuário.
  • owner (operadores: =, !=). Use 'me' para o usuário solicitante.
  • sharedWithMe (operadores: =, !=). Valores: true ou false.

Outros operadores: and, or, not.

Exemplos:

  • 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 arquivos de propriedade do usuário)

Use next_page_token para paginar. Uma resposta vazia significa que não há mais resultados.

O exemplo a seguir demonstra como usar curl para invocar a ferramenta MCP search_files.

Solicitação 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

Solicitação para pesquisar arquivos.

SearchFilesRequest

Representação JSON
{
  "query": string,

  "pageToken": string

  "pageSize": integer

  "excludeContentSnippets": boolean
}
Campos
query

string

A consulta de pesquisa.

Campo de união _page_token.

_page_token pode ser apenas de um dos tipos a seguir:

pageToken

string

O token de página a ser usado para paginação.

Campo de união _page_size.

_page_size pode ser apenas de um dos tipos a seguir:

pageSize

integer

O número máximo de arquivos a serem retornados em cada página.

Campo de união _exclude_content_snippets.

_exclude_content_snippets pode ser apenas de um dos tipos a seguir:

excludeContentSnippets

boolean

Se verdadeiro, o snippet de conteúdo será excluído da resposta.

Esquema de saída

Resposta para pesquisar arquivos.

SearchFilesResponse

Representação JSON
{
  "files": [
    {
      object (File)
    }
  ],

  "nextPageToken": string
}
Campos
files[]

object (File)

Apenas saída. A lista de arquivos.

Campo de união _next_page_token.

_next_page_token pode ser apenas de um dos tipos a seguir:

nextPageToken

string

O token da próxima página.

Arquivo

Representação 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

O ID do arquivo buscado.

title

string

O título do arquivo.

parentId

string

O ID (opcional) do pai do arquivo.

Campo de união _mime_type.

_mime_type pode ser apenas de um dos tipos a seguir:

mimeType

string

O tipo MIME do arquivo.

Campo de união _file_size.

_file_size pode ser apenas de um dos tipos a seguir:

fileSize

string (int64 format)

O tamanho do arquivo em bytes.

Campo de união _description.

_description pode ser apenas de um dos tipos a seguir:

description

string

A descrição do arquivo.

Campo de união _file_extension.

_file_extension pode ser apenas de um dos tipos a seguir:

fileExtension

string

A extensão original do arquivo. Esse campo só é preenchido para arquivos com conteúdo armazenado no Drive.

Campo de união _content_snippet.

_content_snippet pode ser apenas de um dos tipos a seguir:

contentSnippet

string

Snippet gerado sobre o conteúdo do arquivo.

Campo de união _view_url.

_view_url pode ser apenas de um dos tipos a seguir:

viewUrl

string

O URL para visualizar o arquivo.

Campo de união _shared_with_me_time.

_shared_with_me_time pode ser apenas de um dos tipos a seguir:

sharedWithMeTime

string (Timestamp format)

O horário em que o arquivo foi compartilhado com o solicitante.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

Campo de união _created_time.

_created_time pode ser apenas de um dos tipos a seguir:

createdTime

string (Timestamp format)

O horário em que o arquivo foi criado.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

Campo de união _modified_time.

_modified_time pode ser apenas de um dos tipos a seguir:

modifiedTime

string (Timestamp format)

O horário mais recente em que o arquivo foi modificado.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

Campo de união _viewed_by_me_time.

_viewed_by_me_time pode ser apenas de um dos tipos a seguir:

viewedByMeTime

string (Timestamp format)

O horário mais recente em que o arquivo foi visualizado pelo solicitante.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

Campo de união _owner.

_owner pode ser apenas de um dos tipos a seguir:

owner

string

O endereço de e-mail do proprietário do arquivo.

Campo de união _can_add_children.

_can_add_children pode ser apenas de um dos tipos a seguir:

canAddChildren

boolean

Indica se o solicitante pode adicionar filhos a essa pasta. Esse valor é sempre falso para tipos que não são de pasta.

Carimbo de data/hora

Representação JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Representa os segundos do horário UTC desde a época Unix 1970-01-01T00:00:00Z. Precisa estar entre -62135596800 e 253402300799 (inclusive), o que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z.

nanos

integer

Frações não negativas de um segundo com resolução de nanossegundos. Esse campo é a parte de nanossegundos da duração, não uma alternativa aos segundos. Os valores de segundos negativos com frações ainda precisam ter valores em nanossegundos não negativos que representam períodos posteriores. O valor precisa ser de 0 a 999.999.999 (inclusive).

Anotações de ferramentas

Dica destrutiva: ❌ | Dica idempotente: ✅ | Dica somente leitura: ✅ | Dica de mundo aberto: ❌