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

Microsoft Outlook Calendar MCP Tools for AI Agents

Let an agent check availability, search events, inspect calendars, and create meetings in Outlook Calendar.

Available Tools

30 tools available in this integration

MicrosoftOutlookCalendar.CancelEvent

Cancel a meeting you organize and email a cancellation to every invitee.

MicrosoftOutlookCalendar.CreateCalendar

Create a new calendar in your mailbox, a container you can later add events to; to put a

MicrosoftOutlookCalendar.CreateEvent

Create an event in the user's default calendar, or in another calendar they can edit

MicrosoftOutlookCalendar.DeleteCalendar

Delete one of your own calendars and every event on it.

MicrosoftOutlookCalendar.FindMeetingTimes

Propose times when a group could meet.

MicrosoftOutlookCalendar.ForwardEvent

Send a meeting invitation to someone who is not invited yet; they join the attendee list and the organizer is told.

MicrosoftOutlookCalendar.GetCalendar

Read one calendar and what you can do on it: its owner, and whether you can edit its

MicrosoftOutlookCalendar.GetEvent

Get one event from any of the user's calendars, with the calendar it is on.

MicrosoftOutlookCalendar.GetSchedule

Get free/busy and calendar items in a time window for one or more people.

MicrosoftOutlookCalendar.ListCalendarAccess

List who can see one of your calendars and at what level, including the level everyone in

MicrosoftOutlookCalendar.ListCalendars

List all calendars the user has access to.

MicrosoftOutlookCalendar.ListEventAttachments

List attachment metadata for a calendar event.

MicrosoftOutlookCalendar.ListEventChanges

Get the events created, changed, cancelled or deleted on one Outlook calendar by when they

MicrosoftOutlookCalendar.ListEventInstances

List the dates one recurring series falls on between two times.

MicrosoftOutlookCalendar.ListEvents

List everything on the user's calendars between two times.

MicrosoftOutlookCalendar.ListEventsInTimeRange

List everything on the user's calendars between two times.

MicrosoftOutlookCalendar.ListMeetingTimes

Propose times when a group could meet.

MicrosoftOutlookCalendar.ListWorkLocations

List where you work each day in a window, oldest day first, from your Outlook work hours

MicrosoftOutlookCalendar.RemoveCalendarFromList

Remove a calendar someone else owns from your calendar list.

MicrosoftOutlookCalendar.RemoveCalendarFromMyList

Remove a calendar someone else owns from your calendar list.

MicrosoftOutlookCalendar.RemoveEventFromCalendar

Take an event off your calendar without emailing anyone.

MicrosoftOutlookCalendar.RemoveEventFromMyCalendar

Take an event off your calendar without emailing anyone.

MicrosoftOutlookCalendar.RespondToEvent

Accept, decline or tentatively accept a meeting someone else invited you to, and tell the organizer.

MicrosoftOutlookCalendar.RevokeCalendarAccess

Remove a person's access to one of your calendars; removing someone from your calendar means

MicrosoftOutlookCalendar.SearchEvents

Find calendar events by what is true about them: words in them, who attends or

MicrosoftOutlookCalendar.SetWorkLocation

Set your Outlook work location to office or remote for one day or a range of days, or clear

MicrosoftOutlookCalendar.ShareCalendar

Share one of your calendars with a person.

MicrosoftOutlookCalendar.UpdateCalendar

Rename or recolor one of your calendars.

MicrosoftOutlookCalendar.UpdateEvent

Change one event in the user's calendar, in place.

MicrosoftOutlookCalendar.WhoAmI

Get information about the current user and their Outlook Calendar environment.

Why agent-optimized tools matter

Built for intent, not API schemas

Ask the agent to "find a time next week when the product team is free and schedule the review." Arcade picks the right Outlook Calendar actions without guessing calendar IDs or event IDs.

Up to 100x fewer tokens

Outlook Calendar lists return event and calendar details without loading separate attachment data, so the agent can scan a time range and fetch attachment metadata only when it needs to inspect an event.

Complete the workflow end to end

Check availability, create the event, invite attendees, update the details, and cancel it when necessary through one toolkit designed around the complete calendar 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 Calendar

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 Calendar, you can implement some of these policies:

