Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Important
This is a preview feature.
- Microsoft releases preview features before an official release so that customers can get early access and provide feedback.
- Preview features have restricted functionality and aren't meant for production use.
- Microsoft might change preview MCP tool names and parameters. Avoid hard-coded dependencies. Microsoft maintains scenario support.
- Preview features are subject to Microsoft supplemental terms of use.
Overview
| Server ID | Tenant-level URL | Display name | Description |
|---|---|---|---|
mcp_CalendarTools |
https://agent365.svc.cloud.microsoft/agents/tenants/{tenantId}/servers/mcp_CalendarTools |
Work IQ Calendar | MCP server for calendar tools. Use this MCP server for calendar operations like creating, updating, retrieving events, managing invites, and checking availability. |
Available tools
mcp_CalendarTools_graph_acceptEvent
Accept the specified event invitation in a user's calendar.
Required parameters:
- eventId: The ID of the event to accept
Optional parameters:
- userId: User ID or
userPrincipalName - comment: Optional text included in response
- sendResponse: Whether to send response to organizer
mcp_CalendarTools_graph_cancelEvent
Cancel an event in a specified user's calendar and notify attendees.
Required parameters:
- eventId: The unique identifier of the event to cancel
Optional parameters:
- userId: User ID or
userPrincipalName - comment: Optional cancellation message
mcp_CalendarTools_graph_createEvent
Create a new calendar event in a specified user's calendar. Supports recurring events and online meetings.
Required parameters:
- subject: Event subject or title (nonempty)
- start: Start timestamp with
dateTimeandtimeZone - end: End timestamp with
dateTimeandtimeZone - attendees_addresses: Array of attendee email addresses
Optional parameters:
- userId: User ID or
userPrincipalName - body: Event body with contentType (Text/HTML) and content
- location: Location with
displayName - attendees_types: Attendee roles (required, optional, resource)
- attendees_names: Attendee display names
- recurrence: Recurrence pattern and range
- isOnlineMeeting: Set to true for online meeting
- onlineMeetingProvider:
teamsForBusiness,skypeForBusiness,skypeForConsumer - allowNewTimeProposals: Allow time proposals (default: true)
- transactionId:
Idempotenceidentifier
mcp_CalendarTools_graph_declineEvent
Decline the specified event invitation in a user's calendar.
Required parameters:
- eventId: The ID of the event to decline
Optional parameters:
userId: User ID or
userPrincipalNamecomment: Optional text in response
sendResponse: Whether to send response
mcp_CalendarTools_graph_deleteEvent
Delete an event from a specified user's calendar.
Required parameters:
- eventId: The unique identifier of the event to delete
Optional parameters:
- userId: User ID or
userPrincipalName
mcp_CalendarTools_graph_findMeetingTimes
Suggest meeting times and locations based on organizer and attendee availability.
Required parameters:
- meetingDuration: Meeting duration (for example, 'PT1H')
Optional parameters:
- userId: Organizer ID or
userPrincipalName - attendees_addresses: Attendee email addresses
- attendees_types: Attendee types
- attendees_names: Attendee display names
- timeConstraint: Time availability with
timeslotsandactivityDomain - locationConstraint: Location options
- maxCandidates: Maximum suggestions
- isOrganizerOptional: Organizer optional flag
- returnSuggestionReasons: Include reasons
- minimumAttendeePercentage: Minimum attendance threshold
mcp_CalendarTools_graph_getEvent
Get a single calendar event from a specified user's calendar.
Required parameters:
- eventId: The unique identifier of the event
Optional parameters:
- userId: User ID or
userPrincipalName - select: OData
\$selectquery parameter - expand: OData
\$expandfor navigation properties
mcp_CalendarTools_graph_getSchedule
Get the free/busy schedule for a user, distribution list, or resource.
Required parameters:
- schedules: SMTP addresses of users or resources
- startTime: Start time with
dateTimeandtimeZone - endTime: End time with
dateTimeandtimeZone
Optional parameters:
- userId: User ID or
userPrincipalName - availabilityViewInterval: Time slot length in minutes
mcp_CalendarTools_graph_listCalendarView
Retrieve calendar occurrences within a specified time range for a user.
Required parameters:
- startDateTime: Start of time range (ISO 8601)
- endDateTime: End of time range (ISO 8601)
Optional parameters:
- userId: User ID or
userPrincipalName - top: Max number of events
- orderby: Order by clause
mcp_CalendarTools_graph_listEvents
Retrieve a list of events from a specified user's calendar.
Optional parameters:
- userId: User ID or
userPrincipalName - startDateTime: Start of time range (ISO 8601)
- endDateTime: End of time range (ISO 8601)
- top: Maximum number of events
- filter: OData filter query
- orderby: OData order by query
mcp_CalendarTools_graph_updateEvent
Update an existing calendar event in a specified user's calendar.
Required parameters:
- eventId: The unique identifier of the event
Optional parameters:
- userId: User ID or
userPrincipalName - subject: Updated subject
- body: Updated body content
- start: Updated start time
- end: Updated end time
- location: Updated location
- attendees_addresses: Updated attendee emails
- attendees_types: Updated attendee types
- attendees_names: Updated attendee names
- isCancelled: Set to true to cancel
- recurrence: Updated recurrence pattern
Key features
Event management
- Create, read, update, and delete events
- Accept, decline, and cancel invitations
- Support for recurring events
- Integration with online meetings (Teams, Skype)
Availability and scheduling
- Get free/busy schedules
- Find meeting times with availability checking
- Calendar view with time range filtering
- Attendee availability analysis
Attendee management
- Manage required, optional, and resource attendees
- Support for time proposals
- Track responses
- Support for distribution lists
Recurrence patterns
- Daily, weekly, monthly, and yearly patterns
- Absolute and relative recurrence
- End date or occurrence count
- Day of week and month specifications
Online meetings
- Integration with Teams for Business
- Support for Skype for Business
- Support for Skype (for personal use)
- Automatic meeting link generation
Notes
- All timestamps use UTC/ISO 8601 format with timezone
- Calendar MCP relies on
UserprofileMCPto find users in the organization - Email addresses must be valid format
- Attendee arrays (addresses, types, names) must be in the same order
- Online meetings require
isOnlineMeeting=trueandonlineMeetingProvider - Recurrence requires both pattern and range objects
- Time zones should be consistent across start and end times
TransactionIdenablesidempotentevent creation