Back to Tools
Productivity & Docs OAuth
microsoft-outlook-mail logo

Microsoft Outlook Mail MCP Tools for AI Agents

Let an agent search Outlook mail, read messages and attachments, organize folders, draft replies, and send email from user or shared mailboxes.

Available Tools

88 tools available in this integration

MicrosoftOutlookMail.CategorizeEmails

Put a category on emails in the user's own mailbox, or take one off, keeping every

MicrosoftOutlookMail.CheckSharedMailboxCapabilities

Check which provided mailboxes are reachable via shared mailbox APIs.

MicrosoftOutlookMail.CreateAndSendEmail

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

MicrosoftOutlookMail.CreateDraftForward

Create a forward of an existing Outlook email, with its attachments, as an unsent draft.

MicrosoftOutlookMail.CreateDraftReply

Create a reply or reply-all draft for an existing Outlook email without sending it.

MicrosoftOutlookMail.CreateForwardDraft

Create a forward of an existing Outlook email, with its attachments, as an unsent draft.

MicrosoftOutlookMail.CreateMailFolder

Create a mail folder in the user's own Outlook mailbox, to keep related messages together.

MicrosoftOutlookMail.CreateReplyDraft

Create a reply or reply-all draft for an existing Outlook email without sending it.

MicrosoftOutlookMail.CreateSharedMailboxForwardDraft

Create a forward of an email in a shared or delegated mailbox, with its attachments, as an unsent draft.

MicrosoftOutlookMail.CreateSharedMailboxMailFolder

Create a mail folder in a shared or delegated mailbox, to keep related messages together.

MicrosoftOutlookMail.CreateSharedMailboxReplyDraft

Create a reply or reply-all draft in a shared or delegated mailbox without sending it.

MicrosoftOutlookMail.DeleteCategory

Delete a category (label or tag) from the user's own Outlook mailbox and take it off every

MicrosoftOutlookMail.DeleteEmailCategory

Delete a category (label or tag) from the user's own Outlook mailbox and take it off every

MicrosoftOutlookMail.DeleteMailRule

Delete one Inbox rule (filter) from the user's own Outlook mailbox by its rule_id.

MicrosoftOutlookMail.ForwardEmail

Forward an existing email in Outlook, with its attachments, and send it immediately.

MicrosoftOutlookMail.ForwardMessage

Forward an existing email in Outlook, with its attachments, and send it immediately.

MicrosoftOutlookMail.ForwardSharedMailboxMessage

Forward an email in a shared or delegated mailbox, with its attachments, and send it immediately.

MicrosoftOutlookMail.GetAutomaticReplies

Check the user's out-of-office automatic replies (auto-reply, vacation responder): whether they are going out now, what they say, to whom, and until when.

MicrosoftOutlookMail.GetAutomaticReplySettings

Check the user's out-of-office automatic replies (auto-reply, vacation responder): whether they are going out now, what they say, to whom, and until when.

MicrosoftOutlookMail.GetEmail

Retrieve a single email message by its ID.

MicrosoftOutlookMail.GetMessage

Retrieve a single email message by its ID.

MicrosoftOutlookMail.GetSharedMailboxMessage

Retrieve a single email from a shared or delegated mailbox by message ID.

MicrosoftOutlookMail.ListAttachments

List attachment metadata for an email message.

MicrosoftOutlookMail.ListCategories

List the categories (labels or tags) in the user's Outlook mailbox.

MicrosoftOutlookMail.ListEmailAttachments

List attachment metadata for an email message.

MicrosoftOutlookMail.ListEmailCategories

List the categories (labels or tags) in the user's Outlook mailbox.

MicrosoftOutlookMail.ListEmails

List email messages in the user's mailbox.

MicrosoftOutlookMail.ListMailFolders

List mail folders in the user's mailbox.

MicrosoftOutlookMail.ListMailRules

List the Inbox rules (filters) in the user's own Outlook mailbox, in the order they run.

