Microsoft Outlook

Microsoft Outlook MCP Connector for Claude

A+

Read, reply, and send Outlook mail plus run your calendar — a full mailbox and scheduling workflow for any AI agent.

9 tools Official Updated Oct 1, 2026 Official Vinkius Partner

Connect your Microsoft Outlook mailbox and calendar to any AI agent through the Microsoft Graph API. Your agent becomes a competent mail and scheduling associate: it can scan your inbox, triage messages, draft and send mail, and manage meetings end to end.

What you can do

  • Mailbox Triage — List, search (KQL filters like from: / subject: / unread), and read full messages with attachments metadata
  • Send & Reply — Compose new mail, reply or reply-all with full conversation context
  • Calendar Control — List events in any time window, create meetings with attendees, reschedule or cancel them
  • Housekeeping — Archive or delete messages and events explicitly, one at a time

How it works

  1. Register an Entra application with Microsoft Graph delegated permissions (Mail.Read, Mail.Send, Mail.ReadWrite, Calendar.Read, Calendar.ReadWrite)
  2. Subscribe to this server and connect your Outlook account through OAuth 2.0
  3. Ask your agent to read, write, and schedule — all inside one mailbox

Who is this for?

  • Busy Professionals — delegate inbox triage, follow-up drafting, and meeting management to an agent that never misses a thread
  • Assistants & Coordinators — run recurring calendar audits and scheduling checks across a shared mailbox workflow
email-managementcalendar-managementoutlookmicrosoft-365meeting-scheduling

9 tools expose this connector's capabilities to your AI agent.

create_calendar_event

Provide the subject and ISO 8601 start and end times in UTC. Add optional attendees as comma-separated email addresses — they receive an invitation. The created event ID is returned so it can be updated or deleted later. Schedule a new calendar event

delete_calendar_event

For rescheduling or polite cancellation prefer update_calendar_event with isCanceled. Confirm the event ID with the user before deleting. Delete a calendar event

delete_message

Use when the user explicitly asks to remove a message. This is not recoverable from the trash by the API — confirm the specific message ID with the user before calling. Delete an Outlook message permanently

list_calendar_events

Defaults to the next 7 days when no times are given. Provide ISO 8601 datetimes for timeMin and timeMax to target a specific range. Use top to limit how many events are returned in one page. List calendar events in a time window

list_messages

Use when the user asks to check, scan, or summarize their inbox or another folder. Provide a KQL expression in the query parameter to filter (for example "from:alice" or "subject:invoice AND unread"). Page results with top and skip — a folder never returns everything in one call. List recent messages from an Outlook mail folder

read_message

Use when the user wants the full text of a message found via list_messages or search. The message ID comes from list_messages results. Add attachments or toRecipients to the select parameter to include those fields. Read the full content of a specific Outlook message

reply_message

Use when the user wants to answer a message from list_messages or read_message. Set toAll to true for reply-all; otherwise only the original sender is replied to. Provide the message ID of the message being answered. Reply to an existing Outlook message

send_message

Use when the user asks to draft and send a message. Multiple recipients are comma-separated. Set isHtml to true only when the body contains HTML markup; plain text is the default. Confirm with the user before sending anything with cc recipients. Send a new email message from the user's Outlook account

update_calendar_event

Use to reschedule, rename, or cancel an event. Canceling by setting isCanceled to true notifies attendees. Provide the event ID from list_calendar_events. Modify an existing calendar event

See how to talk to your AI agent using Microsoft Outlook.

Check my inbox for unread messages from the marketing team and summarize them.

Found 4 unread messages from marketing@yoursite.com. 1) The launch page is live as of 09:00, 2) The Q4 budget doc was updated — new cap on paid ads, 3) A meeting invite conflict on Friday was moved to Monday, 4) Two testimonials are ready for the website. Want me to reply to any of them?

Find the 'Q3 forecast' email, open it, and schedule a review with finance@company.com for next Tuesday at 10am UTC.

I opened the forecast thread (3 emails, latest from Dana, 12 Sep). Created the event 'Q3 Forecast Review' on your calendar for next Tuesday 10:00–11:00 UTC with finance@company.com invited. The invite is on its way.

Show me today's meetings and cancel the ones after 3pm.

You have 5 meetings today. Cancelled: 'Ops sync' (15:30) and 'Vendor call' (16:00) — attendees notified via isCanceled. Keeping: standup, design review, 1:1 with Priya.

The app registration needs delegated permissions: Mail.Read, Mail.Send, Mail.ReadWrite, Calendar.Read and Calendar.ReadWrite, plus openid/profile/offline_access. You consent once at the OAuth step; the agent then acts strictly on your own mailbox and calendar.

Related Connectors