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.3.1
Auth:User authorization via the Microsoft auth provider
26tools

The Microsoft Outlook Mail toolkit provides Arcade LLM tools for reading, composing, sending, searching, and managing email in Outlook via the Microsoft Graph API. It covers both personal mailboxes and shared/delegated mailboxes (e.g., team inboxes like support@).

Capabilities

  • Compose & Send: Create and immediately send emails, compose drafts, update drafts (subject, body, recipients), and send existing drafts — including reply-drafts, reply-all drafts, and forward drafts. Returns message_id and conversation_id for chaining follow-ups.
  • Read & Retrieve: Fetch full email content by ID with configurable body format (plain text or HTML), character limits, and pagination offset for long messages.
  • Search & Filter: Full-text keyword search across the entire mailbox with structured filters (sender, read status, attachments, importance); list emails globally or within a specific folder; filter by exact property (conversation ID, flag status, etc.); sort by date, subject, sender, or importance.
  • Folder & Attachment Metadata: List all mail folders (with unread/total counts) at any level of the hierarchy; list attachment metadata (name, size, type) for any message.
  • Shared & Delegated Mailboxes: Full parity set of tools for shared/delegated mailboxes — compose, send, read, search, list, reply, update drafts, and check mailbox reachability — with replies sent from the shared address, not the signed-in user.
  • Identity & Mailbox Settings: Retrieve the authenticated user's profile, mailbox settings, and auto-reply configuration via WhoAmI.

OAuth

This toolkit uses OAuth 2.0 with Microsoft as the identity provider. Arcade handles the authorization flow automatically.

See the Microsoft auth provider docs for configuration details.

Available tools(26)

26 of 26 tools
Operations
Behavior
Tool nameDescriptionSecrets
Create and immediately send a new email in Outlook to the specified recipients. Returns the sent message's ``message_id`` and ``conversation_id`` so callers can immediately chain follow-ups (e.g. reply to what they just sent) without having to search Sent Items.
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. .. note:: Microsoft Graph's ``$search`` on messages is backed by the Microsoft Search index, which returns message IDs in the legacy REST-ID format even when the client opts into Immutable IDs (which other tools in this toolkit do by default). Do not directly compare a ``message_id`` from ``search_emails`` against one from ``list_emails`` / ``get_email`` — the ID shapes differ. To chain from a search hit, pass the returned ID straight back into ``get_email`` (which accepts either format), and use ``conversation_id`` as the deduplication key across result sets.
Send an existing draft email in Outlook. Sends any un-sent message — draft, reply-draft, reply-all draft, or forward draft — and returns the message's ``message_id`` and ``conversation_id`` so callers can chain follow-ups (e.g. reply to the message they just sent) without searching Sent Items.
Check which provided mailboxes are reachable via shared mailbox APIs. This is a capability checker, not an Exchange permission inventory. It verifies whether each provided mailbox can be reached through a cheap, read-only Graph call. When checking multiple mailboxes, pass them together in one ``owner_emails`` list so results can be deduplicated and rate-limited consistently. Microsoft Graph does not expose exact ``Send As`` vs ``Send on behalf`` permissions, so the response names that limitation explicitly instead of guessing.
Create and immediately send an email from a shared or delegated mailbox. Use this when the user wants the email to be sent from a team inbox (like sales@ or support@) or from an executive's mailbox they have been delegated access to, rather than from their own address.
Compose a new draft email in a shared or delegated mailbox.
Retrieve a single email from a shared or delegated mailbox by message ID. Returns email metadata and body content. By default, the body is returned as plain text (HTML tags stripped) and capped at 5000 characters. Use body_offset to continue reading long emails, or set max_body_characters to None for the full body.
List attachment metadata for an email in a shared or delegated mailbox.
List emails in a shared or delegated mailbox, across all folders. Results are sorted by sort_by in the sort_order direction. Defaults to newest first (receivedDateTime descending).
List emails in a shared or delegated mailbox filtered by a property. Results are sorted by sort_by in the sort_order direction. Defaults to newest first (receivedDateTime descending).
List emails in a specific folder of a shared or delegated mailbox. 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 a shared or delegated mailbox. Returns folder names, IDs, unread counts, and total item counts. Use the folder ID when listing emails in a specific folder.
Reply to an email in a shared or delegated mailbox. The reply is sent from the shared mailbox address, not the signed-in user's personal address. Specify reply_type to reply only to the sender or to all recipients.
Search emails in a shared or delegated 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. Retrieve a message by its message ID when the full content is needed. .. note:: Search results may use a different Graph ID shape than list/get results. Use returned message IDs directly for message retrieval and ``conversation_id`` for deduplication across result sets.
Send an existing draft email from a shared or delegated mailbox. This tool can send any un-sent email in the shared mailbox: - draft - reply-draft - reply-all draft - forward draft Returns the message's ``message_id`` and ``conversation_id`` so callers can chain follow-ups (e.g. reply to the message they just sent) without searching Sent Items.
Update an existing draft email in a shared or delegated mailbox. Overwrites the subject and body of a draft (if provided) and modifies its recipient lists by selectively adding or removing email addresses.
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
Page 1 of 2(25 of 26)

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. Returns the sent message's ``message_id`` and ``conversation_id`` so callers can immediately chain follow-ups (e.g. reply to what they just sent) without having to search Sent Items.

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:jsonNo description provided.
#

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
#

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 capped by ``max_body_characters`` on a prior call. Defaults to 0 (start of body).

