mail_reply
Open a threaded reply draft for review without sending it, optionally including the quoted original message. Use it to prepare email responses in Mail.
Instructions
Reply to a message, opening a threaded draft for review (Automation).
NEVER sends. message_id: the RFC822 id from a mail read. mailbox is REQUIRED: the
folder value from the SAME search result, passed back VERBATIM (an opaque
imap://<uuid>/<path> token; the five canonical names also work). Mail sets the
threading headers natively; include_quote appends the quoted original. Returns a
locator dict — save the draft to Drafts and drafts() resolves it by a stable
message-id.
THE AUTOSAVE WINDOW: that message-id is stamped only when Mail autosaves the draft,
~10-15 SECONDS after this returns — asynchronously, and nothing can hurry it. So
drafts() called immediately shows nothing; that is normal, not a failed create.
Wait for the window, then drafts() resolves it. Do NOT retry this call
because the draft has not appeared: you get two drafts and the first still arrives.
Note a reply draft cannot be sent with send_mail(draft_id=…) — rebuilding it
would drop the threading headers, so that call refuses and points you at
reply_all(dry_run=False) instead.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mailbox | Yes | ||
| message_id | Yes | ||
| reply_body | Yes | ||
| include_quote | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||