Read a message
get_messageRetrieve a specific Gmail message by ID: decoded headers, plain-text and HTML bodies, and attachment metadata. Choose metadata-only, include HTML, or set body character limits.
Instructions
Fetches one message fully decoded: headers (from, to, cc, subject, date, messageId, inReplyTo, references — RFC 2047 words decoded), the plain-text body (base64/charset decoded), the HTML body when there is no text part or include_html=true, and attachment METADATA (filename, mimeType, sizeBytes, attachmentId — never the content; download bytes via raw_request users/me/messages//attachments/ if truly needed). Bodies are truncated at max_body_chars (default 50000) with textTruncated/htmlTruncated flags. metadata_only=true skips bodies entirely. To reply later, keep headers.messageId (for in_reply_to) and threadId.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| message_id | Yes | The message id from list_messages/get_thread output (not the RFC Message-ID header). | |
| include_html | No | Return the decoded HTML body even when a text body exists (default false). | |
| metadata_only | No | Headers and structure only, no body content. | |
| max_body_chars | No | Truncate each decoded body at this many characters (default 50000; a truncation flag is set when cut). |