send_email
Compose and send a new Gmail message, including CC, BCC, and file attachments, or reply within an existing thread using thread and message headers.
Instructions
Send a new email. Can thread into an existing conversation by including
thread_id and in_reply_to/references headers. Supports CC, BCC, and
file attachments.
Required:
to (str) — recipient email address.
subject (str) — email subject line.
body (str) — email body text.
Optional:
cc (str, default="") — CC recipients, comma-separated.
bcc (str, default="") — BCC recipients, comma-separated.
thread_id (str, default="") — Gmail thread ID to reply within.
If provided with in_reply_to and references, the email threads
into the existing conversation.
in_reply_to (str, default="") — the Message-ID header of the
message being replied to. Required for threading.
references (str, default="") — References header for threading.
Usually same as in_reply_to.
attachments (list[str] | None, default=None) — absolute file paths
to files to attach. Paths must be absolute or relative to cwd.
Returns on success:
{"message_id": "...", "thread_id": "...", "to": "...", "subject": "..."}
Workflow note: For threading, you need both thread_id and in_reply_to.
If you only have a thread_id but not in_reply_to, use
get_thread_messages(thread_id) first to find a message_id.
Attachments: paths must exist and be under 25MB.
The body parameter is the email text — not a file path.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cc | No | ||
| to | Yes | ||
| bcc | No | ||
| body | Yes | ||
| subject | Yes | ||
| thread_id | No | ||
| references | No | ||
| attachments | No | ||
| in_reply_to | No |