MicrosoftOutlookMail.ListMessages

List email messages in the user's mailbox.

MicrosoftOutlookMail.ListSharedMailboxAttachments

List attachment metadata for an email in a shared or delegated mailbox.

MicrosoftOutlookMail.ListSharedMailboxMailFolders

List mail folders in a shared or delegated mailbox.

MicrosoftOutlookMail.ListSharedMailboxMessages

List email messages in a shared or delegated mailbox.

MicrosoftOutlookMail.MarkEmails

Set the read state or the follow-up flag on a selection of emails in the user's own mailbox.

MicrosoftOutlookMail.MarkMessages

Set the read state or the follow-up flag on a selection of emails in the user's own mailbox.

MicrosoftOutlookMail.MarkSharedMailboxMessages

Set the read state or the follow-up flag on emails in a shared or delegated mailbox.

MicrosoftOutlookMail.MoveEmails

Move a selection of emails into one folder in the user's own mailbox.

MicrosoftOutlookMail.MoveMessages

Move a selection of emails into one folder in the user's own mailbox.

MicrosoftOutlookMail.MoveSharedMailboxMessages

Move a selection of emails into one folder in a shared or delegated mailbox.

MicrosoftOutlookMail.QueryMessages

Search the user's mailbox with an Outlook KQL query.

MicrosoftOutlookMail.QuerySharedMailboxMessages

Search a shared or delegated mailbox with an Outlook KQL query.

MicrosoftOutlookMail.RenameEmailCategory

Rename a category (label or tag) in the user's own Outlook mailbox, keeping it on every

MicrosoftOutlookMail.ReplyToEmail

Reply to an existing email in Outlook.

MicrosoftOutlookMail.ReplyToMessage

Reply to an existing email in Outlook.

MicrosoftOutlookMail.ReplyToSharedMailboxMessage

Reply to an email in a shared or delegated mailbox.

MicrosoftOutlookMail.SaveCategory

Create a category (label or tag) in the user's own Outlook mailbox, or recolor an

MicrosoftOutlookMail.SaveDraft

Save an email draft in Outlook, creating a new one or revising one that exists.

MicrosoftOutlookMail.SaveDraftEmail

Save an email draft in Outlook, creating a new one or revising one that exists.

MicrosoftOutlookMail.SaveEmailCategory

Create a category (label or tag) in the user's own Outlook mailbox, or recolor an

MicrosoftOutlookMail.SaveMailRule

Create an Inbox rule (filter) in the user's own Outlook mailbox that acts on email as it

MicrosoftOutlookMail.SaveSharedMailboxDraft

Save an email draft in a shared or delegated Outlook mailbox.

MicrosoftOutlookMail.SearchEmails

Search emails across the user's entire mailbox.

MicrosoftOutlookMail.SearchEmailsByQuery

Search the user's mailbox with an Outlook KQL query.

MicrosoftOutlookMail.SearchMessages

Search emails across the user's entire mailbox.

MicrosoftOutlookMail.SearchSharedMailboxMessages

Search emails in a shared or delegated mailbox.

MicrosoftOutlookMail.SendDraft

Send an existing draft email in Outlook.

MicrosoftOutlookMail.SendDraftEmail

Send an existing draft email in Outlook.

MicrosoftOutlookMail.SendMessage

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

MicrosoftOutlookMail.SendSharedMailboxDraft

Send an existing draft email from a shared or delegated mailbox.

MicrosoftOutlookMail.SendSharedMailboxMessage

Create and immediately send an email from a shared or delegated mailbox.

MicrosoftOutlookMail.SetAutomaticReplies

Turn the user's out-of-office automatic replies (auto-reply, vacation responder) on, off, or on a schedule, and set what they say.

MicrosoftOutlookMail.SetAutomaticReplySettings

Turn the user's out-of-office automatic replies (auto-reply, vacation responder) on, off, or on a schedule, and set what they say.

