Skip to Content
ResourcesIntegrationsProductivity & DocsMicrosoft Outlook Mail

Microsoft Outlook Mail

Service domainEMAIL
Microsoft Outlook Mail icon
Arcade Optimized

Arcade.dev LLM tools for Outlook Mail

Author:Arcade
Version:0.1.0
Auth:User authorization via the Microsoft auth provider
13tools
PyPI VersionPython VersionsWheel StatusDownloadsLicense

Available tools(13)

13 of 13 tools
Operations
Behavior
Tool nameDescriptionSecrets
Create and immediately send a new email in Outlook to the specified recipients
Compose a new draft email in Outlook
Retrieve a single email message by its ID. Returns email metadata and body content. By default, the body is returned as plain text (HTML tags stripped) and capped at 5000 characters. Set body_format to HTML to get the original markup. Use body_offset to continue reading long emails, or set max_body_characters to None for the full body. Use this tool to read the full content of an email after finding it via search_emails or any listing tool.
List attachment metadata for an email message. Returns metadata only (name, size, type, etc.). Attachment content is not included. Use this tool when the user wants to know what files are attached to an email.
List emails in the user's mailbox across all folders. Results are sorted by sort_by in the sort_order direction. Defaults to newest first (receivedDateTime descending). Since this tool lists email across all folders, it may return sent items, drafts, and other items that are not in the inbox.
List emails in the user's mailbox across all folders filtering by a property. Results are sorted by sort_by in the sort_order direction. Defaults to newest first (receivedDateTime descending). Sorting by RECEIVED_DATE_TIME works with any filter property. Sorting by a different property (SUBJECT, SENDER, IMPORTANCE) while filtering by an unrelated property may fail due to a Microsoft Graph API restriction. If this happens, either sort by RECEIVED_DATE_TIME, or use list_emails (no filter) with the desired sort_by.
List the user's emails in the specified folder. Exactly one of `well_known_folder_name` or `folder_id` MUST be provided. Results are sorted by sort_by in the sort_order direction. Defaults to newest first (receivedDateTime descending).
List mail folders in the user's mailbox. Returns folder names, IDs, unread counts, and total item counts. Use the folder ID in follow-up calls to list_emails_in_folder. Omit parent_folder_id to list top-level folders, or provide a folder ID to list its child folders.
Reply to an existing email in Outlook. Use this tool to reply to the sender or all recipients of the email. Specify the reply_type to determine the scope of the reply.
Search emails across the user's entire mailbox. Combines full-text keyword search with structured filters for sender, read status, attachments, importance, and more. All provided parameters are combined with AND. Results are ordered by date sent (most recent first). Email bodies are truncated to 255 characters for efficient skimming. Use get_email with the message_id to retrieve the full email content. Use this tool when the user wants to find emails by content, topic, sender, or a combination of criteria. For exact property filtering (e.g., by conversationId or flag status), use list_emails_by_property instead.
Send an existing draft email in Outlook This tool can send any un-sent email: - draft - reply-draft - reply-all draft - forward draft
Update an existing draft email in Outlook. This tool overwrites the subject and body of a draft email (if provided), and modifies its recipient lists by selectively adding or removing email addresses. This tool can update any un-sent email: - draft - reply-draft - reply-all draft - forward draft
Get comprehensive user profile and Outlook Mail environment information. This tool provides detailed information about the authenticated user including their name, email, mailbox settings, automatic replies configuration, and other important profile details from Outlook Mail services.

Selected tools

No tools selected.

Click "Show all tools" to add tools.

Requirements

Select tools to see requirements

#

MicrosoftOutlookMail.CreateAndSendEmail

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Create
Service domains
Email
MCP behavior
No

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

No

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Create and immediately send a new email in Outlook to the specified recipients

Parameters

ParameterTypeReq.Description
subjectstringRequiredThe subject of the email to create
bodystringRequiredThe body of the email to create
to_recipientsarray<string>RequiredThe email addresses that will be the recipients of the email
cc_recipientsarray<string>OptionalThe email addresses that will be the CC recipients of the email.
bcc_recipientsarray<string>OptionalThe email addresses that will be the BCC recipients of the email.
body_typestringOptionalThe content type of the email body. Defaults to 'text'
texthtml

Requirements

