
Lists inbox rules and returns rule ids, names, conditions, actions, and enabled state. Use this to audit or debug automated mailbox processing; for creating rules use create-inbox-rule.
Generate MCP URLOverview: Lists inbox rules and returns rule ids, names, conditions, actions, and enabled state. Use this to audit or debug automated mailbox processing; for creating rules use create-inbox-rule through Outlook.
Benefits:
Common Use Cases:
With Adopt AI, your agents can tap into Outlook's full email and calendar capabilities. Here are five ways teams use the Outlook MCP integration:
1. Automated Email Triage & Routing
AI agents analyze incoming Outlook emails, categorize them by topic or urgency, and route them to the appropriate team members or folders.
2. Meeting Scheduling & Coordination
AI agents manage Outlook calendars, find available time slots across participants, and automatically schedule meetings with agendas and invitations.
3. Follow-Up & Reminder Automation
Automatically track unanswered Outlook emails and generate follow-up reminders or draft responses based on conversation context and priority.
4. Cross-App Communication Sync
AI agents sync Outlook emails and calendar events with CRMs, project tools, and messaging platforms to keep all communications in one place.
5. Email Analytics & Productivity Reporting
AI agents analyze Outlook email patterns, response times, and meeting loads to generate productivity insights and workload recommendations.

Updates a contact and returns updated contact metadata. Use this to keep address book entries current; for deleting use delete-contact.

Creates a checklist item under a To Do task and returns the created checklist item with id. Use this to break down a task into trackable steps; for listing use list-checklist-items.

Gets contact photo metadata (not the binary image) and returns photo properties. Use this to check if a contact has a photo and what size it is before downloading.

Deletes a message by id and returns the deletion result. Use this for cleanup after processing; for archiving instead, move the message to another folder.

Creates a message rule in the inbox folder and returns the created rule. Use this to automate actions (move/categorize/flag) for messages arriving in inbox without relying on Inbox-only rule tooling.

Lists message rules for a specific mail folder and returns rule ids, names, conditions, and actions. Use this when rules are scoped to a folder other than Inbox.

Lists Microsoft To Do task lists and returns list ids, names, and metadata. Use this to discover listId before creating or listing tasks in a specific list.

Creates a draft message and returns the created message including id. Use this when you want to compose iteratively or attach files before sending; then send using sendMail with the draft content.

Gets the sentitems folder metadata and returns id, displayName, and counts. Use this to resolve the folder id for workflows that need explicit folderId; for listing messages directly use list-sentitems-messages.

Lists message rules for the sentitems folder and returns rule ids, conditions, and actions. Use this to audit folder-scoped rules that affect routing and automation for sentitems.

Lists message rules for the deleteditems folder and returns rule ids, conditions, and actions. Use this to audit folder-scoped rules that affect routing and automation for deleteditems.

Gets the deleteditems folder metadata and returns id, displayName, and counts. Use this to resolve the folder id for workflows that need explicit folderId; for listing messages directly use list-deleteditems-messages.

Lists relevant people for the user and returns person ids, display names, emails, and relevance metadata. Use this to quickly identify frequent collaborators; for full contacts CRUD use contacts tools.

Deletes a checklist item and returns the deletion result. Use this to remove obsolete sub-steps; for toggling completion prefer update-checklist-item.

Downloads the binary user profile photo via /photo/$value and returns it as base64 text. Use this to display the signed-in user avatar or a specific user avatar for shared mailbox/service account workflows.

Lists unread messages in the deleteditems folder using $filter and returns message ids and basic metadata. Use this to implement a queue-like processing loop for folder-specific unread items; mark processed items read afterwards using mark-as-read.

Creates a message rule in the deleteditems folder and returns the created rule. Use this to automate actions (move/categorize/flag) for messages arriving in deleteditems without relying on Inbox-only rule tooling.

Lists unread messages in the deleteditems folder using $filter and returns message ids and basic metadata. Use this to implement a queue-like processing loop for folder-specific unread items; mark processed items read afterwards using mark-as-read.

