outlook-mcp
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-mcpsummarize this week's unread mail in my school inbox"
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
An MCP server that lets Claude (or any MCP client) read, write, reply to, forward and organize mail in classic Outlook on Windows, through Outlook's local COM interface.
Why: many school and work Microsoft 365 tenants block third-party apps unless an admin approves them, so the official connectors and the Microsoft Graph API are off the table. You can still sign in to the Outlook desktop app. This server talks to that already-signed-in Outlook, so it needs no admin consent, no app registration and no tokens.
中文简介:通过 Windows 上经典版 Outlook 的本地 COM 接口,让 Claude 读写、回复、转发、整理邮件。适用于学校或公司邮箱需要管理员授权、官方连接器连不上,但能在 Outlook 桌面版登录的情况。
Features
Tool | What it does |
| Email addresses configured in Outlook |
| Mail folders, as paths usable by other tools |
| Recent mail in a folder, newest first, with keyword and unread filters |
| Full body, To / CC / BCC and attachment names |
| New mail with CC, BCC and attachments, from any configured account |
| Reply or reply-all inside the original thread, keeping the quoted history |
| Forward with the original attachments, plus optional extra recipients and files |
| Send a draft created earlier |
| Read / unread, flag / unflag |
| Organize mail |
| Move to Deleted Items (always recoverable) |
| Save attachments to disk so Claude can read them |
Safety defaults
Drafts first. Every sending tool saves a draft unless it is called with
send=true.No permanent deletion.
delete_emailsonly moves mail to Deleted Items, and it refuses mail that is already there.Attach, never launch. The server connects only to an Outlook you already have open. Launching a hidden Outlook can hang forever on dialogs you can't see.
Each tool carries MCP annotations (read-only / destructive), so clients can ask before running the risky ones.
Related MCP server: outlook-classic-mcp
Requirements
Windows with classic Outlook (Microsoft 365 / Office desktop). The web-based "new Outlook" has no COM interface and is not supported.
uv (Python 3.10+ is installed for you).
Outlook must be open while you use the server.
Install
git clone https://github.com/Caesarcph/outlook-mcp.git
cd outlook-mcp
uv sync
cp config.example.json config.json # then edit it, see belowRegister with Claude Code (all projects)
claude mcp add -s user outlook -- uv run --directory "C:/path/to/outlook-mcp" server.pyRegister with Claude Desktop (Chat)
Add this to %APPDATA%\Claude\claude_desktop_config.json, then restart Claude Desktop:
{
"mcpServers": {
"outlook": {
"command": "C:\\path\\to\\uv.exe",
"args": ["run", "--directory", "C:\\path\\to\\outlook-mcp", "server.py"]
}
}
}Use the absolute path to uv.exe (find it with where uv). GUI apps don't always inherit your terminal's PATH.
Configure
config.json is gitignored, so your addresses stay on your machine. Every field is optional.
Key | Purpose |
| Labels and folder paths, told to Claude so "check my school email" maps to the right mailbox. The default account's inbox is |
| Free text passed to Claude, for example "my personal Gmail is handled by the Gmail connector". |
| Senders from these domains (and their subdomains) are never filtered out. |
| Senders from these domains are hidden from |
| Mail from other senders whose subject contains any of these words is hidden. |
Set OUTLOOK_MCP_CONFIG to load the config from another path.
Usage
Once it's registered, just ask in plain language:
"Summarize this week's unread mail in my school inbox."
"Reply to the email from the registrar, CC my advisor, and save it as a draft."
"Forward the syllabus email to my personal address with the PDF attached."
"Move all newsletters from last month into a folder called Newsletters."
Troubleshooting
Symptom | Fix |
| Open classic Outlook and retry. |
Outlook won't start: | A hidden Outlook started by an earlier script is stuck. End |
A change to | Each conversation starts its own server process and keeps it until the conversation ends. Start a new conversation. |
| Folder names are localized (for example "收件箱"). Use the lowercase keywords |
A sent mail never arrives | Run |
Attachment "path does not exist" | The path has to be visible to Outlook itself. Use a normal folder, not a sandboxed or temporary one. |
License
This server cannot be deployed
Maintenance
Related MCP Connectors
Hosted email MCP for your own Gmail, Outlook.com, Microsoft 365, iCloud or IMAP inbox: read, search, draft, reply in thread, forward and file mail. It moves or flags up to 500 messages in one call, and a send leaves exactly one copy in Sent. A calendar is a separate connection, and connecting one adds diary and scheduling tools.
Let Claude or ChatGPT search, read and send your WhatsApp messages over MCP. OAuth sign-in.
Email infrastructure for AI agents — send, receive, search, and reply to email over MCP.
Your Gmail, Calendar, Drive, GitHub, Oura, wallet and confirmed profile facts in any MCP client.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceMCP server for email + calendar via classic Outlook on Windows (COM automation). No Azure app registration, no OAuth — it just drives the Outlook desktop client you're already signed into.17 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables MCP-aware agents to interact with the classic Outlook desktop client for mail, calendar, contacts, tasks, and Out-of-Office settings via the COM API, without Azure or OAuth.210 PyPI32MIT
- FlicenseNot gradedqualityDmaintenanceProvides LLMs with access to Microsoft Outlook email functionality, allowing them to read, search, compose, and manage emails through a standardized MCP interface on Windows.-
- AlicenseNot gradedqualityBmaintenanceTurns your running Outlook Desktop into an MCP server, enabling email, calendar, tasks, and attachment management through your existing Outlook session without any cloud APIs.AGPL 3.0