Strumento: search_files
Chiama questo strumento per cercare i file di Drive in base a una query strutturata.
Il campo query richiede l'utilizzo di operatori di ricerca delle query.
Una stringa di query contiene le seguenti tre parti: query_term operator values, dove:
query_termè il termine o il campo della query su cui eseguire la ricerca.operatorspecifica la condizione per il termine di query.valuessono i valori specifici da utilizzare per filtrare i risultati di ricerca.
Termini di ricerca
La tabella seguente elenca i termini di ricerca validi con le relative descrizioni:
| Termine di query | Operatori validi | Utilizzo |
|---|---|---|
title |
contains, =, != |
Titolo del file. Racchiudi tra virgolette singole ('). Esegui l'escape delle virgolette singole nelle query con \', ad esempio 'Valentine\'s Day'. |
fullText |
contains |
Se title o il testo nei contenuti del file corrispondono. Racchiudi tra virgolette singole ('). Esegui l'escape delle virgolette singole nelle query con \', ad esempio 'Valentine\'s Day'. |
mimeType |
contains, =, != |
Tipo MIME del file. Racchiudi tra virgolette singole ('). Esegui l'escape delle virgolette singole nelle query con \', ad esempio 'Valentine\'s Day'. |
modifiedTime |
<=, <, =, !=, >, >= |
La data dell'ultima modifica del file. Formato RFC 3339, fuso orario predefinito UTC, ad esempio 2012-06-04T12:00:00-08:00. I campi di tipo date non sono confrontabili. |
viewedByMeTime |
<=, <, =, !=, >, >= |
Data dell'ultima visualizzazione di un file da parte dell'utente. Formato RFC 3339, fuso orario predefinito UTC, ad esempio 2012-06-04T12:00:00-08:00. I campi di tipo date non sono confrontabili. |
parentId |
=, != |
Indica se l'elemento principale è uguale all'ID specificato. root può essere utilizzato per specificare "Il mio Drive " dell'utente, che funge da gerarchia principale. |
owner |
=, != |
Utente proprietario del file. me può essere utilizzato per specificare l'utente che effettua la richiesta. |
sharedWithMe |
=, != |
File che si trovano nella raccolta "Condivisi con me " dell'utente. Tutti gli utenti del file sono inclusi nell'elenco di controllo dell'accesso (ACL) del file. Può essere true o false. |
createdTime |
<=, <, =, !=, >, >= |
Data di creazione del file. Utilizza il formato RFC 3339, il fuso orario predefinito è UTC, ad esempio 2012-06-04T12:00:00-08:00. |
Operatori di query
La tabella seguente elenca gli operatori di query validi:
| Operatore | Utilizzo |
|---|---|
contains |
I contenuti di una stringa sono presenti nell'altra. |
= |
Il contenuto di una stringa o di un valore booleano è uguale all'altro. |
!= |
Il contenuto di una stringa o di un valore booleano non è uguale all'altro. |
< |
Un valore è inferiore a un altro. |
<= |
Un valore è minore o uguale a un altro. |
> |
Un valore è maggiore di un altro. |
>= |
Un valore è maggiore o uguale a un altro. |
in |
Un elemento è contenuto all'interno di una raccolta. |
and |
Restituisce gli elementi che corrispondono a entrambe le query. |
or |
Restituisce gli elementi che corrispondono a una delle due query. |
not |
Nega una query di ricerca. |
has |
Una raccolta contiene un elemento corrispondente ai parametri. |
Alcuni esempi di query includono:
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 = trueowner = 'me'(per i file di proprietà dell'utente)
Utilizza next_page_token per scorrere le pagine dei risultati. Una risposta vuota indica che non ci sono risultati o non ci sono altri risultati da restituire.
Il seguente esempio mostra come utilizzare curl per richiamare lo strumento MCP search_files.
| Curl Request |
|---|
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 }' |
Schema di input
Richiesta di ricerca di file.
SearchFilesRequest
| Rappresentazione JSON |
|---|
{ "query": string, "pageToken": string "pageSize": integer "excludeContentSnippets": boolean } |
| Campi | |
|---|---|
query |
La query di ricerca. |
Campo unione
|
|
pageToken |
Il token di pagina da utilizzare per l'impaginazione. |
Campo unione
|
|
pageSize |
Il numero massimo di file da restituire in ogni pagina. |
Campo unione
|
|
excludeContentSnippets |
Se è true, lo snippet di contenuti verrà escluso dalla risposta. |
Schema di output
Risposta alla ricerca di file.
SearchFilesResponse
| Rappresentazione JSON |
|---|
{
"files": [
{
object ( |
| Campi | |
|---|---|
files[] |
Solo output. L'elenco dei file. |
Campo unione
|
|
nextPageToken |
Il token di pagina successiva. |
File
| Rappresentazione 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 } |
| Campi | |
|---|---|
id |
L'ID del file recuperato. |
title |
Il titolo del file. |
parentId |
L'ID (facoltativo) del genitore del file. |
Campo unione
|
|
mimeType |
Il tipo MIME del file. |
Campo unione
|
|
fileSize |
Le dimensioni del file in byte. |
Campo unione
|
|
description |
La descrizione del file. |
Campo unione
|
|
fileExtension |
L'estensione del file originale, questo campo viene compilato solo per i file con contenuti archiviati su Drive. |
Campo unione
|
|
contentSnippet |
Snippet generato sui contenuti del file. |
Campo unione
|
|
viewUrl |
L'URL per visualizzare il file. |
Campo unione
|
|
sharedWithMeTime |
L'ora in cui il file è stato condiviso con il richiedente. Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: |
Campo unione
|
|
createdTime |
L'ora in cui è stato creato il file. Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: |
Campo unione
|
|
modifiedTime |
L'ora più recente in cui il file è stato modificato. Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: |
Campo unione
|
|
viewedByMeTime |
L'ultima volta in cui il file è stato visualizzato dal richiedente. Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: |
Campo unione
|
|
owner |
L'indirizzo email del proprietario del file. |
Timestamp
| Rappresentazione JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campi | |
|---|---|
seconds |
Rappresenta i secondi di tempo UTC dall'epoca di Unix 1970-01-01T00:00:00Z. Deve essere compreso tra -62135596800 e 253402300799 inclusi (corrispondenti a 0001-01-01T00:00:00Z e 9999-12-31T23:59:59Z). |
nanos |
Frazioni di secondo non negative con risoluzione in nanosecondi. Questo campo è la porzione di nanosecondi della durata, non un'alternativa ai secondi. I valori negativi dei secondi con frazioni devono comunque avere valori di nanosecondi non negativi che vengono conteggiati in avanti nel tempo. Deve essere compreso tra 0 e 999.999.999 inclusi. |
Annotazioni dello strumento
Suggerimento distruttivo: ❌ | Suggerimento idempotente: ✅ | Suggerimento di sola lettura: ✅ | Suggerimento open world: ❌