Move Email
move_emailMoves an email to another mailbox (nested target folders are found by name). Pass account= (returned by list_emails/search_emails) so the message lookup targets one account instead of scanning all of them — without it, multi-account Macs are slow and can time out on bulk moves. If you know the folder the message is in, also pass mailbox= (the mailbox field from the listing) so the lookup searches it first. On an Exchange account Mail cannot confirm the move with the server, so it answers moved=false with status server_unconfirmed: use m365_move_email for that mailbox.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | Mail.app account the message lives in (returned alongside the id). Pass it so the message is found in the right account. | |
| confirm | No | Ignored; kept for older clients. | false |
| mailbox | No | Folder the message is in TODAY, before the move. Passing it skips searching the other folders. | |
| message_id | Yes | The message id returned by list_emails or search_emails. Accepts the bare id or the <angle-bracketed> form. | |
| target_mailbox | Yes | Destination folder, by name (see list_email_folders). Nested folders are found by their own name, not by a path. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | ||
| moved | No | ||
| status | No | ||
| warning | No | ||
| message_id | No | ||
| server_confirmed | No |