Searches messages using Microsoft Graph $search and returns matching message ids and selected fields. Use this to find emails by keyword across subject/body; for unread queues use the unread list tool. Requires ConsistencyLevel eventual header for reliable search.

Creates a new mail folder at the mailbox root and returns the created folder. Use this to set up automation/triage folders before moving or copying messages.

Updates an Outlook master category (name/color) and returns updated category metadata. Use this to rename or recolor categories used by automation.

Creates a subfolder under the deleteditems folder and returns the created folder including its id. Use this to create automation-specific folders under common well-known parents (e.g. Inbox/Triage).

Creates a message rule in the sentitems folder and returns the created rule. Use this to automate actions (move/categorize/flag) for messages arriving in sentitems without relying on Inbox-only rule tooling.

Deletes a mail folder and returns deletion result. Use this to remove unused automation folders; ensure messages are moved out first to avoid data loss.

Adds an attachment to a draft message and returns the created attachment metadata. Use this to attach files before sending a draft; for listing attachments use list-attachments.

Creates a child contact folder and returns the created folder. Use this to build nested contact folder structures for classification and routing.

Gets a contact by id and returns contact details including email addresses, phone numbers, and addresses. Use this to retrieve a specific person record for emailing or CRM sync.

Gets incremental changes (delta) for contacts and returns changed contact references plus a deltaLink. Use this to keep an external CRM/contact store in sync with Outlook contacts efficiently.

Lists messages in the inbox folder and returns message ids and selected fields. Use this for folder-scoped processing (e.g. inbox triage, sent audits); for cross-folder search use search-messages.

Gets mailbox settings and returns settings like time zone, locale, automatic replies, and working hours. Use this to tailor scheduling/email behavior to user preferences and time zone.

Lists inbox rules and returns rule ids, names, conditions, actions, and enabled state. Use this to audit or debug automated mailbox processing; for creating rules use create-inbox-rule.

Gets a single attachment by id and returns attachment metadata and content bytes for file attachments when available. Use this to fetch one attachment without listing all attachments first.

Gets contact photo metadata (not the binary image) and returns photo properties. Use this to check if a contact has a photo and what size it is before downloading.

Lists message rules for the archive folder and returns rule ids, conditions, and actions. Use this to audit folder-scoped rules that affect routing and automation for archive.

Updates a linked resource (label/app name/URL) and returns updated metadata. Use this to correct or rename a task reference without recreating it.

Creates a subfolder under the inbox folder and returns the created folder including its id. Use this to create automation-specific folders under common well-known parents (e.g. Inbox/Triage).

Deletes an Outlook master category and returns deletion result. Use this to clean up unused categories; ensure it is not actively used by workflows before deleting.

Lists attachments for a message and returns attachment ids, names, sizes, and content types. Use this to discover attachments before downloading or parsing; for adding to drafts use add-attachment.

Lists message rules for the sentitems folder and returns rule ids, conditions, and actions. Use this to audit folder-scoped rules that affect routing and automation for sentitems.

Lists instances of a recurring event and returns instance event ids and times. Use this to expand a recurring series into concrete occurrences for reporting or rescheduling.

Updates a message (commonly a draft) and returns updated metadata. Use this to adjust subject/body/recipients or flags; for deleting use the delete-message tool.

Gets a calendar group by id and returns group metadata. Use this to validate groupId and inspect group organization before listing calendars within it.

Deletes an Outlook master category and returns deletion result. Use this to clean up unused categories; ensure it is not actively used by workflows before deleting.

Declines an event invitation and returns the RSVP result. Use this to respond no to a meeting invite; for tentative use tentatively-accept.

Searches contacts using OData $search and returns matching contacts. Use this to find contacts by name/email keywords; for listing all contacts use list-contacts. Requires ConsistencyLevel eventual header for $search.

Moves a message to a different folder and returns the moved message. Use this to archive or triage mail; for copying without removal use copy-message.

Creates a message rule in the drafts folder and returns the created rule. Use this to automate actions (move/categorize/flag) for messages arriving in drafts without relying on Inbox-only rule tooling.

Creates a subfolder under the sentitems folder and returns the created folder including its id. Use this to create automation-specific folders under common well-known parents (e.g. Inbox/Triage).

