Narzędzie: search_files
Wywołaj to narzędzie, aby wyszukać pliki na Dysku na podstawie zapytania strukturalnego.
Pole query wymaga użycia operatorów wyszukiwania zapytań.
Ciąg zapytania składa się z tych 3 części: query_term operator values, gdzie:
query_termto wyszukiwane hasło lub pole, w którym chcesz wyszukiwać.operatorokreśla warunek dla terminu zapytania.valuesto konkretne wartości, których możesz użyć do filtrowania wyników wyszukiwania.
Wyszukiwane hasła
W tabeli poniżej znajdziesz prawidłowe terminy wyszukiwania wraz z ich opisami:
| Wyszukiwane hasło | Prawidłowe operatory | Wykorzystanie |
|---|---|---|
title |
contains, =, != |
Tytuł pliku. Ujmij w pojedyncze cudzysłowy ('). Zmień znaczenie pojedynczych cudzysłowów w zapytaniach za pomocą znaku \', np. 'Valentine\'s Day'. |
fullText |
contains |
Czy title lub tekst w zawartości pliku są zgodne. Ujmij w pojedyncze cudzysłowy ('). Zmień znaczenie pojedynczych cudzysłowów w zapytaniach za pomocą znaku \', np. 'Valentine\'s Day'. |
mimeType |
contains, =, != |
Typ MIME pliku. Ujmij w pojedyncze cudzysłowy ('). Zmień znaczenie pojedynczych cudzysłowów w zapytaniach za pomocą znaku \', np. 'Valentine\'s Day'. |
modifiedTime |
<=, <, =, !=, >, >= |
Data ostatniej modyfikacji pliku. Format RFC 3339, domyślna strefa czasowa to UTC, np. 2012-06-04T12:00:00-08:00. Pola typu date nie są porównywalne. |
viewedByMeTime |
<=, <, =, !=, >, >= |
Data ostatniego wyświetlenia pliku przez użytkownika. Format RFC 3339, domyślna strefa czasowa to UTC, np. 2012-06-04T12:00:00-08:00. Pola typu date nie są porównywalne. |
parentId |
=, != |
Czy element nadrzędny jest równy podanemu identyfikatorowi. root może służyć do określania „Mojego dysku” użytkownika, który pełni funkcję jego głównej hierarchii. |
owner |
=, != |
Użytkownik, do którego należy plik. me można użyć do określenia użytkownika, który wysyła żądanie. |
sharedWithMe |
=, != |
Pliki znajdujące się w kolekcji „Udostępnione mnie” użytkownika. Wszyscy użytkownicy pliku znajdują się na liście kontroli dostępu (ACL) pliku. Może to być true lub false. |
createdTime |
<=, <, =, !=, >, >= |
Data utworzenia pliku. Użyj formatu RFC 3339, domyślna strefa czasowa to UTC, np. 2012-06-04T12:00:00-08:00. |
Operatory zapytań
W tabeli poniżej znajdziesz listę prawidłowych operatorów zapytań:
| Operator | Wykorzystanie |
|---|---|
contains |
Zawartość jednego ciągu znaków jest obecna w drugim. |
= |
Zawartość ciągu znaków lub wartości logicznej jest równa drugiej wartości. |
!= |
Zawartość ciągu znaków lub wartości logicznej nie jest równa drugiej wartości. |
< |
Wartość jest mniejsza od innej. |
<= |
Wartość jest mniejsza lub równa innej wartości. |
> |
Wartość jest większa od innej. |
>= |
Wartość jest większa lub równa innej wartości. |
in |
Element znajduje się w kolekcji. |
and |
Zwróć elementy pasujące do obu zapytań. |
or |
Zwraca elementy pasujące do dowolnego zapytania. |
not |
Neguje zapytanie. |
has |
Kolekcja zawiera element pasujący do parametrów. |
Przykłady zapytań:
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'(w przypadku plików należących do użytkownika)
Aby przeglądać wyniki, użyj next_page_token. Pusta odpowiedź oznacza, że nie ma wyników lub nie ma już więcej wyników do zwrócenia.
Poniższy przykład pokazuje, jak za pomocą znaku curl wywołać narzędzie search_files MCP.
| Żądanie 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 }' |
Schemat wejściowy
Prośba o wyszukiwanie plików.
SearchFilesRequest
| Zapis JSON |
|---|
{ "query": string, "pageToken": string "pageSize": integer "excludeContentSnippets": boolean } |
| Pola | |
|---|---|
query |
Wyszukiwane hasło. |
Pole zbiorcze Pole |
|
pageToken |
Token strony do użycia w przypadku podziału na strony. |
Pole zbiorcze Pole |
|
pageSize |
Maksymalna liczba plików do zwrócenia na każdej stronie. |
Pole zbiorcze Pole |
|
excludeContentSnippets |
Jeśli wartość to „true”, fragment treści zostanie wykluczony z odpowiedzi. |
Schemat wyjściowy
Odpowiedź na wyszukiwanie plików.
SearchFilesResponse
| Zapis JSON |
|---|
{
"files": [
{
object ( |
| Pola | |
|---|---|
files[] |
Tylko dane wyjściowe. Lista plików. |
Pole zbiorcze Pole |
|
nextPageToken |
Token następnej strony. |
Plik
| Zapis 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 } |
| Pola | |
|---|---|
id |
Identyfikator pobranego pliku. |
title |
Tytuł pliku. |
parentId |
(Opcjonalny) identyfikator elementu nadrzędnego pliku. |
Pole zbiorcze Pole |
|
mimeType |
Typ MIME pliku. |
Pole zbiorcze Pole |
|
fileSize |
Rozmiar pliku w bajtach. |
Pole zbiorcze Pole |
|
description |
Opis pliku. |
Pole zbiorcze Pole |
|
fileExtension |
Oryginalne rozszerzenie pliku. To pole jest wypełniane tylko w przypadku plików, których zawartość jest przechowywana na Dysku. |
Pole zbiorcze Pole |
|
contentSnippet |
Wygenerowany fragment kodu dotyczący zawartości pliku. |
Pole zbiorcze Pole |
|
viewUrl |
URL umożliwiający wyświetlenie pliku. |
Pole zbiorcze Pole |
|
sharedWithMeTime |
godzinę udostępnienia pliku osobie, która o to poprosiła; Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: |
Pole zbiorcze Pole |
|
createdTime |
Czas utworzenia pliku. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: |
Pole zbiorcze Pole |
|
modifiedTime |
Ostatni czas modyfikacji pliku. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: |
Pole zbiorcze Pole |
|
viewedByMeTime |
Najnowszy czas, w którym plik został wyświetlony przez osobę przeglądającą. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: |
Pole zbiorcze Pole |
|
owner |
Adres e-mail właściciela pliku. |
Sygnatura czasowa
| Zapis JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Pola | |
|---|---|
seconds |
Reprezentuje sekundy czasu UTC od epoki uniksowej 1970-01-01T00:00:00Z. Musi mieścić się w przedziale od -62135596800 do 253402300799 (włącznie), co odpowiada zakresowi od 0001-01-01T00:00:00Z do 9999-12-31T23:59:59Z. |
nanos |
Nieujemne ułamki sekundy w rozdzielczości nanosekundowej. To pole zawiera część czasu trwania w nanosekundach, a nie alternatywę dla sekund. Ujemne wartości sekund z ułamkami muszą mieć nieujemne wartości nanosekund, które liczą czas do przodu. Musi mieścić się w zakresie od 0 do 999 999 999 włącznie. |
Adnotacje narzędzi
Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