Outlook Mail MCP server
io.github.Pepebits/outlook-mcp·v1.2.0Read, search, send and clean up Outlook.com / Hotmail mail through Microsoft Graph.
0 stars
Reviews
Write oneNobody has reviewed Outlook Mail yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Outlook Mail tools
No tool declarations could be read from the package source. They show once the server is installed.
Public scan report
scanner v0.1.10 · 2026-10-09 · same rubric, same numbers if you re-run it
- Code scan35 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 1 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year9/10
How Outlook Mail compares
Against every graded Email MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 94/100
- higher than 92% of 916 Email servers
Install Outlook Mail in Claude Code, Cursor or VS Code
Runs npx -y @pepebits/outlook-mcp on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add outlook-mcp -- npx -y @pepebits/outlook-mcp
What the publisher says
From the Outlook Mail repository's README, as published. We do not edit it. Read it on GitHub
A Model Context Protocol server that lets Claude, Codex and any other MCP client read, search, send and organize your Outlook / Microsoft 365 / Outlook.com mail through the Microsoft Graph API.
🔭 Overview
outlook-mcp runs locally over stdio. It signs in with the OAuth device code flow (no client secret, no redirect URI), stores the refresh token in your OS keychain (or a local file only you can read), and talks to Microsoft Graph with plain fetch.
✨ Features
- 📂 Browse folders, list and search messages (KQL), read bodies as sanitized plain text
- 📎 List and download attachments safely into a configured directory
- ✉️ Send mail, create drafts, reply, reply-all and forward (local attachments up to 150 MB; files of 3 MB or more are uploaded in chunks)
- 🗂️ Move, mark read/unread, flag and delete messages, one at a time or in bulk (ids)
- 📰 Find newsletters, unsubscribe from them and block unwanted senders with inbox rules
- 🔒 Read-only mode that removes every mutating tool
- 🔁 Automatic retry with Retry-After / exponential backoff for throttling (429/503/504)
- 🧾 Logs only to stderr; never logs tokens or message bodies
📋 Requirements
- Node.js 24 (LTS) or newer
- A Microsoft account (personal works out of the box; work or school needs your own Azure app)
🚀 Quick start
No terminal sign-in and no Azure setup needed. You only need Node.js 24+.
Claude Code
claude mcp add outlook --scope user -- npx -y @pepebits/outlook-mcpClaude Desktop
Add to claudedesktopconfig.json and restart Claude Desktop:
{
"mcpServers": {
"outlook": {
"command": "npx",
"args": ["-y", "@pepebits/outlook-mcp"]
}
}
}Codex (OpenAI)
codex mcp add outlook -- npx -y @pepebits/outlook-mcpOr add it to ~/.codex/config.toml (shared by the Codex CLI and IDE extension):
[mcp_servers.outlook]
command = "npx"
args = ["-y", "@pepebits/outlook-mcp"]
# env = { OUTLOOK_READ_ONLY = "true" }Run /mcp inside Codex to check that it is connected.
Other MCP clients
Any client that can launch a stdio MCP server works: run npx -y @pepebits/outlook-mcp as the server command.
Sign in
Ask your assistant to "log in to Outlook". The login tool returns a URL and a one-time code: open the URL, enter the code and accept. Prefer a terminal? Run npx -y @pepebits/outlook-mcp auth instead.
By default the server uses the shared outlook-mcp Azure app, which supports personal Microsoft accounts (outlook.com, hotmail, live). The consent screen may show an unverified publisher warning. No data passes through any server of ours: the server talks to Microsoft Graph directly from your machine and your tokens stay in the local token cache. For work or school accounts, or to use your own app, see Use your own Azure app.
⚙️ Configuration (.env)
The .env file is optional. Variables are read from .env in the current directory and in the package directory, and real environment variables override it. You can also pass them through your MCP client's env block, e.g. claude mcp add outlook --scope user -e OUTLOOKTENANT=organizations -e OUTLOOKCLIENT_ID=your-client-id -- npx -y @pepebits/outlook-mcp.
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Outlook Mail: common questions
- Is Outlook Mail MCP server safe?
- Yes, by our scan: it is graded A (94/100). Read the Outlook Mail safety report
- How do I install Outlook Mail?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Outlook Mail need an API key?
- No secret keys are declared. It reads 4 settings from the environment.
- Is Outlook Mail maintained?
- The last commit was 27 days ago (2026-10-08). The latest release is v1.2.0.
- What can I use instead of Outlook Mail?
- Servers from other publishers that do the same job: Outlook MCP server, MCPEmails MCP server and Agent Email MCP server.
Alternatives to Outlook Mail
Same job from other publishers: the closest match first, then the best rated.
- Outlook MCPMicrosoft Outlook personal accounts: mail, rules, calendar, contacts, to-do, drafts (77 tools).not reviewedEstablishedA
- MCPEmailsNever-stored live email: read, send and triage Gmail, Outlook / Microsoft 365, or any IMAP mailbox.not reviewedGrowingA
- Agent EmailLocal email connectivity for AI agents — read, draft, send, and organize Outlook mail via MCPnot reviewedGrowingA
- Microsoft 365 MailMicrosoft 365 Outlook mail via Graph: read, search, send, reply, forward, draft, move, delete.not reviewedGrowingA
- OutlookMicrosoft Outlook MCP server — 20 tools for email, calendar, contacts, and settings via Graph API.not reviewedGrowingB