No secrets required

Output

Type:jsonA dictionary containing the created email details

No code example available for this tool.

#

MicrosoftOutlookMail.CreateDraftEmail

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Create
Service domains
Email
MCP behavior
No

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

No

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Compose a new draft email in Outlook

Parameters

ParameterTypeReq.Description
subjectstringRequiredThe subject of the draft email to create
bodystringRequiredThe body of the draft email to create
to_recipientsarray<string>RequiredThe email addresses that will be the recipients of the draft email
cc_recipientsarray<string>OptionalThe email addresses that will be the CC recipients of the draft email.
bcc_recipientsarray<string>OptionalThe email addresses that will be the BCC recipients of the draft email.
body_typestringOptionalThe content type of the email body. Defaults to 'text'
texthtml

Requirements

No secrets required

Output

Type:jsonA dictionary containing the created email details

No code example available for this tool.

#

MicrosoftOutlookMail.GetEmail

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Read
Service domains
Email
MCP behavior
Yes

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

Yes

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Retrieve a single email message by its ID. Returns email metadata and body content. By default, the body is returned as plain text (HTML tags stripped) and capped at 5000 characters. Set body_format to HTML to get the original markup. Use body_offset to continue reading long emails, or set max_body_characters to None for the full body. Use this tool to read the full content of an email after finding it via search_emails or any listing tool.

Parameters

ParameterTypeReq.Description
message_idstringRequiredThe ID of the email message to retrieve.
body_formatstringOptionalFormat for the returned email body. PLAIN_TEXT strips HTML tags for clean reading. HTML returns the original markup. Defaults to PLAIN_TEXT.
plain_texthtml
max_body_charactersintegerOptionalMaximum number of characters to return from the email body. Defaults to 5000. Set to None to return the full body without a cap.
body_offsetintegerOptionalCharacter offset to start reading the body from. Use this to continue reading a long email body that was previously capped. Defaults to 0 (start of body).

Requirements

No secrets required

Output

Type:jsonA dictionary containing the email message.

No code example available for this tool.

#

MicrosoftOutlookMail.ListEmailAttachments

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Read
Service domains
Email
MCP behavior
Yes

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

Yes

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

List attachment metadata for an email message. Returns metadata only (name, size, type, etc.). Attachment content is not included. Use this tool when the user wants to know what files are attached to an email.

Parameters

ParameterTypeReq.Description
message_idstringRequiredThe ID of the email message to list attachments for.
limitintegerOptionalThe maximum number of attachments to return. Max is 100. Defaults to 25.
pagination_tokenstringOptionalThe pagination token to continue a previous request

Requirements

No secrets required

Output

Type:jsonA dictionary containing a list of attachment metadata objects.

No code example available for this tool.

#

MicrosoftOutlookMail.ListEmails

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Read
Service domains
Email
MCP behavior
Yes

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

Yes

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

List emails in the user's mailbox across all folders. Results are sorted by sort_by in the sort_order direction. Defaults to newest first (receivedDateTime descending). Since this tool lists email across all folders, it may return sent items, drafts, and other items that are not in the inbox.

Parameters

ParameterTypeReq.Description
sort_bystringOptionalProperty to sort results by. Defaults to received date.
receivedDateTimesubjectsender_email_addressimportance
sort_orderstringOptionalSort direction. Defaults to descending.
ascendingdescending
limitintegerOptionalThe number of messages to return. Max is 100. Defaults to 10.
pagination_tokenstringOptionalThe pagination token to continue a previous request

Requirements

No secrets required

Output

Type:jsonA dictionary containing a list of emails

No code example available for this tool.

#

MicrosoftOutlookMail.ListEmailsByProperty

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Read
Service domains
Email
MCP behavior
Yes

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

Yes

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

List emails in the user's mailbox across all folders filtering by a property. Results are sorted by sort_by in the sort_order direction. Defaults to newest first (receivedDateTime descending). Sorting by RECEIVED_DATE_TIME works with any filter property. Sorting by a different property (SUBJECT, SENDER, IMPORTANCE) while filtering by an unrelated property may fail due to a Microsoft Graph API restriction. If this happens, either sort by RECEIVED_DATE_TIME, or use list_emails (no filter) with the desired sort_by.

Parameters

