MCP Tools Reference: gmailmcp.googleapis.com

Инструмент: list_drafts

Отображает список черновиков писем из учетной записи Gmail авторизованного пользователя.

Этот инструмент может фильтровать черновики на основе строки запроса и поддерживает пагинацию. Он возвращает список черновиков, включая их идентификаторы и темы (если только для view не установлено значение DRAFT_VIEW_METADATA_ONLY ). page_token можно использовать для пагинации результатов. Для получения последующих страниц результатов используйте page_token , возвращенный в предыдущем ответе.

Параметр view определяет, какие поля будут заполнены в ответе. По умолчанию (или при использовании DRAFT_VIEW_FULL ) возвращается полное содержимое. Используйте DRAFT_VIEW_METADATA_ONLY чтобы исключить конфиденциальную информацию, такую ​​как тема и текст ответа.

В следующем примере показано, как использовать curl для вызова инструмента list_drafts MCP.

Запрос Curl
curl --location 'https://gmailmcp.googleapis.com/mcp/v1' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "list_drafts",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Схема ввода

Запрос сообщения для RPC-вызова ListDrafts.

Запрос на создание списка черновиков

JSON-представление
{

  "pageSize": integer

  "pageToken": string

  "query": string

  "view": enum (DraftView)
}
Поля

Объединенное поле _page_size .

_page_size может принимать только одно из следующих значений:

pageSize

integer

Необязательный параметр. Максимальное количество возвращаемых черновиков. Если не указано, по умолчанию — 20. Максимально допустимое значение — 50.

Поле объединения _page_token .

_page_token может принимать только одно из следующих значений:

pageToken

string

Необязательный параметр. Токен, полученный из предыдущего вызова list_drafts для получения следующей страницы результатов. Оставьте пустым, чтобы получить первую страницу. Он в основном используется для пагинации, чтобы продолжить получение результатов с того места, где остановился предыдущий вызов ListDraft , особенно когда количество черновиков, соответствующих запросу, превышает лимит page_size.

Объединение полей _query .

_query может принимать только одно из следующих значений:

query

string

Примеры:

  • subject:OneMCP Update
  • from:gduser1@workspacesamples.dev
  • to:gduser2@workspacesamples.dev AND newer_than:7d
  • project proposal has:attachment
  • is:unread

Пробел или тире ( - ) разделяют числа, а точка ( . ) обозначает десятичную дробь. Например, 01.2047-100 считается двумя числами: 01.2047 и 100 .

Примечание: Если мы хотим гарантировать получение всех черновиков по запросу, мы можем разбить результаты на страницы, многократно обращаясь к инструменту до тех пор, пока ответ не будет содержать пустой список черновиков.

Union _view .

_view может принимать только одно из следующих значений:

view

enum ( DraftView )

Необязательный параметр. Управляет полями, заполняемыми для черновиков в списке черновиков. По умолчанию (или с помощью DRAFT_VIEW_FULL ) возвращается полное содержимое, включающее идентификатор черновика, идентификатор темы, получателя, копию, скрытую копию, дату, тему и текст сообщения. Используйте DRAFT_VIEW_METADATA_ONLY чтобы исключить тему и текст сообщения.

DraftView

Перечисление (Enum) для управления полями, заполняемыми для черновиков в ответе ListDrafts.

Перечисления
DRAFT_VIEW_UNSPECIFIED Сопоставляется с DRAFT_VIEW_FULL для обеспечения обратной совместимости.
DRAFT_VIEW_METADATA_ONLY Только метаданные: не включает subject, plaintext_body, html_body.
DRAFT_VIEW_FULL Метаданные + пользовательский контент (поведение по умолчанию).

Схема вывода

Ответное сообщение для RPC-запроса ListDrafts.

ListDraftsResponse

JSON-представление
{
  "drafts": [
    {
      object (Draft)
    }
  ],
  "nextPageToken": string
}
Поля
drafts[]

object ( Draft )

Список черновиков.

nextPageToken

string

Токен, который можно использовать в последующем вызове для получения следующей страницы черновиков. Если количество черновиков, соответствующих запросу, превышает лимит page_size, ответ будет содержать next_page_token . Чтобы получить следующую страницу результатов, передайте этот токен в поле page_token следующего ListDraftsRequest .

Черновик

JSON-представление
{
  "id": string,
  "subject": string,
  "threadId": string,
  "toRecipients": [
    string
  ],
  "ccRecipients": [
    string
  ],
  "bccRecipients": [
    string
  ],
  "plaintextBody": string,
  "date": string,
  "htmlBody": string
}
Поля
id

string

Уникальный идентификатор чернового варианта ресурса.

subject

string

Тема черновика сообщения.

threadId

string

Идентификатор темы, к которой относится этот черновик.

toRecipients[]

string

Список адресов электронной почты получателей, извлеченных из заголовков.

ccRecipients[]

string

Список адресов электронной почты получателей, указанных в поле «Копия», извлеченных из заголовков.

bccRecipients[]

string

Список адресов электронной почты получателей, указанных в поле «Скрытая копия» (Bcc), извлеченных из заголовков.

plaintextBody

string

Если доступно, используйте текстовое содержимое файла.

date

string

Дата проекта в формате ISO 8601 (ГГГГ-ММ-ДД).

htmlBody

string

HTML-содержимое черновика (если имеется).

Аннотации инструментов

Подсказка о разрушительном эффекте: ❌ | Подсказка об идемпотентности: ❌ | Подсказка только для чтения: ✅ | Подсказка об открытом мире: ❌

Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://mail.google.com/
  • https://www.googleapis.com/auth/gmail.modify
  • https://www.googleapis.com/auth/gmail.compose
  • https://www.googleapis.com/auth/gmail.readonly