Инструмент: search_threads
Отображает переписку по электронной почте из учетной записи Gmail авторизованного пользователя.
Этот инструмент позволяет фильтровать ветки обсуждений на основе строки запроса и поддерживает пагинацию. Он возвращает список веток, включая их идентификаторы и связанные сообщения. Каждое связанное сообщение содержит подробную информацию, такую как фрагмент текста сообщения, тема, отправитель, получатели и т. д. Обратите внимание, что этот инструмент не возвращает полные тексты сообщений; при необходимости используйте инструмент 'get_thread' с идентификатором ветки, чтобы получить полный текст сообщения. Ветки, не соответствующие критериям, могут по-прежнему отображаться в результатах. Это происходит потому, что Gmail сначала идентифицирует соответствующие сообщения. Например, если вы выполните поиск по запросу -is:starred, Gmail найдет всю ветку, если она содержит хотя бы одно сообщение без звездочки, даже если другие письма в той же беседе отмечены звездочкой.
В следующем примере показано, как использовать curl для вызова инструмента MCP search_threads .
| Запрос Curl |
|---|
curl --location 'https://gmailmcp.googleapis.com/mcp/v1' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "search_threads", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Схема ввода
Сообщение запроса для RPC-вызова SearchThreads.
SearchThreadsRequest
| JSON-представление |
|---|
{ "pageSize": integer "pageToken": string "query": string "includeTrash": boolean } |
| Поля | |
|---|---|
Объединенное поле | |
pageSize | Необязательный параметр. Максимальное количество потоков для возврата. Если не указано, по умолчанию используется 20. Максимально допустимое значение — 50. |
Поле объединения | |
pageToken | Необязательный параметр. Токен страницы для получения конкретной страницы результатов в списке. Оставьте поле пустым, чтобы получить первую страницу. Он в основном используется для пагинации, чтобы продолжить получение результатов с того места, где остановился предыдущий вызов |
Объединение полей | |
query | Необязательно. Строка запроса для фильтрации цепочек сообщений. Запросы на естественном языке должны быть предварительно преобразованы в синтаксис Gmail для использования этого инструмента. Если этот параметр опущен, отображаются все цепочки сообщений (по умолчанию исключая спам и корзину). Поддерживаемые операторы по категориям: Отправитель и получатель: от: Время и дата: после:ГГГГ/ММ/ДД / новее:ГГГГ/ММ/ДД - получено после даты. до:ГГГГ/ММ/ДД / старше:ГГГГ/ММ/ДД - получено до даты. старше_чем: Содержание: тема: Метки и категории: метка: Статус: есть: Размер: размер: Логика и группировка: AND — Соответствие всем критериям (поведение по умолчанию). OR или { } — Соответствие одному или нескольким критериям (например, from:amy OR from:david, {from:amy from:david}). - (минус) — Исключение критериев (например, -movie). ( ) — Группировка нескольких поисковых запросов (например, subject:(dinner film)). Примеры: "subject:OneMCP Update" "from: user@example.com " "to: user2@example.com AND newer_than:7d" "project proposal has:attachment" "is:unread -in:draft" |
Объединенное поле | |
includeTrash | Необязательно. Включать черновики из корзины в результаты. По умолчанию — false. |
Схема вывода
Ответное сообщение для RPC-запроса SearchThreads.
SearchThreadsResponse
| JSON-представление |
|---|
{
"threads": [
{
object ( |
| Поля | |
|---|---|
threads[] | Список кратких описаний тем обсуждения. |
nextPageToken | Токен, который можно использовать в последующем вызове для получения следующей страницы обсуждений. Присутствует только в том случае, если есть дополнительные результаты. Если количество обсуждений, соответствующих запросу, превышает лимит page_size, ответ будет содержать |
Нить
| JSON-представление |
|---|
{
"id": string,
"messages": [
{
object ( |
| Поля | |
|---|---|
id | Уникальный идентификатор темы. |
messages[] | Список сообщений в ветке обсуждения, упорядоченный в хронологическом порядке. |
Сообщение
| JSON-представление |
|---|
{ "id": string, "snippet": string, "subject": string, "sender": string, "toRecipients": [ string ], "ccRecipients": [ string ], "date": string, "plaintextBody": string, "attachmentIds": [ string ] } |
| Поля | |
|---|---|
id | Уникальный идентификатор сообщения. |
snippet | Фрагмент текста сообщения. |
subject | Тема сообщения, извлеченная из заголовков: |
sender | Адрес электронной почты отправителя. |
toRecipients[] | Адреса электронной почты получателей. |
ccRecipients[] | Адреса электронной почты получателей копии. |
date | Дата сообщения в формате ISO 8601 (ГГГГ-ММ-ДД). |
plaintextBody | Полное содержимое тела сообщения, заполняется только в том случае, если MessageFormat имеет значение FULL_CONTENT. |
attachmentIds[] | Только для вывода. Идентификаторы вложений заполняются только в том случае, если MessageFormat имеет значение FULL_CONTENT. |
Аннотации инструментов
Подсказка о разрушительном эффекте: ❌ | Подсказка об идемпотентности: ✅ | Подсказка только для чтения: ✅ | Подсказка об открытом мире: ❌