Outlook MCP Server
The Outlook MCP Server enables integration with Microsoft Outlook on Windows via COM for comprehensive email management without complex authentication.
Core Capabilities:
Email Reading & Retrieval - Retrieve emails from inbox, sent items, and drafts folders; get specific emails by ID
Email Search - Search across inbox, sent, and draft folders using keywords
Email Summarization - Summarize individual emails by ID or batch summarize inbox emails with automatic priority detection
Draft Creation & Management - Create custom email drafts with recipients (To, CC, BCC), subject, and body; duplicate existing emails as drafts while preserving formatting with options to modify subject and recipients; generate drafts using predefined templates (meeting requests, follow-ups, thank you notes, status updates); create smart reply drafts (agree, decline, info request, custom)
Email Actions - Mark emails as read by ID
Template Management - Access available draft templates
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Outlook MCP Server summarize my inbox emails from this morning"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Outlook MCP Server
This is a unified MCP (Model Context Protocol) server for comprehensive Microsoft Outlook integration. It operates the local Outlook client on Windows via COM and PowerShell, providing both email management and calendar management features. Its main advantage is fast deployment on Windows without complex security authentication.
Installation
0. System Requirements
Windows 10/11
Microsoft Outlook installed and configured
Node.js 16.0 or higher
PowerShell 5.0 or higher
1. Install dependencies
cd path\to\windows-outlook-mcp
npm install2. Compile TypeScript
npm run build3. Configure Claude Desktop
Add the following to your Claude Desktop configuration file:
{
"mcpServers": {
"outlook": {
"type": "stdio",
"command": "node",
"args": ["path\\to\\windows-outlook-mcp\\dist\\index.js"],
"env": {}
}
}
}Related MCP server: outlook-mcp
Usage Examples
Create an out-of-office event
Create a vacation event from 2025-12-24 to 2025-12-31 marked as OutOfOffice.Find free time slots
Find free 30-minute slots in my calendar for next week between 9 AM and 5 PM.Development Notes
Project structure:
outlook/
├── src/
│ ├── index.ts # Main server file
│ ├── outlook-manager.ts # Outlook interface manager
│ ├── email-summarizer.ts # Email summarization functionality
│ └── draft-generator.ts # Draft generation functionality
├── dist/ # Compiled output directory
├── package.json
├── tsconfig.json
└── README.mdTo extend functionality, modify the relevant TypeScript files and recompile.
Available Tools & Features
📧 Email Management
get_inbox_emails- Retrieve a list of inbox emailsget_sent_emails- Retrieve a list of sent emailsget_draft_emails- Retrieve a list of draft emailsget_email_by_id- Get details of a specific email by IDsearch_inbox_emails- Search inbox emails by keywordsearch_sent_emails- Search sent emails by keywordsearch_draft_emails- Search draft emails by keywordmark_email_as_read- Mark an email as read
📝 Email Summarization
summarize_email- Intelligently summarize a single email with priority detectionsummarize_inbox- Batch summarize inbox emails with priority grouping
✍️ Draft Management
create_draft- Create a new email draft with recipients, subject, and bodyduplicate_email_as_draft- Duplicate an existing email as a draft (preserving formatting)
📅 Calendar Management
list_events- List calendar events within a specified date rangecreate_event_with_show_as- Create a calendar event with specific Show As status (Free/Busy/OutOfOffice/etc.)set_show_as- Set Show As status for an existing calendar eventupdate_event- Update an existing calendar event (time, location, description, etc.)delete_event- Delete a calendar event by its IDfind_free_slots- Find available time slots in the calendar with customizable work hoursget_attendee_status- Check the response status of meeting attendeesget_calendars- List all available calendars
Available Tools
20 toolscreate_draftC
Create new email draft
Inputs: to (required), subject (required), body (required), cc, +1 more.
create_event_with_show_asC
Create a calendar event with specific Show As status (e.g., OutOfOffice for vacation)
Inputs: subject (required), start (required), end (required), location, +3 more.
delete_eventB
Delete a calendar event by its ID
Inputs: eventId (required), calendar.
duplicate_email_as_draftC
Duplicate existing email as draft (preserving complete format)
Inputs: source_email_id (required), store_id, new_subject, new_recipients.
find_free_slotsC
Find available time slots in the calendar
Inputs: startDate (required), endDate, duration, workDayStart, +2 more.
get_attendee_statusC
Check the response status of meeting attendees
Inputs: eventId (required), calendar.
get_calendarsB
List available calendars
Inputs: no named parameters.
get_draft_emailsC
Get draft emails list
Inputs: count.
get_email_by_idC
Get specific email by ID
Inputs: id (required).
get_inbox_emailsC
Get inbox email list
Inputs: count.
get_sent_emailsC
Get sent emails list
Inputs: count.
list_eventsC
List calendar events within a specified date range
Inputs: startDate (required), endDate, calendar.
mark_email_as_readC
Mark email as read
Inputs: email_id (required).
search_draft_emailsC
Search draft emails
Inputs: query (required), count.
search_inbox_emailsC
Search inbox emails
Inputs: query (required), count.
search_sent_emailsD
Search sent emails
Inputs: query (required), count.
set_show_asC
Set Show As (Free/Busy status) for a calendar event
Inputs: showAs (required), eventId, subject, startDate.
summarize_emailC
Summarize individual email content
Inputs: email_id (required).
summarize_inboxC
Summarize inbox emails
Inputs: count.
update_eventC
Update an existing calendar event
Inputs: eventId (required), subject, startDate, startTime, +5 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 20 tools
Most tools have distinct purposes, with clear separation between email and calendar operations. However, some potential confusion exists between 'create_draft' and 'duplicate_email_as_draft', and between the various search tools (search_draft_emails, search_inbox_emails, search_sent_emails) which differ only by folder location rather than fundamental functionality.
Excellent consistency with a clear verb_noun pattern throughout. All tools use snake_case and follow predictable naming conventions like 'get_', 'list_', 'create_', 'update_', 'delete_', 'search_', 'mark_', and 'summarize_' prefixes. The naming scheme is highly predictable and agent-friendly.
20 tools is slightly high but reasonable for a comprehensive Outlook integration covering both email and calendar functionality. The count reflects the dual-domain nature of the server, though some consolidation might be possible (particularly among search operations).
Excellent coverage of both email and calendar domains. Email tools provide complete lifecycle management (create, read, search, mark, summarize) across multiple folders. Calendar tools cover event CRUD, availability checking, attendee management, and status setting. No obvious gaps exist for core Outlook workflows.
Maintenance
Related MCP Connectors
Your own AI reads, searches and drafts in your mailbox, on your Windows computer.
Email for AI agents: read, search and send from your Gmail, Outlook, Yahoo, iCloud or IMAP inbox.
Hosted MCP server for your Gmail, Outlook and IMAP mail, with mailboxes and scopes set per agent.
Email, calendar and contacts for AI agents: Gmail, Microsoft 365 and IMAP accounts behind one API.
Related MCP Servers
- 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 gradedqualityDmaintenanceMCP server for Outlook — enables AI assistants to access email, contacts, and calendars via Windows COM interface.36 PyPI1MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to read, send, and manage Outlook mail locally on Windows via COM/MAPI, without cloud APIs.83 npm1MIT
- AlicenseNot gradedqualityCmaintenanceMCP server that connects to Windows Classic Outlook to automate email organization, search, and reply draft creation without sending emails.83 npmMIT