Requirements

No secrets required

Output

Type:jsonA dictionary containing the email message.
#

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.
#

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
#

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
mail_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
#

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
#

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.
#

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:jsonNo description provided.
#

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. .. note:: Microsoft Graph's ``$search`` on messages is backed by the Microsoft Search index, which returns message IDs in the legacy REST-ID format even when the client opts into Immutable IDs (which other tools in this toolkit do by default). Do not directly compare a ``message_id`` from ``search_emails`` against one from ``list_emails`` / ``get_email`` — the ID shapes differ. To chain from a search hit, pass the returned ID straight back into ``get_email`` (which accepts either format), and use ``conversation_id`` as the deduplication key across result sets.

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.
#

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. Sends any un-sent message — draft, reply-draft, reply-all draft, or forward draft — and returns the message's ``message_id`` and ``conversation_id`` so callers can chain follow-ups (e.g. reply to the message they just sent) without searching Sent Items.

Parameters

ParameterTypeReq.Description
message_idstringRequiredThe ID of the draft email to send

Requirements

No secrets required

Output

Type:jsonNo description provided.
#

MicrosoftOutlookMail.SharedMailboxCheckCapabilities

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.

Check which provided mailboxes are reachable via shared mailbox APIs. This is a capability checker, not an Exchange permission inventory. It verifies whether each provided mailbox can be reached through a cheap, read-only Graph call. When checking multiple mailboxes, pass them together in one ``owner_emails`` list so results can be deduplicated and rate-limited consistently. Microsoft Graph does not expose exact ``Send As`` vs ``Send on behalf`` permissions, so the response names that limitation explicitly instead of guessing.

Parameters

ParameterTypeReq.Description
owner_emailsarray<string>RequiredMailbox addresses to check. Use exact email addresses or UPNs. Pass all candidate mailboxes in this single list instead of calling the tool once per mailbox. This tool performs read-only Graph probes and returns one result per address.

Requirements

No secrets required

Output

Type:jsonNo description provided.
#

MicrosoftOutlookMail.SharedMailboxCreateAndSendEmail

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 an email from a shared or delegated mailbox. Use this when the user wants the email to be sent from a team inbox (like sales@ or support@) or from an executive's mailbox they have been delegated access to, rather than from their own address.

Parameters

ParameterTypeReq.Description
owner_emailstringRequiredThe mailbox address to send from. Can be a team or shared mailbox, or a specific person's mailbox you have been delegated Send-As or Send-On-Behalf permission for. Provide as a Microsoft Graph UPN (local-part@verified-domain).
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:jsonNo description provided.
#

MicrosoftOutlookMail.SharedMailboxCreateDraftEmail

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 a shared or delegated mailbox.

Parameters

ParameterTypeReq.Description
owner_emailstringRequiredThe mailbox address to create the draft in. Can be a team or shared mailbox, or a specific person's mailbox you have delegate access to. Provide as a Microsoft Graph UPN (local-part@verified-domain).
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:jsonNo description provided.
#

MicrosoftOutlookMail.SharedMailboxGetEmail

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 from a shared or delegated mailbox by message ID. Returns email metadata and body content. By default, the body is returned as plain text (HTML tags stripped) and capped at 5000 characters. Use body_offset to continue reading long emails, or set max_body_characters to None for the full body.

Parameters

ParameterTypeReq.Description
owner_emailstringRequiredThe mailbox address to read from. Can be a team or shared mailbox, or a specific person's mailbox you have delegate access to. Provide as a Microsoft Graph UPN (local-part@verified-domain).
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:jsonNo description provided.
#

MicrosoftOutlookMail.SharedMailboxListEmailAttachments

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 in a shared or delegated mailbox.

Parameters

ParameterTypeReq.Description
owner_emailstringRequiredThe mailbox address that owns the email. Can be a team or shared mailbox, or a specific person's mailbox you have delegate access to. Provide as a Microsoft Graph UPN (local-part@verified-domain).
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:jsonNo description provided.
#