Gets free/busy schedule information and returns availability intervals. Use this to check attendee availability before scheduling; for listing existing events use calendar-view tools.

Lists Outlook master categories and returns category ids, display names, and colors. Use this to tag and organize messages or events using consistent category names.

Creates a Microsoft To Do task list and returns the created list including id. Use this to set up automation task buckets before adding tasks.

Tentatively accepts an event invitation and returns the RSVP result. Use this to respond maybe to a meeting invite; for yes use accept.

Replies to a message and returns the response result. Use this to reply only to the sender; for replying to all recipients use reply-all. Provide a comment for the reply body.

Gets incremental changes (delta) for contacts and returns changed contact references plus a deltaLink. Use this to keep an external CRM/contact store in sync with Outlook contacts efficiently.

Creates a message rule in the inbox folder and returns the created rule. Use this to automate actions (move/categorize/flag) for messages arriving in inbox without relying on Inbox-only rule tooling.

Creates a forward draft for a message and returns the draft message. Use this to edit recipients/body and add attachments before sending the forwarded email.

Lists messages in the sentitems folder and returns message ids and selected fields. Use this for folder-scoped processing (e.g. inbox triage, sent audits); for cross-folder search use search-messages.

Updates an event by id and returns updated metadata. Use this to change time/location/attendees; for deleting an event use delete-event.

Marks a message as read or unread and returns updated message metadata. Use this after processing unread email queues; for deleting messages use the delete-message tool.

Gets an event by id and returns full event details including body, attendees, and online meeting info. Use this before updating or responding to ensure you have the latest state.

Updates a Microsoft To Do list (e.g. rename) and returns updated metadata. Use this to manage list names and organization; for deleting use delete-todo-list.

Get outlook mails in a time range.

Lists message rules for a specific mail folder and returns rule ids, names, conditions, and actions. Use this when rules are scoped to a folder other than Inbox.

Creates a reply-all draft for a message and returns the draft message. Use this to edit the draft before sending to all original recipients.

Creates a message rule in the archive folder and returns the created rule. Use this to automate actions (move/categorize/flag) for messages arriving in archive without relying on Inbox-only rule tooling.

Lists messages and returns message ids, subjects, senders, timestamps, and preview fields. Use this to browse or paginate mailbox contents; for full content use the get-message tool. Supports $top/$skip/$orderby and field selection via fields.

Gets free/busy schedule information and returns availability intervals. Use this to check attendee availability before scheduling; for listing existing events use calendar-view tools.

Lists unread messages in the archive folder using $filter and returns message ids and basic metadata. Use this to implement a queue-like processing loop for folder-specific unread items; mark processed items read afterwards using mark-as-read.

Creates a new task in a Microsoft To Do list and returns the created task with its id. Use this to turn meeting action items or emails into trackable tasks.

Lists child folders under the deleteditems folder and returns child folder ids and names. Use this to traverse mailbox structure under well-known folders for automation setups.

Gets a mail folder by id and returns folder metadata such as displayName and totalItemCount. Use this to validate folderId and inspect counts before listing messages.

Copies a message to a different folder and returns the copied message. Use this to duplicate a message into another folder for reference; for moving use move-message.

Lists events in a specific time range using calendarView and returns event ids and scheduling fields. Use this to fetch meetings between startDateTime and endDateTime for planning, agenda creation, or availability checks.

Creates a forward draft for a message and returns the draft message. Use this to edit recipients/body and add attachments before sending the forwarded email.

Deletes an event by id and returns deletion result. Use this to cancel meetings you own; to RSVP without deleting use accept/decline/tentative tools.

Creates a subfolder under the junkemail folder and returns the created folder including its id. Use this to create automation-specific folders under common well-known parents (e.g. Inbox/Triage).

Creates a calendar group and returns the created group. Use this to organize calendars for automation or categorization of scheduling workflows.

Gets a message rule by id for a specific folder and returns full rule definition. Use this to audit or debug rule behavior for folder-scoped automation.

Creates a Microsoft To Do task list and returns the created list including id. Use this to set up automation task buckets before adding tasks.