ParameterTypeReq.Description
propertystringRequiredThe property to filter the emails by.
subjectconversationIdreceivedDateTimesender/emailAddress/addressisReadhasAttachmentsimportanceflag/flagStatus
operatorstringRequiredThe operator to use for the filter.
eqnegtgeltlestartsWithendsWithcontains
valuestringRequiredThe value to filter the emails by
sort_bystringOptionalProperty to sort results by. Defaults to received date. Sorting by received date works with any filter property. Sorting by a different property while filtering by another may not be supported — if the combination fails, use sort_by=RECEIVED_DATE_TIME or use list_emails with the desired sort_by instead.
receivedDateTimesubjectsender_email_addressimportance
sort_orderstringOptionalSort direction. Defaults to descending.
ascendingdescending
limitintegerOptionalThe number of messages to return. Max is 100. Defaults to 10.
pagination_tokenstringOptionalThe pagination token to continue a previous request

Requirements

No secrets required

Output

Type:jsonA dictionary containing a list of emails

No code example available for this tool.

#

MicrosoftOutlookMail.ListEmailsInFolder

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Read
Service domains
Email
MCP behavior
Yes

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

Yes

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

List the user's emails in the specified folder. Exactly one of `well_known_folder_name` or `folder_id` MUST be provided. Results are sorted by sort_by in the sort_order direction. Defaults to newest first (receivedDateTime descending).

Parameters

ParameterTypeReq.Description
well_known_folder_namestringOptionalThe name of the folder to list emails from. Defaults to None.
deleteditemsdraftsinboxjunkemailsentitemsstarredtasks
folder_idstringOptionalThe ID of the folder to list emails from if the folder is not a well-known folder. Defaults to None.
sort_bystringOptionalProperty to sort results by. Defaults to received date.
receivedDateTimesubjectsender_email_addressimportance
sort_orderstringOptionalSort direction. Defaults to descending.
ascendingdescending
limitintegerOptionalThe number of messages to return. Max is 100. Defaults to 10.
pagination_tokenstringOptionalThe pagination token to continue a previous request

Requirements

No secrets required

Output

Type:jsonA dictionary containing a list of emails and a pagination token, if applicable

No code example available for this tool.

#

MicrosoftOutlookMail.ListMailFolders

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Read
Service domains
Email
MCP behavior
Yes

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

Yes

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

List mail folders in the user's mailbox. Returns folder names, IDs, unread counts, and total item counts. Use the folder ID in follow-up calls to list_emails_in_folder. Omit parent_folder_id to list top-level folders, or provide a folder ID to list its child folders.

Parameters

ParameterTypeReq.Description
parent_folder_idstringOptionalID of a parent folder to list child folders of. When omitted, lists top-level mailbox folders.
include_hiddenbooleanOptionalWhether to include hidden folders in the response. Defaults to False.
limitintegerOptionalMaximum number of folders to return. Max is 100. Defaults to 25.
pagination_tokenstringOptionalThe pagination token to continue a previous request.

Requirements

No secrets required

Output

Type:jsonA dictionary containing a list of mail folders.

No code example available for this tool.

#

MicrosoftOutlookMail.ReplyToEmail

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Create
Service domains
Email
MCP behavior
No

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

No

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Reply to an existing email in Outlook. Use this tool to reply to the sender or all recipients of the email. Specify the reply_type to determine the scope of the reply.

Parameters

ParameterTypeReq.Description
message_idstringRequiredThe ID of the email to reply to
bodystringRequiredThe body of the reply to the email
reply_typestringOptionalSpecify ReplyType.REPLY to reply only to the sender or ReplyType.REPLY_ALL to reply to all recipients. Defaults to ReplyType.REPLY.
replyreply_all

Requirements

No secrets required

Output

Type:jsonA dictionary containing the sent email details

No code example available for this tool.

#

MicrosoftOutlookMail.SearchEmails

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Read
Service domains
Email
MCP behavior
Yes

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

Yes

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Search emails across the user's entire mailbox. Combines full-text keyword search with structured filters for sender, read status, attachments, importance, and more. All provided parameters are combined with AND. Results are ordered by date sent (most recent first). Email bodies are truncated to 255 characters for efficient skimming. Use get_email with the message_id to retrieve the full email content. Use this tool when the user wants to find emails by content, topic, sender, or a combination of criteria. For exact property filtering (e.g., by conversationId or flag status), use list_emails_by_property instead.