Access when tools are listed for a user
  • Hide MicrosoftOutlookCalendar.CancelEvent from agents unless the roles your IDP marks as calendar owners are active, so an agent cannot cancel meetings organized by someone else.
  • Restrict MicrosoftOutlookCalendar.RemoveEventFromMyCalendar to agents acting for the calendar owner, so a shared-calendar workflow cannot silently remove another user's event from their calendar.
  • Deny MicrosoftOutlookCalendar.ForwardEvent to agents outside your meeting-coordinator role, so an agent cannot add external attendees to internal meetings without the right authority.
  • Hide MicrosoftOutlookCalendar.DeleteCalendar from agents unless the roles your IDP marks as calendar administrators are active, so an agent cannot erase a calendar and every event on it.
  • Restrict MicrosoftOutlookCalendar.RevokeCalendarAccess to agents acting for calendar owners, so an agent cannot remove a colleague's access to a shared calendar.
  • Deny MicrosoftOutlookCalendar.ShareCalendar to agents outside your calendar-administrator role, so an agent cannot disclose a private calendar to an unapproved person.
Pre-execution before each tool call
  • Require human approval before MicrosoftOutlookCalendar.CreateEvent runs when the event includes external attendees, so an agent cannot send an unsolicited invitation outside your organization.
  • Block MicrosoftOutlookCalendar.UpdateEvent when it changes the time, location, or attendee list of an event marked confidential, so an agent cannot alter a sensitive meeting without review.
  • Require human approval before MicrosoftOutlookCalendar.RespondToEvent sends an acceptance or decline for meetings with external organizers, so an agent cannot commit the user to or withdraw them from a consequential meeting.
  • Require human approval before MicrosoftOutlookCalendar.DeleteCalendar runs, so an agent cannot permanently remove a calendar and its events without review.
  • Block MicrosoftOutlookCalendar.RevokeCalendarAccess when the target is a calendar owner or administrator, so an agent cannot sever required access to a shared calendar.
  • Require human approval before MicrosoftOutlookCalendar.SetWorkLocation changes more than one day, so an agent cannot mark a user's extended work location incorrectly.
Post-execution after the tool returns
  • Redact MicrosoftOutlookCalendar.GetEvent results' attendee email addresses, private notes, and meeting-body content before they reach the model, so calendar lookups do not expose personal or confidential details.
  • Strip meeting subjects, locations, and attendee names from MicrosoftOutlookCalendar.GetSchedule results, leaving only availability windows so the model cannot infer private appointments.
  • Deny MicrosoftOutlookCalendar.ListEventAttachments results for events marked confidential, so an agent cannot discover the names of files attached to sensitive meetings.
  • Redact email addresses and permission details from MicrosoftOutlookCalendar.ListCalendarAccess results before they reach the model, so an agent cannot collect the identities and access levels of everyone who can view a calendar.
  • Strip event subjects, locations, attendee names, and body content from MicrosoftOutlookCalendar.ListEvents results, leaving only dates and availability windows for scheduling.
  • Redact home-office and other location details from MicrosoftOutlookCalendar.ListWorkLocations results before the model sees them, so work-location data is not exposed beyond the dates and approved location labels your workflow needs.

How to use Microsoft Outlook Calendar with your agent

Connect your MCP client and follow the setup from authorization through your first calendar request. Then give your agent prompts for finding open times, checking events, or creating a meeting.

Your questions, answered

A Microsoft Outlook Calendar MCP server exposes Outlook Calendar 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 read schedules, find meeting times, create events, and manage calendar access within the granted permissions.

Arcade provides the MCP endpoint and runtime for Microsoft Outlook Calendar rather than requiring you to build and operate the connection yourself. It adds per-user OAuth, approval workflows, redaction, and scope controls so agents can use calendar actions consistently across clients and users.

Arcade agents can list calendars and events, search events, read event details and attachment metadata, inspect changes and recurring instances, check free/busy schedules, propose meeting times, create and update events, forward invitations, respond to meetings, cancel meetings, manage calendars and sharing, and set work locations. Destructive actions include cancelling meetings, deleting calendars, removing events, changing responses, and changing calendar access.

Arcade requests the Microsoft Graph delegated calendar permissions required by the actions you enable. Read-only workflows generally use permissions such as Calendars.Read, while creating or changing events, calendars, sharing, and work locations can require Calendars.ReadWrite or the corresponding shared-calendar permissions; grant the narrowest set that supports your workflow.

Yes. Each user authorizes their own Microsoft account through OAuth. Calendar actions run under that user's authorization grant, so the agent can access only the calendars and permissions that user has approved.

Yes. Contextual Access policies can require human approval before consequential calendar actions such as cancelling a meeting, deleting a calendar, removing an event, responding to an invitation, sharing a calendar, or revoking access. The call proceeds only after the policy's conditions have been satisfied.

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

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, calendar actions stop until the user reconnects their account.

Microsoft Graph and Outlook service throttling and account-level limits still apply to actions performed through Arcade. Design agents to handle throttling responses and retry guidance, especially when scanning broad time ranges, calendars, or many attendees; no separate toolkit-specific quota is stated here.

Ready to actually ship your agent?

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