Skip to content

Example recipes

These recipes assume:

  • primail-mcp is built and the client uses empty args (install, connect).
  • You accept that the client can call every tool against the shared profile.
  • You keep receive_only / ui_only on mailboxes you do not want sent from.

There are no MCP token scopes to request.

Prompt:

Review unread mail from today on my accounts. Archive newsletters and receipts. Draft one-sentence replies where a reply is obvious. Leave the rest unread. Summarize counts.

What the agent should call:

  1. account_list (optional role).
  2. mailbox_list per account (account_id required; optional folder, limit, offset) or email_search with a query.
  3. email_get for bodies (account_id, message_id).
  4. email_archive with { "account_id", "message_ids" } for clear noise.
  5. draft_create for replies (account_id, optional to, subject, body, in_reply_to_message_id).

Drafts are local. They appear in this device’s Drafts, not on other Macs.

Prompt:

Search for recent newsletters, summarize each in two sentences, and archive anything I can skip.

Use email_search (query required; optional account_id, category, limit) then email_archive. Summaries come from the client model unless you also call ai_summarize_message and have configured GEMINI_API_KEY.

Prompt:

Look at Sent for threads older than a week with no reply. Draft a short follow-up. Do not send.

mailbox_list with folder role sent (or an explicit Sent path), thread_get, then draft_create. Do not call email_send or draft_send.

Prompt:

Find unread scheduling mail from the last two weeks and draft a reply. I will check my own calendar.

Primail has no calendar MCP. Pair whatever calendar server the client already has. Primail side: email_search + draft_create.

Prompt:

Give me a short Markdown digest of overnight mail, grouped by sender.

mailbox_list / email_search, then the client formats the summaries. A cron job can run primail CLI instead of MCP; there is no local REST digest endpoint.

Do not run a continuous email_send loop against a personal account unless you intend that. Provider-side vacation mail, when your host offers it, is safer than an always-on agent. Primail’s own tips page may still describe a local OOO helper; that is a separate Settings/integration topic.

  • Legal, HR, or first-contact voice.
  • Anything on receive_only.
  • Bulk send from MCP if you wanted the GUI Undo Send hold — that hold is composer-only.

Put sensitive mailboxes on ui_only if you want MCP send blocked while you still read them from an agent.