Gets incremental changes (delta) for messages within a specific mail folder and returns changed message references plus a deltaLink. Use this to sync a specific folder (like Inbox) efficiently instead of scanning all messages.

Creates a linked resource under a To Do task and returns the created resource. Use this to attach a URL or external record reference to a task; for listing use list-linked-resources.

Lists messages in the archive folder and returns message ids and selected fields. Use this for folder-scoped processing (e.g. inbox triage, sent audits); for cross-folder search use search-messages.

Lists mail folders and returns folder ids, display names, counts, and hierarchy hints. Use this to discover folder ids needed for listing folder messages or moving mail.

Deletes a contact by id and returns deletion result. Use this to remove outdated contacts; for confirming the record first use get-contact.

Lists messages inside a specific folder and returns message ids and selected fields. Use this to process Inbox/Sent/Archive-like folders; for single message content use get-message.

Sends an existing draft message by id and returns the send result. Use this after composing a draft (and optionally adding attachments) when you want to send exactly that draft.

Creates a subfolder under the sentitems folder and returns the created folder including its id. Use this to create automation-specific folders under common well-known parents (e.g. Inbox/Triage).

Updates a message (commonly a draft) and returns updated metadata. Use this to adjust subject/body/recipients or flags; for deleting use the delete-message tool.

Lists child folders under the junkemail folder and returns child folder ids and names. Use this to traverse mailbox structure under well-known folders for automation setups.

Lists calendars in a calendar group and returns calendar ids and names. Use this to find calendars under a groupId for group-scoped scheduling workflows.

Moves a message to a different folder and returns the moved message. Use this to archive or triage mail; for copying without removal use copy-message.

Lists child contact folders and returns ids and names. Use this to traverse contact folder hierarchies when contacts are organized into nested folders.

Gets the deleteditems folder metadata and returns id, displayName, and counts. Use this to resolve the folder id for workflows that need explicit folderId; for listing messages directly use list-deleteditems-messages.

Searches contacts using OData $search and returns matching contacts. Use this to find contacts by name/email keywords; for listing all contacts use list-contacts. Requires ConsistencyLevel eventual header for $search.

Forwards a message to new recipients and returns the response result. Use this to share an existing email thread or attachment; for sending a new email use send-email.

Updates a Microsoft To Do list (e.g. rename) and returns updated metadata. Use this to manage list names and organization; for deleting use delete-todo-list.

Deletes a contact by id and returns deletion result. Use this to remove outdated contacts; for confirming the record first use get-contact.

Deletes a Microsoft To Do list by id and returns deletion result. Use this to clean up automation lists; ensure tasks are no longer needed before deleting.

Lists calendar groups and returns group ids and names. Use this to organize multiple calendars (work/personal/shared) and to discover groupId for group-scoped calendar listing.

Gets a checklist item by id and returns its title, checked state, and metadata. Use this to inspect a single subtask before updating or deleting it.
Do I need my own developer credentials to use Outlook MCP with Adopt AI?
No, you can get started immediately using Adopt AI's built-in Outlook integration. For production use, we recommend configuring your own API credentials for greater control and security.
Can I connect Outlook with other apps through Adopt AI?
Yes! Adopt AI supports multi-app workflows, so your AI agents can seamlessly move data between Outlook and CRMs, spreadsheets, messaging platforms, and more.
Is Adopt AI secure?
Absolutely. Adopt AI is SOC 2 Type 2 certified and ISO/IEC 27001 compliant, and adheres to EU GDPR, CCPA, and HIPAA standards. All data is encrypted in transit and at rest, ensuring the confidentiality, integrity, and availability of your data. Learn more here.
What happens if the Outlook API changes?
Adopt AI maintains and updates all integrations automatically, so your agents always work with the latest API versions, no manual maintenance required.
Do I need coding skills to set up the Outlook integration?
Not at all. Adopt AI's zero-shot API discovery means your agents understand Outlook's schema on first contact. Setup takes minutes with no code required.
How do I set up custom Outlook MCP in Adopt AI?
For a step-by-step guide on creating and configuring your own Outlook API credentials with Adopt AI, see here.