Outlook Calendar MCP Server
for AI Agents
Connect your AI agent to StackOne's Outlook Calendar MCP server and give it 77 MCP tools out of the box. Auth, tool execution, and security all managed.
Coverage
77 Agent Actions
Create, read, update, and delete across Outlook Calendar — and extend your agent's capabilities with custom actions.
Authentication
Agent Tool Authentication
Per-user OAuth in one call. Your Outlook Calendar MCP server gets session-scoped tokens with zero credentials stored on your infra.
Agent Auth →Security
Agent Protection
Every Outlook Calendar tool response scanned for prompt injection in milliseconds — 88.7% accuracy, all running on CPU.
Prompt Injection Defense →Performance
Max Agent Context. Min Cost.
Free up to 96% of your agent's context window to enhance reasoning and reduce cost, on every Outlook Calendar call.
Tools Discovery →What is the Outlook Calendar MCP Server?
A Outlook Calendar MCP server lets AI agents read and write Outlook Calendar data through the Model Context Protocol — Anthropic's open standard for connecting LLMs to external tools. StackOne's Outlook Calendar MCP server ships with 77 pre-built actions, fully extensible via the Connector Builder — plus managed authentication, prompt injection defense, observability, and agent execution runtime. Connect it from MCP clients like Claude Desktop, Claude Code, Cursor, Goose, and VS Code, or from agent frameworks like OpenAI Agents SDK, LangChain, and Vercel AI SDK.
All Outlook Calendar MCP Tools
Every action from Outlook Calendar's API, ready for your agent. Create, read, update, and delete — scoped to exactly what you need.
User Calendars
- List User Calendars
Retrieve all calendars for a specific user. Supports filtering, selecting specific properties, and expanding related entities.
- Get User Calendar
Retrieve the properties and relationships of a specific calendar for a user. Supports OData query parameters.
- Update User Calendar
Update the properties of a calendar for a specific user
- Delete User Calendar
Delete a calendar for a specific user
My Calendars
- Get My Calendar
Retrieve the properties and relationships of a specific calendar for the authenticated user. Supports OData query parameters.
- Update My Calendar
Update the properties of a calendar for the authenticated user
- Delete My Calendar
Delete a calendar for the authenticated user
Event In My Calendars
- Create Event In My Calendar
Create a new event in a specific calendar for the authenticated user
- Update Event In My Calendar
Update an existing event in a specific calendar for the authenticated user. All properties are optional and only provided values will be updated.
Event In User Calendars
- Create Event In User Calendar
Create a new event in a specific calendar for a specific user
- Update Event In User Calendar
Update an existing event in a specific calendar for a specific user. All properties are optional and only provided values will be updated.
Event From My Calendars
- Get Event From My Calendar
Retrieve a specific event from a specific calendar for the authenticated user
- Delete Event From My Calendar
Delete an event from a specific calendar for the authenticated user. This moves the event to deleted items.
Event From User Calendars
- Get Event From User Calendar
Retrieve a specific event from a specific calendar for a specific user
- Delete Event From User Calendar
Delete an event from a specific calendar for a specific user. This moves the event to deleted items.
My Calendar Event Attachments
- Create My Calendar Event Attachment
Add an attachment to an event in the authenticated user's specific calendar. Supports file attachments, item attachments, and reference attachments.
- List My Calendar Event Attachments
Retrieve the list of attachment objects attached to an event in the authenticated user's specific calendar.
User Calendar Event Attachments
- Create User Calendar Event Attachment
Add an attachment to an event in a specific user's specific calendar. Supports file attachments, item attachments, and reference attachments.
- List User Calendar Event Attachments
Retrieve the list of attachment objects attached to an event in a specific user's specific calendar.
My Event Attachments
- Create My Event Attachment
Add an attachment to an event in the authenticated user's calendars. Supports file attachments, item attachments, and reference attachments.
- List My Event Attachments
Retrieve the list of attachment objects attached to an event in the authenticated user's calendars.
User Event Attachments
- Create User Event Attachment
Add an attachment to an event in a specific user's calendars. Supports file attachments, item attachments, and reference attachments.
- List User Event Attachments
Retrieve the list of attachment objects attached to an event in a specific user's calendars.
My Calendar Groups
- Create My Calendar Group
Create a new calendar group for the authenticated user.
- List My Calendar Groups
Retrieve a list of calendar groups for the authenticated user.
- Get My Calendar Group
Retrieve the properties and relationships of a calendar group for the authenticated user.
- Update My Calendar Group
Update the properties of a calendar group for the authenticated user.
- Delete My Calendar Group
Delete a calendar group for the authenticated user.
User Calendar Groups
- Create User Calendar Group
Create a new calendar group for a specific user.
- List User Calendar Groups
Retrieve a list of calendar groups for a specific user.
- Get User Calendar Group
Retrieve the properties and relationships of a calendar group for a specific user.
- Update User Calendar Group
Update the properties of a calendar group for a specific user.
- Delete User Calendar Group
Delete a calendar group for a specific user.
User Calendar Permissions
- Create User Calendar Permission
Create a calendar permission to specify the identity and role of the user with whom the calendar is being shared or delegated.
- List User Calendar Permissions
Retrieve a list of calendar permissions for a user's primary calendar.
- Get User Calendar Permission
Retrieve the properties and relationships of a specific calendar permission for a user's primary calendar.
- Update User Calendar Permission
Update the role of a calendar permission to change the permission level for a user with whom the calendar is shared or delegated.
- Delete User Calendar Permission
Delete a specific calendar permission for a user's primary calendar.
Users
- Create User
Create a new user account in the organization with the specified properties
- List Users
Retrieve a list of user objects. By default, returns a limited set of properties (businessPhones, displayName, givenName, id, jobTitle, mail, mobilePhone, officeLocation, preferredLanguage, surname, userPrincipalName). Use $select to specify alternative properties.
- Get User
Retrieve the properties and relationships of a specific user by their ID or userPrincipalName. By default, only a limited set of properties are returned (businessPhones, displayName, givenName, id, jobTitle, mail, mobilePhone, officeLocation, preferredLanguage, surname, userPrincipalName). Use the select parameter to return an alternative property set.
- Delete User
Delete a specific user from the organization by their ID or userPrincipalName
Other (35)
- Create Calendar
Create a new calendar for the authenticated user in the default calendar group
- Create Calendar For User
Create a new calendar for a specific user in the default calendar group
- Create Event In My Default Calendar
Create a new event in the default calendar for the authenticated user
- Create Event In User Default Calendar
Create a new event in the default calendar for a specific user
- Create Calendar In Group
Create a new calendar in a calendar group for the authenticated user.
- Get Default Calendar
Retrieve the properties and relationships of the default calendar for the authenticated user
- Get My Calendar View
Retrieve the events in a calendar view for the authenticated user's calendar within a specified time range
- Get User Calendar View
Retrieve the events in a calendar view for a specific user's calendar within a specified time range
- List My Events
Retrieve events from all calendars for the authenticated user. Supports OData query parameters. Note - Cannot use $filter on recurrence property.
- List User Events
Retrieve events from all calendars for a specific user. Supports OData query parameters. Note - Cannot use $filter on recurrence property.
- List My Default Calendar Events
Retrieve events from the authenticated user's default calendar. Supports OData query parameters.
- List User Default Calendar Events
Retrieve events from a specific user's default calendar. Supports OData query parameters.
- List My Calendar Events
Retrieve events from a specific calendar for the authenticated user. Supports OData query parameters.
- List User Calendar Events
Retrieve events from a specific calendar for a specific user. Supports OData query parameters.
- Get Event From My Default Calendar
Retrieve a specific event from the authenticated user's default calendar
- Get Event From User Default Calendar
Retrieve a specific event from a user's default calendar
- List Calendar Group Calendars
Retrieve a list of calendars in a calendar group for the authenticated user.
- Permanently Delete User Event
Permanently delete an event for a specific user, bypassing deleted items. This action cannot be undone and the event cannot be recovered.
- Forward My Calendar Event
Forward an event from a specific calendar to a list of recipients with an optional comment.
- Forward User Calendar Event
Forward an event from a specific user's calendar to a list of recipients with an optional comment.
- Forward My Event
Forward an event from the authenticated user's calendars to a list of recipients with an optional comment.
- Forward User Event
Forward an event from a specific user's calendars to a list of recipients with an optional comment.
- Cancel My Event
Cancel an event in the authenticated user's calendars and send a cancellation message to all attendees.
- Cancel User Event
Cancel an event in a specific user's calendars and send a cancellation message to all attendees.
- Cancel My Calendar Event
Cancel an event in a specific calendar for the authenticated user and send a cancellation message to all attendees.
- Cancel User Calendar Event
Cancel an event in a specific calendar for a specific user and send a cancellation message to all attendees.
- Accept My Event
Accept an event in the authenticated user's calendars with an optional comment and response notification.
- Accept User Event
Accept an event in a specific user's calendars with an optional comment and response notification.
- Accept My Calendar Event
Accept an event in a specific calendar for the authenticated user with an optional comment and response notification.
- Accept User Calendar Event
Accept an event in a specific calendar for a specific user with an optional comment and response notification.
- Decline My Event
Decline an event in the authenticated user's calendars with optional comment, proposed new time, and response notification.
- Decline User Event
Decline an event in a specific user's calendars with optional comment, proposed new time, and response notification.
- Decline My Calendar Event
Decline an event in a specific calendar for the authenticated user with optional comment, proposed new time, and response notification.
- Decline User Calendar Event
Decline an event in a specific calendar for a specific user with optional comment, proposed new time, and response notification.
- Change Password
Change the password for the authenticated user. The user must provide their current password and the new password.
Set Up Your Outlook Calendar MCP Server in Minutes
One endpoint. Any framework. Your agent is talking to Outlook Calendar in under 10 lines of code.
Agent Frameworks
{
"mcpServers": {
"stackone": {
"command": "npx",
"args": [
"-y",
"mcp-remote@latest",
"https://api.stackone.com/mcp?x-account-id=<account_id>",
"--header",
"Authorization: Basic <YOUR_BASE64_TOKEN>"
]
}
}
}Platform Resources
MCP Code Mode: Keeping Tool Responses Out of Agent Context
Anthropic's code_execution processes data already in context. Custom MCP code mode keeps raw tool responses in a sandbox. 14K tokens vs 500.
11 min
Comparing BM25, TF-IDF, and Hybrid Search for MCP Tool Discovery
Benchmarking BM25, TF-IDF, and hybrid search for MCP tool discovery across 916 tools. The 80/20 TF-IDF/BM25 hybrid hits 21% Top-1 accuracy in under 1ms.
10 min
Indirect Prompt Injection Defense for MCP Tools: A Technical Guide
MCP tools that read emails, CRM records, and tickets are indirect prompt injection vectors. Here's how we built a two-tier defense that scans tool results in ~11ms.
12 min
MCP vs A2A: Architecture, Security, and When to Use Each
MCP vs A2A: what each protocol standardizes, how they differ, their shared security risks including indirect prompt injection, and when to use one, both, or a hybrid architecture.
12 min
MCP vs API: What 200+ Connector Builds Taught Us
MCP wraps APIs, it doesn't replace them. After building 200+ connectors that serve both, here's when each approach wins.
14 min read
Outlook Calendar MCP Server FAQ
Does StackOne have a Outlook Calendar MCP server?
Outlook Calendar MCP server vs direct API integration — what's the difference?
How does Outlook Calendar authentication work for AI agents?
origin_owner_id.Are Outlook Calendar MCP tools vulnerable to prompt injection?
What is the context bloat of a Outlook Calendar agent and how do I avoid it?
Can I limit which actions my Outlook Calendar agent can access?
Can I create custom agent actions for my Outlook Calendar MCP server?
When should I NOT use a Outlook Calendar MCP server?
What AI frameworks and AI clients does the StackOne Outlook Calendar MCP server support?
Put your AI agents to work
All the tools you need to build and scale AI agent integrations, with best-in-class connectivity, execution, and security.