Narzędzie: search_files
Wyszukuj pliki na Dysku za pomocą zapytania strukturalnego (składnia: query_term operator values). Łącz klauzule za pomocą operatorów and, or, not i nawiasów. Wartości ciągu znaków muszą być ujęte w pojedyncze cudzysłowy. Wbudowane cudzysłowy należy poprzedzić znakiem \'.
Wyszukiwane hasła i operatory:
title(ops: contains, =, !=) — file titlefullText(ops: contains) – tytuł lub tekst głównymimeType(ops: contains, =, !=) – typ MIMEmodifiedTime,viewedByMeTime,createdTime(ops:<=,<,=,!=,>,>=). Użyj formatu UTC RFC 3339, np.2012-06-04T12:00:00-08:00. Typy dat nie są porównywalne.parentId(ops:=,!=). Użyj'root'w przypadku „Mojego dysku” użytkownika.owner(operatorzy:=,!=). Użyj'me'w przypadku użytkownika wysyłającego żądanie.sharedWithMe(operatorzy:=,!=). Wartości:truelubfalse.
Inne operatory: and, or, not.
Przykłady:
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)
Użyj next_page_token, aby podzielić wyniki na strony. Pusta odpowiedź oznacza, że nie ma więcej wyników.
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/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 }' |
Schemat danych wejściowych
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 "canAddChildren": boolean } |
| 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 z zawartością przechowywaną 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. |
Pole zbiorcze Pole |
|
canAddChildren |
Określa, czy osoba wysyłająca prośbę może dodawać dzieci do tego folderu. W przypadku typów innych niż foldery ta wartość jest zawsze fałszywa. |
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: ❌