List mail messages
mail_list_messagesLists Outlook messages newest-first with compact fields (id, subject, from, preview), paging, and filters for unread or folder-specific retrieval.
Instructions
Lists Outlook messages newest-first, 10 per call by default (50 max), as a compact projection: id, subject, from, toRecipients, receivedDateTime, isRead, hasAttachments and bodyPreview. The Outlook webLink is NOT included — it is the id again, URL-encoded, and costs more than everything else on the row; pass includeWebLink when you need a clickable link, and use the id for any further mail tool call. Bodies are never included — bodyPreview is Graph's first 255 characters, and mail_get_message returns the rest. Page with skip. Note that Exchange rejects some filter/orderby combinations with "The restriction or sort order is too complex"; when that happens, drop orderby or sort on the same property you filtered.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| top | No | How many messages to return. Defaults to 10; 50 is the ceiling. | |
| skip | No | Messages to skip before returning results. Use it to page: 0, then 10, then 20. | |
| filter | No | Raw OData $filter, e.g. "importance eq 'high'" or "receivedDateTime ge 2026-01-01T00:00:00Z". Combined with unreadOnly using and. | |
| select | No | Graph message property names to return instead of the default projection, e.g. ["subject","importance","conversationId"]. id is always included. Do not ask for "body" here — use mail_get_message. | |
| orderby | No | Sort order. Defaults to "receivedDateTime desc" (newest first). | receivedDateTime desc |
| folderId | No | Restrict to one mail folder. Accepts a folder id from mail_list_folders or a well-known name: inbox, drafts, sentitems, deleteditems, archive, junkemail, outbox, clutter, conversationhistory, scheduled. Omit to list the whole mailbox. | |
| unreadOnly | No | Return only unread messages (adds "isRead eq false" to the filter). | |
| includeWebLink | No | Include each row's Outlook webLink. Off by default: a webLink is the message id all over again, URL-encoded, and on a 50-row page it costs more than every subject and preview put together. Turn it on only when you need a link a person will click — to read or act on a message, pass its `id` to another mail tool instead. |