Sign inGet started
Menu
TOOL REFERENCE / SOURCE GENERATEDMAILMAN MCP / MAIL

email_list_threads

Lists conversation threads matching a query across one, several, or all Read-enabled mailboxes, each with its subject, participants, message count, and latest activity. Prefer this over email_search_messages when the user asks about a conversation rather than a specific email — 'what's happening with the Alpha contract' is a thread question, 'find the invoice PDF' is a message question. Omit account_ids to cover every Read-enabled account. Providers without native threading are reported through their capabilities (can_thread).

Input fields

{
  "type": "object",
  "properties": {
    "account_ids": {
      "description": "Mailboxes to search, from email_accounts_list. Omit to search every connected account that has Read enabled. Naming an account whose Read permission is off is an error; omitting it simply skips it.",
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1
          }
        },
        {
          "type": "null"
        }
      ]
    },
    "query": {
      "description": "Provider-neutral search syntax, translated to Gmail search, Microsoft Graph, or IMAP SEARCH per account. Supported terms: free text, from:address, from-domain:example.com, to:address, subject:text, after:YYYY-MM-DD, before:YYYY-MM-DD, is:read, is:unread, is:starred, has:attachment, folder:name, label:name. Do not send raw Gmail or Graph syntax. Terms a provider cannot evaluate are reported back, never silently dropped.",
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "limit": {
      "description": "Maximum results in this page. Clamped to the server maximum; omit for the server default.",
      "anyOf": [
        {
          "type": "integer",
          "minimum": 1,
          "maximum": 9007199254740991
        },
        {
          "type": "null"
        }
      ]
    },
    "cursor": {
      "description": "Opaque cursor from a previous response's next_cursor. Pass the same filters alongside it — a cursor is bound to the search that produced it.",
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    }
  }
}

Tool behavior

Declared read-only. Actual provider grants and account access apply.

Inspect isError and per-account errors. General write tools do not all enforce exact-plan approval. This reference does not certify any current AI client version.

YOUR AI POSTAL SYSTEM

YOUR INBOXES.
UNDER CONTROL.

Get started

Start with a free account and one read-only search. Existing accounts keep their connection.