Create draft
create_draftCompose a new email draft in a mailbox's Drafts folder, including threaded replies, forwards, and attachments, so the owner can review and send it later.
Instructions
Create a new draft, a threaded reply (reply_to_message_id, quotes the original by default) or a forward (forward_message_id or forward_ref, includes the original's attachments by default) in a mailbox's server Drafts. Attach files by reference to a message you can read (bytes stay on the server) or inline as base64: at most 10 per draft, 10 MiB in total by default. Recipients are never inferred. If the operator set a signature for the sender it is appended after body_text (before a quote or forward block) unless you pass signature: false; update_draft never adds it again. Generate a fresh UUID request_key per intent and reuse it only to retry the same request. The owner reviews and sends it in their mail app unless send rights exist. Change it with update_draft; send it with send_draft when you have send rights, otherwise ask the owner with request_send.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"account": "<account>",
"request_key": "<request_key>",
"body_text": "<body_text>"
},
"name": "create_draft"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cc | No | Cc recipients (email addresses, at most 50). | |
| to | No | To recipients (email addresses, at most 50). | |
| bcc | No | Bcc recipients (email addresses, at most 50). | |
| account | Yes | Mailbox alias or email address from list_accounts. | |
| subject | No | Subject line. | |
| body_text | Yes | Plain-text body (at most 500 KB). | |
| signature | No | Append the sender's signature after body_text (default true; nothing happens when none is set). | |
| attachments | No | Files to attach. Either a reference {ref | account + message_id, attachment_id} to an attachment of a message you can read, or inline {filename, mime_type, content_base64}. | |
| forward_ref | No | Forward the message of this ref from search_messages (any mailbox you can read). | |
| request_key | Yes | Client-generated UUID for idempotent retries. | |
| from_address | No | The mailbox address or one of its send-as aliases (list_accounts shows from_addresses for IMAP mailboxes; Gmail uses the account's send-as list). | |
| quote_original | No | Replies: quote the original's text below body_text (default true when you have read on this mailbox). | |
| forward_message_id | No | Forward this message of `account` (needs read). | |
| include_attachments | No | Forwards: attach the original's attachments (default true). | |
| reply_to_message_id | No | Make a threaded reply to this message of `account`. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | ||
| draft_id | No | ||
| revision | No | ||
| thread_id | No | ||
| message_id | No |