Инструмент: search_files
Поиск файлов на Google Диске с использованием структурированного запроса (синтаксис: query_term operator values ). Объединяйте предложения с помощью операторов and , or , not и скобок. Строковые значения должны быть заключены в одинарные кавычки; экранируйте встроенные кавычки как \' .
Ключевые слова и операторы запроса:
-
title(операции: содержит, =, !=) — заголовок файла -
fullText(options: contains) — заголовок или основной текст -
mimeType(options: contains, =, !=) — MIME-тип -
modifiedTime,viewedByMeTime,createdTime(операции:<=,<,=,!=,>,>=). Используйте RFC 3339 UTC, например,2012-06-04T12:00:00-08:00. Типы дат несопоставимы. -
parentId(ops:=,!=). Используйте'root'для "Моего диска" пользователя. -
owner(ops:=,!=). Используйте'me'для обозначения пользователя, отправившего запрос. -
sharedWithMe(ops:=,!=). Значения:trueилиfalse.
Другие операторы: and , or , not .
Примеры:
-
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'(для файлов, принадлежащих пользователю)
Use next_page_token to paginate. An empty response means no more results.
В следующем примере показано, как использовать curl для вызова инструмента MCP search_files .
| Запрос 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 }' |
Схема ввода
Запрос на поиск файлов.
SearchFilesRequest
| JSON-представление |
|---|
{ "query": string, "pageToken": string "pageSize": integer "excludeContentSnippets": boolean } |
| Поля | |
|---|---|
query | Поисковый запрос. |
Поле объединения | |
pageToken | Токен страницы, используемый для пагинации. |
Объединенное поле | |
pageSize | Максимальное количество файлов, которое должно быть отображено на каждой странице. |
Объединенное поле | |
excludeContentSnippets | Если это так, фрагмент контента будет исключен из ответа. |
Схема вывода
Ответы на поисковые файлы.
SearchFilesResponse
| JSON-представление |
|---|
{
"files": [
{
object ( |
| Поля | |
|---|---|
files[] | Только вывод. Список файлов. |
Поле объединения | |
nextPageToken | Токен следующей страницы. |
Файл
| 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 } |
| Поля | |
|---|---|
id | Идентификатор полученного файла. |
title | Название файла. |
parentId | Идентификатор (необязательный) родительского файла. |
Объединенное поле | |
mimeType | MIME-тип файла. |
Объединенное поле | |
fileSize | Размер файла в байтах. |
Поле объединения | |
description | Описание файла. |
Объединенное поле | |
fileExtension | Исходное расширение файла; это поле заполняется только для файлов, содержимое которых хранится в Google Диске. |
Объединенное поле | |
contentSnippet | Сгенерированный фрагмент текста о содержимом файла. |
Объединенное поле | |
viewUrl | URL-адрес для просмотра файла. |
Поле объединения | |
sharedWithMeTime | Время, когда файл был передан запрашивающему лицу. Используется RFC 3339, согласно которому генерируемый вывод всегда будет Z-нормализован и будет содержать 0, 3, 6 или 9 дробных знаков. Допускаются также смещения, отличные от "Z". Примеры: |
Поле объединения | |
createdTime | Время создания файла. Используется RFC 3339, согласно которому генерируемый вывод всегда будет Z-нормализован и будет содержать 0, 3, 6 или 9 дробных знаков. Допускаются также смещения, отличные от "Z". Примеры: |
Поле объединения | |
modifiedTime | Последнее время, когда файл был изменен. Используется RFC 3339, согласно которому генерируемый вывод всегда будет Z-нормализован и будет содержать 0, 3, 6 или 9 дробных знаков. Допускаются также смещения, отличные от "Z". Примеры: |
Объединенное поле | |
viewedByMeTime | Последнее время просмотра файла пользователем, отправившим запрос. Используется RFC 3339, согласно которому генерируемый вывод всегда будет Z-нормализован и будет содержать 0, 3, 6 или 9 дробных знаков. Допускаются также смещения, отличные от "Z". Примеры: |
| |
owner | Адрес электронной почты владельца файла. |
Поле объединения | |
canAddChildren | Указывает, может ли запрашивающий добавлять дочерние элементы в эту папку. Для элементов, не являющихся папками, этот параметр всегда имеет значение false. |
Отметка времени
| JSON-представление |
|---|
{ "seconds": string, "nanos": integer } |
| Поля | |
|---|---|
seconds | Обозначает количество секунд UTC-времени с начала эпохи Unix 1970-01-01T00:00:00Z. Должно находиться в диапазоне от -62135596800 до 253402300799 включительно (что соответствует периоду с 0001-01-01T00:00:00Z по 9999-12-31T23:59:59Z). |
nanos | Неотрицательные доли секунды с разрешением в наносекунды. Это поле представляет собой наносекундную часть длительности, а не альтернативу секундам. Отрицательные значения секунд с дробными долями должны по-прежнему иметь неотрицательные значения в наносекундах, отсчитываемые вперед во времени. Должны быть в диапазоне от 0 до 999 999 999 включительно. |
Аннотации инструментов
Подсказка о разрушительном эффекте: ❌ | Подсказка об идемпотентности: ✅ | Подсказка только для чтения: ✅ | Подсказка об открытом мире: ❌