# MCP tools for reading mail

Reading tools let an assistant see your mail without changing it. `list_folders` and `get_inbox_summary` give an overview. `list_messages` and `search_messages` find messages and return each one's `mail_id`. `get_message`, `get_thread` and `get_attachment` open a message, its conversation or a file. Opening a message does not mark it as read.

## When to use it

> Meera asks, "Summarise the thread about the Jaipur office lease." The assistant searches by subject with `search_messages`, opens one result with `get_message`, then reads the whole conversation with `get_thread`.

## Tools

| Tool | Arguments | Notes |
|---|---|---|
| `get_mailbox_profile` | None | Mailbox owner and the permissions that are on |
| `list_folders` | None | Folder names with total and unread counts |
| `get_inbox_summary` | None | Unread per folder, top unread senders, unread in the last 24 hours, oldest unread, starred and drafts |
| `list_messages` | `folder` (default inbox), `unread_only`, `starred_only`, `has_attachment`, `since`, `until`, `page_size` (up to 50), `cursor` | Newest first |
| `search_messages` | `from_address`, `to`, `cc`, `subject`, `text` (any of these), `folder`, `since`, `until`, `unread`, `starred`, `has_attachment`, `page_size`, `cursor` | Sender, recipients and subject only; last 90 days by default, up to 365 |
| `get_message` | `mail_id` (required), `format` (markdown, text or safe_html), `include_headers` | Body plus attachment list; does not mark as read |
| `get_thread` | `thread_id` (required), `max_messages` (up to 25) | Oldest first |
| `get_attachment` | `mail_id`, `attachment_id` (both required), `as_text` | Up to 5 MB; text files can come back as text |

## Good to know

- Each message comes back with its `mail_id`, `thread_id`, folder, sender, recipients, subject, date, flags (unread, starred, answered, draft), whether it has attachments, and whether the sender is internal or external.
- Lists return 50 items at most. Use `next_cursor` to get the next page.
- If a message's body is not available, the assistant should say so rather than guess.
- **Permissions:** List folders for `list_folders`; Search email for `list_messages`, `search_messages` and `get_inbox_summary`; Read email for opening messages, threads and attachments.

## Common questions

**Why does a search not find words from the body of a mail?**

Search covers sender, recipients and subject only. The assistant can open a message it finds with get_message and read its body.

**Can the assistant open a 20 MB attachment?**

No. Attachments download up to 5 MB. Open larger files in webmail.


Source: https://docs.xgenplus.com/developers/mcp-tools-read-mail/
