Search Proton Mail Emails
proton_search_emailsSearch emails in a specified folder using filters like sender, subject, date range, read status, and flagged status. Returns paginated summaries for quick scanning.
Instructions
Search emails in a folder using IMAP search criteria. Supports filtering by sender, recipient, subject, body text, date range, and read/flagged status.
Returns email summaries — use proton_get_email to read the full content of a specific result.
Args:
folder (string): Folder to search in (default: 'INBOX')
from (string, optional): Filter by sender email or name
to (string, optional): Filter by recipient email or name
subject (string, optional): Filter by subject text
body (string, optional): Search within email body
since (string, optional): Emails after this date (ISO 8601, e.g., '2025-01-01')
before (string, optional): Emails before this date (ISO 8601)
unseen (boolean, optional): Only unread emails
flagged (boolean, optional): Only starred/flagged emails
limit (number): Max results, 1–100 (default: 20)
offset (number): Pagination offset (default: 0)
response_format ('markdown' | 'json'): Output format (default: 'markdown')
Returns: Paginated list of matching email summaries.
Examples:
"Find emails from Alice" -> proton_search_emails({ from: "Alice" })
"Unread emails about quarterly report" -> proton_search_emails({ subject: "quarterly report", unseen: true })
"Emails from acme.com in March" -> proton_search_emails({ from: "acme.com", since: "2025-03-01", before: "2025-04-01" })
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| folder | No | Mailbox folder to search in (e.g., 'INBOX', 'Sent') | INBOX |
| from | No | Filter by sender email or name (partial match) | |
| to | No | Filter by recipient email or name (partial match) | |
| subject | No | Filter by subject line (partial match) | |
| body | No | Search within email body text | |
| since | No | Only emails after this date (ISO 8601, e.g., '2025-01-01') | |
| before | No | Only emails before this date (ISO 8601, e.g., '2025-04-01') | |
| unseen | No | If true, only return unread emails | |
| flagged | No | If true, only return flagged/starred emails | |
| limit | No | Maximum emails to return (1–100, default 20) | |
| offset | No | Number of results to skip for pagination | |
| response_format | No | Output format: 'markdown' for human-readable or 'json' for structured data | markdown |