MCP Server
Outlook MCP Server
An integration server that lets you control Microsoft Outlook on Windows via COM, enabling email reading, summarization, and draft generation without complex security setup.
0
GitHub Stars
11/22/2025
Last Updated
MCP Server Configuration
1{
2 "name": "outlook",
3 "type": "stdio",
4 "command": "node",
5 "args": [
6 "path\\to\\windows-outlook-mcp\\dist\\index.js"
7 ],
8 "env": {}
9}
JSON9 lines
README Documentation
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 install
2. Compile TypeScript
npm run build
3. 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": {}
}
}
}
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.md
To 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
Quick Install
Quick Actions
Key Features
Model Context Protocol
Secure Communication
Real-time Updates
Open Source