MicrosoftOutlookMail.SharedMailboxCategorizeEmails

Put a category on emails in a shared or delegated mailbox, or take one off, keeping

MicrosoftOutlookMail.SharedMailboxCheckCapabilities

Check which provided mailboxes are reachable via shared mailbox APIs.

MicrosoftOutlookMail.SharedMailboxCreateAndSendEmail

Create and immediately send an email from a shared or delegated mailbox.

MicrosoftOutlookMail.SharedMailboxCreateDraftForward

Create a forward of an email in a shared or delegated mailbox, with its attachments, as an unsent draft.

MicrosoftOutlookMail.SharedMailboxCreateDraftReply

Create a reply or reply-all draft in a shared or delegated mailbox without sending it.

MicrosoftOutlookMail.SharedMailboxCreateMailFolder

Create a mail folder in a shared or delegated mailbox, to keep related messages together.

MicrosoftOutlookMail.SharedMailboxForwardEmail

Forward an email in a shared or delegated mailbox, with its attachments, and send it immediately.

MicrosoftOutlookMail.SharedMailboxGetEmail

Retrieve a single email from a shared or delegated mailbox by message ID.

MicrosoftOutlookMail.SharedMailboxListEmailAttachments

List attachment metadata for an email in a shared or delegated mailbox.

MicrosoftOutlookMail.SharedMailboxListEmails

List email messages in a shared or delegated mailbox.

MicrosoftOutlookMail.SharedMailboxListMailFolders

List mail folders in a shared or delegated mailbox.

MicrosoftOutlookMail.SharedMailboxMarkEmails

Set the read state or the follow-up flag on emails in a shared or delegated mailbox.

MicrosoftOutlookMail.SharedMailboxMoveEmails

Move a selection of emails into one folder in a shared or delegated mailbox.

MicrosoftOutlookMail.SharedMailboxReplyToEmail

Reply to an email in a shared or delegated mailbox.

MicrosoftOutlookMail.SharedMailboxSaveDraftEmail

Save an email draft in a shared or delegated Outlook mailbox.

MicrosoftOutlookMail.SharedMailboxSearchEmails

Search emails in a shared or delegated mailbox.

MicrosoftOutlookMail.SharedMailboxSearchEmailsByQuery

Search a shared or delegated mailbox with an Outlook KQL query.

MicrosoftOutlookMail.SharedMailboxSendDraftEmail

Send an existing draft email from a shared or delegated mailbox.

MicrosoftOutlookMail.UpdateCategoryName

Rename a category (label or tag) in the user's own Outlook mailbox, keeping it on every

MicrosoftOutlookMail.UpdateMessageCategory

Put a category on emails in the user's own mailbox, or take one off, keeping every

MicrosoftOutlookMail.UpdateSharedMailboxMessageCategory

Put a category on emails in a shared or delegated mailbox, or take one off, keeping

MicrosoftOutlookMail.WhoAmI

Get the signed-in user's profile and the mailbox this toolkit acts on.

OutlookMail.CreateDraftEmail

Compose a new draft email in Outlook

OutlookMail.ListEmailsByProperty

List emails in the user's mailbox across all folders filtering by a property.

OutlookMail.ListEmailsInFolder

List the user's emails in the specified folder.

OutlookMail.UpdateDraftEmail

Update an existing draft email in Outlook.

Why agent-optimized tools matter

Built for intent, not API schemas

Ask the agent to "find the latest thread with Acme and draft a reply." Arcade picks the right Outlook Mail actions without guessing message IDs, folder IDs, or mailbox context.

Up to 100x fewer tokens

Outlook Mail searches and lists return lightweight message metadata by default and fetch full message content only when asked, so the agent can triage an inbox without loading every message body into the model.

Complete the workflow end to end

Search a conversation, read the relevant message, create or update a draft, request approval, and send the response through one toolkit designed around the complete email task.

Make actions predictable and controlled

