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

email_modify_message

Changes one message's organization state: read/unread, starred, labels added or removed, and archived or not. Returns the updated message. Every change here is reversible — this is the tool for tidying an inbox without risking data. Omit a field to leave it alone; sending null is the same as omitting it. Labels only work on providers whose capabilities report can_use_labels; on folder-based providers use email_move_message instead. account_id must be the mailbox holding the message.

Input fields

{
  "type": "object",
  "properties": {
    "account_id": {
      "type": "string",
      "minLength": 1,
      "description": "The connected mailbox to act on, from email_accounts_list. Never guess this value and never reuse one across mailboxes — it selects both the credential and the permission set the call runs under."
    },
    "message_id": {
      "type": "string",
      "minLength": 1,
      "description": "A message id returned by this server (msg_...), not a provider id."
    },
    "read": {
      "description": "true marks read, false marks unread, omit to leave alone.",
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ]
    },
    "starred": {
      "description": "Star or unstar. Omit to leave alone.",
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ]
    },
    "add_labels": {
      "description": "Labels to add. Label-based providers only — check can_use_labels.",
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1
          }
        },
        {
          "type": "null"
        }
      ]
    },
    "remove_labels": {
      "description": "Labels to remove.",
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1
          }
        },
        {
          "type": "null"
        }
      ]
    },
    "archive": {
      "description": "true removes the message from the inbox without deleting it.",
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "account_id",
    "message_id"
  ]
}

Tool behavior

May change provider state. Check the explicit account, required access and provider capabilities before invoking.

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.