m365_move_email
Microsoft 365 · macOS · Windows
Effect: write (strongest supported action). Status: gated.
Gated means the tool requires an installed app, a connected account, permission, or runtime availability. Check those requirements on the listed platform before using it.
macOS
Purpose
Use this when the user wants emails of their Microsoft 365 / Outlook account moved to another folder on the Exchange server, to file, archive or organize them. Name the messages with message_id (one) or message_ids (up to 50), from m365_list_emails, m365_search_emails or m365_read_email; or a whole conversation with conversation_id (from m365_list_emails or m365_search_emails): then only its messages in source_folder (default inbox) move, never its copies in Sent Items, Drafts or other folders, unless all_folders=true. destination is a folder id, name or path from m365_list_email_folders, or inbox, archive, deleteditems, junkemail. Shows a preview first — set confirm=true to move. A message counts as moved only when a second read shows it in the destination and no longer at its old id; a moved message gets a new id (new_id). Needs the Microsoft 365 permission Mail.ReadWrite: an account connected before it was asked for answers consent_required until it is connected again. For mail in the Mac's Mail app, use move_email.
Required inputs
destination— The folder to move them to: an id, name or path from m365_list_email_folders, or inbox, archive, deleteditems, junkemail.
Permissions and confirmation
Explicit confirmation parameter: inspect the schema and tool description before any real call. The documentation example keeps confirm false. Obtain user authorization before performing the action.
- Use only the apps, accounts and resources authorized by the user on this platform. Consult this tool's platform-specific description for its connection and permission requirements; this catalog does not assert additional OAuth scopes or OS entitlements.
Full input schema — macOS
{
"properties": {
"account": {
"description": "Which connected Microsoft 365 account to use: its email (UPN), its id from list_m365_accounts, or its display name when unique. Leave it out to use the default account.",
"type": "string"
},
"all_folders": {
"description": "With conversation_id: true moves its messages from every folder, Sent Items and Drafts included (default false).",
"type": "boolean"
},
"confirm": {
"description": "Set to true to move (default: shows a preview only).",
"type": "boolean"
},
"conversation_id": {
"description": "Move the messages of this conversation that are in source_folder.",
"type": "string"
},
"destination": {
"description": "The folder to move them to: an id, name or path from m365_list_email_folders, or inbox, archive, deleteditems, junkemail.",
"type": "string"
},
"message_id": {
"description": "The ID of one message to move.",
"type": "string"
},
"message_ids": {
"description": "IDs of up to 50 messages to move.",
"items": {
"type": "string"
},
"type": "array"
},
"source_folder": {
"description": "With conversation_id: the folder its messages are moved from (default inbox). An id, name or path.",
"type": "string"
}
},
"required": [
"destination"
],
"type": "object"
}Documentation example
Do not execute this example. These concrete inputs refer to a fictional demonstration dataset. Resolve real handles and obtain user authorization before any real call.
{
"confirm": false,
"destination": "archive",
"message_id": "demo-message-001"
}Windows
Purpose
Use this when the user wants emails of their Microsoft 365 / Outlook account moved to another folder on the Exchange server, to file, archive or organize them. Name the messages with message_id (one) or message_ids (up to 50), from m365_list_emails, m365_search_emails or m365_read_email; or a whole conversation with conversation_id (from m365_list_emails or m365_search_emails): then only its messages in source_folder (default inbox) move, never its copies in Sent Items, Drafts or other folders, unless all_folders=true. destination is a folder id, name or path from m365_list_email_folders, or inbox, archive, deleteditems, junkemail. Shows a preview first — set confirm=true to move. A message counts as moved only when a second read shows it in the destination and no longer at its old id; a moved message gets a new id (new_id). Needs the Microsoft 365 permission Mail.ReadWrite: an account connected before it was asked for answers consent_required until it is connected again. For mail in the classic Outlook app on this PC, use outlook_move_email.
Required inputs
destination— The folder to move them to: an id, name or path from m365_list_email_folders, or inbox, archive, deleteditems, junkemail.
Permissions and confirmation
Explicit confirmation parameter: inspect the schema and tool description before any real call. The documentation example keeps confirm false. Obtain user authorization before performing the action.
- Use only the apps, accounts and resources authorized by the user on this platform. Consult this tool's platform-specific description for its connection and permission requirements; this catalog does not assert additional OAuth scopes or OS entitlements.
Full input schema — Windows
{
"properties": {
"account": {
"description": "Which connected Microsoft 365 account to use: its email (UPN), its id from list_m365_accounts, or its display name when unique. Leave it out to use the default account.",
"type": "string"
},
"all_folders": {
"description": "With conversation_id: true moves its messages from every folder, Sent Items and Drafts included (default false).",
"type": "boolean"
},
"confirm": {
"description": "Set to true to move (default: shows a preview only).",
"type": "boolean"
},
"conversation_id": {
"description": "Move the messages of this conversation that are in source_folder.",
"type": "string"
},
"destination": {
"description": "The folder to move them to: an id, name or path from m365_list_email_folders, or inbox, archive, deleteditems, junkemail.",
"type": "string"
},
"message_id": {
"description": "The ID of one message to move.",
"type": "string"
},
"message_ids": {
"description": "IDs of up to 50 messages to move.",
"items": {
"type": "string"
},
"type": "array"
},
"source_folder": {
"description": "With conversation_id: the folder its messages are moved from (default inbox). An id, name or path.",
"type": "string"
}
},
"required": [
"destination"
],
"type": "object"
}Documentation example
Do not execute this example. These concrete inputs refer to a fictional demonstration dataset. Resolve real handles and obtain user authorization before any real call.
{
"confirm": false,
"destination": "archive",
"message_id": "demo-message-001"
}