MicrosoftOutlookMail.SharedMailboxListEmails

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 a shared or delegated mailbox, across all folders. Results are sorted by sort_by in the sort_order direction. Defaults to newest first (receivedDateTime descending).

Parameters

ParameterTypeReq.Description
owner_emailstringRequiredThe mailbox address to read from. Can be a team or shared mailbox, or a specific person's mailbox you have delegate access to. Provide as a Microsoft Graph UPN (local-part@verified-domain).
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:jsonNo description provided.
#

MicrosoftOutlookMail.SharedMailboxListEmailsByProperty

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 a shared or delegated mailbox filtered by a property. Results are sorted by sort_by in the sort_order direction. Defaults to newest first (receivedDateTime descending).

Parameters

ParameterTypeReq.Description
owner_emailstringRequiredThe mailbox address to read from. Can be a team or shared mailbox, or a specific person's mailbox you have delegate access to. Provide as a Microsoft Graph UPN (local-part@verified-domain).
mail_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.
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:jsonNo description provided.
#

MicrosoftOutlookMail.SharedMailboxListEmailsInFolder

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 a specific folder of a shared or delegated mailbox. 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
owner_emailstringRequiredThe mailbox address to read from. Can be a team or shared mailbox, or a specific person's mailbox you have delegate access to. Provide as a Microsoft Graph UPN (local-part@verified-domain).
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:jsonNo description provided.
#

MicrosoftOutlookMail.SharedMailboxListMailFolders

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 a shared or delegated mailbox. Returns folder names, IDs, unread counts, and total item counts. Use the folder ID when listing emails in a specific folder.

Parameters

ParameterTypeReq.Description
owner_emailstringRequiredThe mailbox address to read folders from. Can be a team or shared mailbox, or a specific person's mailbox you have delegate access to. Provide as a Microsoft Graph UPN (local-part@verified-domain).
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:jsonNo description provided.
#

MicrosoftOutlookMail.SharedMailboxReplyToEmail

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 email in a shared or delegated mailbox. The reply is sent from the shared mailbox address, not the signed-in user's personal address. Specify reply_type to reply only to the sender or to all recipients.

Parameters

ParameterTypeReq.Description
owner_emailstringRequiredThe mailbox address to reply from. Can be a team or shared mailbox, or a specific person's mailbox you have delegate access to. Provide as a Microsoft Graph UPN (local-part@verified-domain).
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:jsonNo description provided.
#

MicrosoftOutlookMail.SharedMailboxSearchEmails

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 in a shared or delegated 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. Retrieve a message by its message ID when the full content is needed. .. note:: Search results may use a different Graph ID shape than list/get results. Use returned message IDs directly for message retrieval and ``conversation_id`` for deduplication across result sets.

Parameters

ParameterTypeReq.Description
owner_emailstringRequiredThe mailbox address to search. Can be a team or shared mailbox, or a specific person's mailbox you have delegate access to. Provide as a Microsoft Graph UPN (local-part@verified-domain).
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. Defaults to None.
recipientarray<string>OptionalFilter by To-recipient email address or display name. Defaults to None.
attachment_namearray<string>OptionalFilter by attachment filename. 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.
categorystringOptionalFilter by email category name. 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:jsonNo description provided.
#

MicrosoftOutlookMail.SharedMailboxSendDraftEmail

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 from a shared or delegated mailbox. This tool can send any un-sent email in the shared mailbox: - draft - reply-draft - reply-all draft - forward draft Returns the message's ``message_id`` and ``conversation_id`` so callers can chain follow-ups (e.g. reply to the message they just sent) without searching Sent Items.

Parameters

ParameterTypeReq.Description
owner_emailstringRequiredThe mailbox address that owns the draft. Can be a team or shared mailbox, or a specific person's mailbox you have delegate access to. Provide as a Microsoft Graph UPN (local-part@verified-domain).
message_idstringRequiredThe ID of the draft email to send

Requirements

No secrets required

Output

Type:jsonNo description provided.
#

MicrosoftOutlookMail.SharedMailboxUpdateDraftEmail

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 a shared or delegated mailbox. Overwrites the subject and body of a draft (if provided) and modifies its recipient lists by selectively adding or removing email addresses.

Parameters

ParameterTypeReq.Description
owner_emailstringRequiredThe mailbox address that owns the draft. Can be a team or shared mailbox, or a specific person's mailbox you have delegate access to. Provide as a Microsoft Graph UPN (local-part@verified-domain).
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:jsonNo description provided.
#

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
#

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.
Last updated on