Parameters

ParameterTypeReq.Description
keywordsarray<string>OptionalWords or phrases to search for across email subject, body, and sender fields. All terms must match (AND operator). Defaults to None.
senderarray<string>OptionalFilter by sender email address, display name, or alias. When multiple values are provided, emails from any of the senders are returned (OR operator). Defaults to None.
recipientarray<string>OptionalFilter by To-recipient email address or display name. When multiple values are provided, emails to any of the recipients are returned (OR operator). Defaults to None.
attachment_namearray<string>OptionalFilter by attachment filename. When multiple values are provided, emails with any of the attachment names are returned (OR operator). Defaults to None.
has_attachmentsbooleanOptionalFilter for emails with or without attachments. Defaults to None (no filter).
importancestringOptionalFilter by email importance level. Defaults to None (no filter).
lownormalhigh
is_readbooleanOptionalFilter by read status. True for read emails, False for unread. Defaults to None (no filter).
categorystringOptionalFilter by email category name. Categories are user-defined. Defaults to None (no filter).
received_afterstringOptionalFilter for emails received on or after this date (YYYY-MM-DD). Dates are interpreted in UTC. Defaults to None (no filter).
received_beforestringOptionalFilter for emails received on or before this date (YYYY-MM-DD). Dates are interpreted in UTC. Defaults to None (no filter).
limitintegerOptionalThe maximum number of search results to return. Max is 25. Defaults to 10.
pagination_tokenstringOptionalThe pagination token to continue a previous request.

Requirements

No secrets required

Output

Type:jsonA dictionary containing a list of matching emails.

No code example available for this tool.

#

MicrosoftOutlookMail.SendDraftEmail

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Update
Service domains
Email
MCP behavior
No

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

No

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Send an existing draft email in Outlook This tool can send any un-sent email: - draft - reply-draft - reply-all draft - forward draft

Parameters

ParameterTypeReq.Description
message_idstringRequiredThe ID of the draft email to send

Requirements

No secrets required

Output

Type:jsonA dictionary containing the sent email details

No code example available for this tool.

#

MicrosoftOutlookMail.UpdateDraftEmail

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Update
Service domains
Email
MCP behavior
No

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

Yes

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Update an existing draft email in Outlook. This tool overwrites the subject and body of a draft email (if provided), and modifies its recipient lists by selectively adding or removing email addresses. This tool can update any un-sent email: - draft - reply-draft - reply-all draft - forward draft

Parameters

ParameterTypeReq.Description
message_idstringRequiredThe ID of the draft email to update
subjectstringOptionalThe new subject of the draft email. If provided, the existing subject will be overwritten
bodystringOptionalThe new body of the draft email. If provided, the existing body will be overwritten
to_addarray<string>OptionalEmail addresses to add as 'To' recipients.
to_removearray<string>OptionalEmail addresses to remove from the current 'To' recipients.
cc_addarray<string>OptionalEmail addresses to add as 'CC' recipients.
cc_removearray<string>OptionalEmail addresses to remove from the current 'CC' recipients.
bcc_addarray<string>OptionalEmail addresses to add as 'BCC' recipients.
bcc_removearray<string>OptionalEmail addresses to remove from the current 'BCC' recipients.

Requirements

No secrets required

Output

Type:jsonA dictionary containing the updated email details

No code example available for this tool.

#

MicrosoftOutlookMail.WhoAmI

Execution hints

Signals for MCP clients and agents about how this tool behaves.

Operations
Read
Service domains
Email
MCP behavior
Yes

Reads data without modifying any state in the target system.

No

May permanently delete or overwrite data in the target system.

Yes

Repeated calls with the same inputs produce no additional effect.

Yes

Communicates with external APIs, databases, or other services.

Get comprehensive user profile and Outlook Mail environment information. This tool provides detailed information about the authenticated user including their name, email, mailbox settings, automatic replies configuration, and other important profile details from Outlook Mail services.

Parameters

No parameters required.

Requirements

No secrets required

Output

Type:jsonGet comprehensive user profile and Outlook Mail environment information.

No code example available for this tool.

Last updated on