Arcade tools return structured results and useful errors across users and runs. Teams can apply scope restrictions, redaction, and approval policies so agents follow the same controls every time.

Securing Microsoft Outlook Mail

The more capabilities agents get, the more useful they are. However, more capabilities bring more risks of undesired effects such as data loss and exfiltration.

This is why Arcade provides you with contextual rules that dictate how and when a tool is allowed to run. Arcade’s contextual access lets you govern tool visibility and behavior at every stage of execution and control who can see a tool, what inputs are allowed, and what comes back.

Learn about Contextual Access Policies

For Microsoft Outlook Mail, you can implement some of these policies:

Access when tools are listed for a user
  • Hide MicrosoftOutlookMail.SharedMailboxCreateAndSendEmail from agents without a shared-mailbox owner role, so they cannot send messages as a team address.
  • Restrict MicrosoftOutlookMail.MoveEmails to agents operating under the mailbox-owner roles your IDP marks as authorized, so bulk moves cannot reorganize another user's mailbox.
  • Deny MicrosoftOutlookMail.CreateAndSendEmail to read-only agents, so agents limited to triage cannot send new messages to customers or vendors.
  • Hide MicrosoftOutlookMail.MarkEmails from agents without a mailbox-triage role, so automated workflows cannot change which messages users still need to review.
  • Limit MicrosoftOutlookMail.SharedMailboxMarkEmails to agents whose roles include delegated-mailbox management, so they cannot alter the read state of messages in a team inbox.
  • Hide MicrosoftOutlookMail.CreateDraftForward from agents without an approved outbound-communications role, so they cannot stage private messages and attachments for forwarding.
  • Restrict MicrosoftOutlookMail.ForwardEmail to agents operating under the roles your IDP marks as authorized for external correspondence, so they cannot immediately send mailbox content to outside recipients.
  • Hide MicrosoftOutlookMail.CategorizeEmails from agents without a mailbox-triage role, so automated workflows cannot relabel messages that users rely on for follow-up.
  • Limit MicrosoftOutlookMail.SaveEmailCategory to administrators who manage your mailbox taxonomy, so agents cannot create misleading categories that resemble retention or compliance labels.
  • Deny MicrosoftOutlookMail.SharedMailboxCategorizeEmails to agents without delegated-mailbox management roles, so they cannot change how a team inbox groups customer or compliance messages.
  • Hide MicrosoftOutlookMail.DeleteEmailCategory from agents without a mailbox-taxonomy administrator role, so they cannot remove labels that support sorting, retention, or incident response.
  • Restrict MicrosoftOutlookMail.RenameEmailCategory to agents operating under the mailbox-owner roles your IDP marks as authorized, so shared category names cannot be changed without administrative control.
  • Hide MicrosoftOutlookMail.SetAutomaticReplies from agents without a mailbox-owner or executive-assistant role, so they cannot publish inaccurate vacation notices to every incoming sender.
  • Limit MicrosoftOutlookMail.SharedMailboxCreateDraftForward to agents assigned to the relevant shared mailbox, so private team correspondence and attachments cannot be staged for forwarding by unrelated workflows.
  • Deny MicrosoftOutlookMail.SharedMailboxForwardEmail to agents without an approved external-communications role, so messages from a team address cannot leave the organization without the right authority.
  • Hide MicrosoftOutlookMail.DeleteMailRule from agents without a mailbox-administrator role, so they cannot remove filters that route, delete, or quarantine incoming messages.
  • Limit MicrosoftOutlookMail.SaveMailRule to agents operating under the roles your IDP marks as inbox-policy administrators, so unapproved automation cannot create rules that redirect or discard mail.
  • Hide MicrosoftOutlookMail.SendMessage from agents without an approved outbound-communications role, so they cannot send new messages to external recipients.
  • Restrict MicrosoftOutlookMail.DeleteCategory to mailbox-taxonomy administrators, so agents cannot remove labels used for retention, incident response, or active-work tracking.
  • Deny MicrosoftOutlookMail.CreateSharedMailboxMailFolder to agents without delegated-mailbox administration roles, so they cannot alter the folder structure used by a team inbox.
