draft_send
Send a saved draft after verifying every recipient matches the outbound allowlist; blocks the send and leaves the draft intact for review if any recipient is off-list.
Instructions
Send an existing draft. THIS IS THE ONLY SEND TOOL.
Hard policy gate: every recipient (to/cc/bcc) on the draft must
match the outbound allowlist (see outbound_allowlist.py). If any
recipient is off-list, the send is blocked and the draft is left
INTACT for human review — you can edit it via draft_update or
open Mail.app and send/discard manually.
Off-list recipients are detected BEFORE any destructive operation,
so a blocked draft_send is a pure no-op on Mail.app state.
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": {
"draft_id": "<draft_id>"
},
"name": "draft_send"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| draft_id | Yes | Id of the saved draft to send. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||