Outlook MCP Server
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Outlook MCP Server
A Model Context Protocol (MCP) server that gives AI assistants (Claude, Cursor, etc.) full access to your Microsoft Outlook — emails, calendar, and contacts — via the Microsoft Graph API.
Features
Category | Operations |
List, read, search, send, reply, reply-all, forward, create draft, send draft, delete, move, mark read/unread, flag | |
Mail Folders | List folders, create folder |
Calendar | List calendars, list events (with date range), get event, search, create, update, delete, accept/decline/tentative |
Contacts | List, get, search, create, update, delete, list folders |
Auth | Device code flow with persistent token cache, sign out |
Related MCP server: Microsoft MCP
Prerequisites
Node.js 18+ (tested with v22)
A Microsoft 365 or Outlook account
An Azure AD (Entra ID) app registration (free, takes ~5 minutes)
Step 1: Register an Azure AD Application
Go to the Azure Portal → Microsoft Entra ID → App registrations → New registration
Fill in:
Name:
Outlook MCP(or any name)Supported account types: Choose based on your setup:
Personal Microsoft accounts only → for @outlook.com / @hotmail.com
Accounts in any organizational directory and personal accounts → for work + personal
Redirect URI: Leave blank (we use device code flow)
Click Register. Copy the Application (client) ID — this is your
OUTLOOK_CLIENT_ID.Copy the Directory (tenant) ID if you're using a work/school account — this is your
OUTLOOK_TENANT_ID. For personal accounts useconsumers.Go to API permissions → Add a permission → Microsoft Graph → Delegated permissions. Add:
Mail.ReadWriteMail.SendCalendars.ReadWriteContacts.ReadWriteMailboxSettings.ReadWriteUser.Readoffline_access
Click Grant admin consent (if you're an admin) or ask your admin to do so.
Go to Authentication → Enable Allow public client flows → Yes → Save.
Step 2: Build the Server
cd outlook-mcp
npm install
npm run buildStep 3: Configure in Cursor (or Claude Desktop)
Cursor
Add to your Cursor MCP config (~/.cursor/mcp.json or via Settings → MCP):
{
"mcpServers": {
"outlook": {
"command": "node",
"args": ["/absolute/path/to/outlook-mcp/dist/index.js"],
"env": {
"OUTLOOK_CLIENT_ID": "YOUR_CLIENT_ID_HERE",
"OUTLOOK_TENANT_ID": "common"
}
}
}
}Use
"common"for multi-tenant,"consumers"for personal accounts (@outlook.com / @hotmail.com), or your specific tenant ID for work/school accounts.
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"outlook": {
"command": "node",
"args": ["/absolute/path/to/outlook-mcp/dist/index.js"],
"env": {
"OUTLOOK_CLIENT_ID": "YOUR_CLIENT_ID_HERE",
"OUTLOOK_TENANT_ID": "common"
}
}
}
}Step 4: First-Time Authentication
The first time a tool is called, the server uses Device Code Flow:
A message will appear in the MCP client (or stderr) like:
To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code ABCD1234 to authenticate.Open that URL in your browser, enter the code, and sign in with your Microsoft account.
The token is cached at
~/.outlook-mcp-token-cache.json(permissions 600) and refreshed automatically.You won't need to authenticate again until the refresh token expires (~90 days of inactivity).
Available Tools
Auth
Tool | Description |
| Get your account name, email, and mailbox settings |
| Clear cached tokens |
Tool | Key Parameters |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| — |
|
|
Calendar
Tool | Key Parameters |
| — |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Contacts
Tool | Key Parameters |
|
|
|
|
|
|
|
|
|
|
|
|
| — |
Development
# Run directly with tsx (no build step)
OUTLOOK_CLIENT_ID=xxx npm run dev
# Rebuild after changes
npm run buildTroubleshooting
"OUTLOOK_CLIENT_ID environment variable is required" → Make sure you've set the env var in your MCP config.
"AADSTS50011: The redirect URI ... was not found" → Enable Allow public client flows in Azure Portal → App Registration → Authentication.
"Insufficient privileges"
→ Add the missing Graph API permissions and re-grant admin consent. Then run outlook_sign_out and re-authenticate.
Token keeps expiring
→ Make sure offline_access is in your API permissions.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
One MCP server for the services your AI needs: memory, files, Microsoft 365, kanban and more.
MCP server connecting AI agents to 100+ apps (Gmail, Slack, Notion, GitHub) via one-click OAuth.
Hosted Google Calendar MCP server for AI agents. No self-hosting or Google Cloud setup.
Related MCP Servers
- AlicenseBqualityAmaintenanceA Model Context Protocol server that enables interaction with Microsoft 365 services (Excel, Calendar, Mail, OneDrive, Teams, etc.) through the Graph API, allowing AI assistants to manage Microsoft 365 resources via natural language.20388,164 npm1,132MIT
- FlicenseCqualityDmaintenanceA powerful MCP server that enables AI assistants to interact with Microsoft Graph API for managing Outlook emails, Calendar events, OneDrive files, and Contacts through natural language commands.3556-
- AlicenseNot gradedqualityFmaintenanceA Model Context Protocol server that enables AI assistants to interact with Microsoft Outlook for calendar management, email operations, and search functionality.15MIT
- AlicenseNot gradedqualityDmaintenanceModel Context Protocol servers for Microsoft 365, enabling AI assistants to interact with Calendar, Contacts, OneDrive, Outlook, and SharePoint via the Microsoft Graph API.MIT