Pre-execution before each tool call
  • Require human approval before MicrosoftOutlookMail.SendDraftEmail runs, so an agent cannot turn an unreviewed draft into an outbound message.
  • Require approval from a shared-mailbox owner before MicrosoftOutlookMail.SharedMailboxSendDraftEmail runs, so an agent cannot send from a team address without review.
  • Block MicrosoftOutlookMail.MoveEmails when the destination is a retention, legal-hold, or executive folder, so bulk filing cannot hide messages from required review.
  • Require human approval before MicrosoftOutlookMail.MarkEmails changes messages to read, so an agent cannot make unresolved customer requests appear reviewed.
  • Block MicrosoftOutlookMail.SharedMailboxMarkEmails from marking messages read when they are flagged for compliance review, so required follow-up remains visible in a shared mailbox.
  • Block MicrosoftOutlookMail.CreateDraftForward when any recipient is outside your organization, so private threads and their attachments cannot be prepared for external forwarding.
  • Require human approval before MicrosoftOutlookMail.ForwardEmail runs, so an agent cannot send a mailbox message and its attachments to another person without review.
  • Require human approval before MicrosoftOutlookMail.CategorizeEmails changes categories on a large message selection, so bulk automation cannot hide unresolved requests behind a new label.
  • Block MicrosoftOutlookMail.SaveEmailCategory when the category name imitates a retention, legal-hold, or compliance status, so agents cannot create labels that misrepresent required handling.
  • Refuse MicrosoftOutlookMail.SharedMailboxCategorizeEmails when any targeted message is flagged for compliance review, so required team-inbox follow-up remains visible and consistently labeled.
  • Require human approval before MicrosoftOutlookMail.DeleteEmailCategory removes a category assigned to messages, so an agent cannot erase a classification used to find active work.
  • Block MicrosoftOutlookMail.RenameEmailCategory when the new name would obscure an existing retention, legal, or compliance classification, so agents cannot make required handling difficult to recognize.
  • Require human approval before MicrosoftOutlookMail.SetAutomaticReplies changes an active notice or its audience, so an agent cannot misdirect customers or coworkers with an unreviewed absence message.
  • Block MicrosoftOutlookMail.SharedMailboxCreateDraftForward when the forwarded message includes attachments classified as confidential or restricted, so sensitive files cannot be packaged for another recipient.
  • Refuse MicrosoftOutlookMail.SharedMailboxForwardEmail when any recipient is outside your approved domain list, so a team mailbox cannot send internal correspondence to an unverified address.
  • Require human approval before MicrosoftOutlookMail.DeleteMailRule runs, so an agent cannot remove a rule that protects billing, security, or compliance messages without review.
  • Block MicrosoftOutlookMail.SaveMailRule when a rule forwards mail outside your approved domain list or moves it to a deletion folder, so incoming messages cannot be silently disclosed or discarded.
  • Require human approval before MicrosoftOutlookMail.ReplyToMessage runs, so an agent cannot commit an unreviewed response to a customer or colleague.
  • Block MicrosoftOutlookMail.SaveDraft when the draft includes external recipients or restricted attachments, so sensitive content cannot be staged for unauthorized delivery.
  • Refuse MicrosoftOutlookMail.SendSharedMailboxMessage when a recipient falls outside your approved domain list, so a team address cannot send internal correspondence to an unverified destination.
