The Microsoft MCP server is a powerful AI assistant toolkit for managing Microsoft services through the Microsoft Graph API, enabling interactions with:
- Email Management: Read, send, reply to emails, manage attachments, organize folders, mark emails as read/unread, and search emails
- Calendar Management: Create, update, delete, and respond to events, check availability, and search calendar events
- OneDrive Management: Browse, upload, download, delete, and search files and folders
- Contact Management: List, create, update, delete, and search contacts
- Multi-Account Support: Manage multiple Microsoft accounts (personal, work, school) via the
account_id
parameter - Unified Search: Search across emails, files, events, and contacts with a single query
- AI Assistant Capabilities: Smart email management and intelligent scheduling
Allows cloning the Microsoft MCP server repository for installation and setup purposes.
Provides access to the Microsoft MCP repository for installation and configuration of the server.
Provides testing capabilities for the Microsoft MCP server development.
Used for running the Microsoft MCP server implementation and authentication scripts.
Enables code formatting and linting for the Microsoft MCP server codebase.
Microsoft MCP
Powerful MCP server for Microsoft Graph API - a complete AI assistant toolkit for Outlook, Calendar, OneDrive, and Contacts.
Features
- Email Management: Read, send, reply, manage attachments, organize folders
- Calendar Intelligence: Create, update, check availability, respond to invitations
- OneDrive Files: Upload, download, browse with pagination
- Contacts: Search and list contacts from your address book
- Multi-Account: Support for multiple Microsoft accounts (personal, work, school)
- Unified Search: Search across emails, files, events, and people
Quick Start with Claude Desktop
Usage Examples
Available Tools
Email Tools
list_emails
- List emails with optional body contentget_email
- Get specific email with attachmentscreate_email_draft
- Create email draft with attachments supportsend_email
- Send email immediately with CC/BCC and attachmentsreply_to_email
- Reply maintaining thread contextreply_all_email
- Reply to all recipients in threadupdate_email
- Mark emails as read/unreadmove_email
- Move emails between foldersdelete_email
- Delete emailsget_attachment
- Get email attachment contentsearch_emails
- Search emails by query
Calendar Tools
list_events
- List calendar events with detailsget_event
- Get specific event detailscreate_event
- Create events with location and attendeesupdate_event
- Reschedule or modify eventsdelete_event
- Cancel eventsrespond_event
- Accept/decline/tentative response to invitationscheck_availability
- Check free/busy times for schedulingsearch_events
- Search calendar events
Contact Tools
list_contacts
- List all contactsget_contact
- Get specific contact detailscreate_contact
- Create new contactupdate_contact
- Update contact informationdelete_contact
- Delete contactsearch_contacts
- Search contacts by query
File Tools
list_files
- Browse OneDrive files and foldersget_file
- Download file contentcreate_file
- Upload files to OneDriveupdate_file
- Update existing file contentdelete_file
- Delete files or folderssearch_files
- Search files in OneDrive
Utility Tools
unified_search
- Search across emails, events, and fileslist_accounts
- Show authenticated Microsoft accountsauthenticate_account
- Start authentication for a new Microsoft accountcomplete_authentication
- Complete the authentication process after entering device code
Manual Setup
1. Azure App Registration
- Go to Azure Portal → Microsoft Entra ID → App registrations
- New registration → Name:
microsoft-mcp
- Supported account types: Personal + Work/School
- Authentication → Allow public client flows: Yes
- API permissions → Add these delegated permissions:
- Mail.ReadWrite
- Calendars.ReadWrite
- Files.ReadWrite
- Contacts.Read
- People.Read
- User.Read
- Copy Application ID
2. Installation
3. Authentication
4. Claude Desktop Configuration
Add to your Claude Desktop configuration:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Or for local development:
Multi-Account Support
All tools require an account_id
parameter as the first argument:
Development
Example: AI Assistant Scenarios
Smart Email Management
Intelligent Scheduling
Security Notes
- Tokens are cached locally in
~/.microsoft_mcp_token_cache.json
- Use app-specific passwords if you have 2FA enabled
- Only request permissions your app actually needs
- Consider using a dedicated app registration for production
Troubleshooting
- Authentication fails: Check your CLIENT_ID is correct
- "Need admin approval": Use
MICROSOFT_MCP_TENANT_ID=consumers
for personal accounts - Missing permissions: Ensure all required API permissions are granted in Azure
- Token errors: Delete
~/.microsoft_mcp_token_cache.json
and re-authenticate
License
MIT
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
A 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.
Related MCP Servers
- AsecurityAlicenseAqualityProvides tools for interacting with Gmail and Calendar APIs. This server enables you to manage your emails and calendar events programmatically through the MCP interface.Last updated -813JavaScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that enables AI assistants to interact with Linear project management systems, allowing users to retrieve, create, and update issues, projects, and teams through natural language.Last updated -32805TypeScriptMIT License
- -securityFlicense-qualityAn MCP server that enables AI assistants to access and interact with Google Classroom data, allowing users to view courses, course details, and assignments through natural language commands.Last updated -5081JavaScript
- -securityAlicense-qualityA 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.Last updated -1,912120TypeScriptMIT License