Post-execution after the tool returns
  • Redact the message body, sender and recipient addresses, phone numbers, and signatures from MicrosoftOutlookMail.GetEmail results before they reach the model.
  • Strip message bodies, attachment names, and personal contact details from MicrosoftOutlookMail.SearchEmails results, returning only the metadata needed to find a thread.
  • Deny MicrosoftOutlookMail.SharedMailboxGetEmail output when the message is marked Confidential or subject to legal hold, so protected shared-mailbox content never reaches the model.
  • Strip category names that contain customer names, confidential project names, or case identifiers from MicrosoftOutlookMail.ListEmailCategories results before the model sees them.
  • Redact the automatic-reply message, recipient scope, and scheduled start and end times from MicrosoftOutlookMail.GetAutomaticReplies results before they reach the model, so absence details and internal contact instructions remain private.
  • Redact mailbox addresses, forwarding destinations, folder names, and rule conditions from MicrosoftOutlookMail.ListMailRules results before they reach the model, so routing logic and private correspondence paths remain hidden.
  • Redact message bodies, attachment names, sender and recipient addresses, and phone numbers from MicrosoftOutlookMail.ListMessages results before they reach the model, leaving only metadata needed to triage mail.
  • Strip message content, signatures, and personal contact details from MicrosoftOutlookMail.QueryMessages results, so an inbox search cannot expose private correspondence beyond the fields needed to identify matching messages.
  • Deny MicrosoftOutlookMail.ListSharedMailboxMessages output for messages marked Confidential or subject to legal hold, so protected team-mailbox content never reaches the model.

How to use Microsoft Outlook Mail with your agent

Pick your MCP client below and follow the setup to connect an agent to Outlook Mail. Each end user authorizes their own mailbox.

Your questions, answered

A Microsoft Outlook Mail MCP server exposes Outlook mailbox capabilities as structured tools that an AI agent can call through the Model Context Protocol. After a user authorizes their Microsoft account, the agent can search and read mail, create drafts, manage messages, and send permitted email.

Arcade provides the MCP endpoint and adds user-level OAuth, agent-optimized actions, approval workflows, redaction, and scope controls. It also covers personal, shared, and delegated mailboxes through one runtime that works across supported clients.

Arcade agents can search and read messages, inspect attachment metadata, create and update drafts, reply to and forward email, send messages, manage folders and categories, apply Inbox rules, mark messages read or for follow-up, move mail, manage automatic replies, and work with shared or delegated mailboxes. They cannot perform actions outside the Outlook Mail capabilities exposed here, such as managing calendars or contacts.

Arcade requests the Microsoft Graph delegated permissions required by the actions you enable. Read-only workflows need mail-reading access, while sending, drafting, moving, categorizing, rule changes, and automatic-reply changes require broader mailbox permissions; shared or delegated mailbox work also depends on the user's access to those mailboxes. Grant the narrowest permissions that support your workflow.

Yes. Each user authorizes their own Microsoft account through OAuth. Outlook Mail actions run under that user's authorization, so the agent can access only the personal, shared, or delegated mailboxes and permissions available to that user.

Yes. Contextual Access policies can require human approval before consequential Outlook actions such as sending, forwarding, moving, deleting categories or rules, changing automatic replies, or writing to a shared mailbox. The call proceeds only once the policy is satisfied.

Arcade proxies Outlook API calls and does not persist your message content as part of normal tool execution. OAuth credentials are brokered and stored encrypted at rest, and the model never receives them.

Any framework or client that can connect to Arcade's MCP gateway or tool APIs works, including LangChain, OpenAI Agents, CrewAI, Claude Desktop, Claude Code, Cursor, Visual Studio Code, Microsoft Copilot Studio, and GitHub Copilot.

Arcade refreshes access while the user's Microsoft authorization remains valid. If access is revoked, rotated, or can no longer be refreshed, calls stop until the user reconnects the account.

Microsoft Graph throttling and Exchange Online mailbox sending and recipient limits still apply to actions performed through Arcade. The applicable limits vary by tenant, mailbox, action, and Microsoft service conditions; Arcade does not remove those limits.

Ready to actually ship your agent?

Connect your agent to Microsoft Outlook Mail with managed OAuth, agent-optimized tools and approval controls for consequential actions.