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 MCP list my last 5 emails"
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
Blank repo no more — this is a local stdio MCP server for Microsoft Outlook via Microsoft Graph.
What you need on your PC
Node.js 18+ (
node -v)Your Azure app Application (client) ID and Directory (tenant) ID
Azure app settings:
Authentication → Allow public client flows = Yes (required for device-code login)
API permissions → Microsoft Graph Delegated:
User.ReadMail.ReadWriteMail.SendCalendars.Readoffline_access(usually included automatically)
Grant admin consent if your tenant requires it
A client secret is not required for this server (device-code / public client). If you previously pasted a secret in chat, rotate/delete it in Azure anyway.
Related MCP server: outlook-mcp-server
Install (on your Windows machine)
From this folder (MCPProject / this repo):
npm installOptional one-time login test in a terminal:
$env:MS_CLIENT_ID="your-client-id"
$env:MS_TENANT_ID="your-tenant-id"
npm run loginOpen the URL printed in the terminal, enter the code, sign in with your Microsoft account.
Cursor mcp.json config
Use this (Desktop). Point at the folder (uses package.json "main") or the entry file:
{
"mcpServers": {
"outlook-mcp": {
"command": "node",
"args": ["C:\\Users\\lance\\OneDrive\\MCPProject\\src\\index.js"],
"env": {
"MS_CLIENT_ID": "your-client-id",
"MS_TENANT_ID": "your-tenant-id"
}
}
}
}Keep your OrCAD / MATLAB entries as they are. Do not put client secrets in chat or commit them.
After saving:
Cursor → Settings → Tools & MCP
Confirm
outlook-mcpis connected (green)Ask the agent to run
outlook_login(or call any mail tool — first use triggers device code on stderr)Complete the browser sign-in when prompted
Tokens are cached at %USERPROFILE%\.outlook-mcp\msal-cache.json.
Tools
Tool | Purpose |
| Device-code sign-in |
| Check sign-in |
| Clear cached tokens |
| Who am I |
| List folder messages |
| Read one message |
| Search mailbox |
| Send mail |
| Create draft |
| Upcoming events |
Cloud Agents note
This stdio server runs on your Windows PC. Cursor Cloud Agents will not see it unless you also add a separate Cloud/HTTP MCP. For Desktop Agent chat on your machine, this config is enough.
Troubleshooting
Symptom | Fix |
| Add it under |
Device code never appears | Check MCP server logs in Cursor; run |
| Enable Allow public client flows on the app |
| Add Graph delegated permissions; admin consent if needed |
Wrong account type | Set tenant to |
Available Tools
10 toolsoutlook_auth_statusA
Check whether Outlook/Microsoft Graph is signed in.
Inputs: no named parameters.
outlook_create_draftA
Create an email draft in Outlook (does not send).
Inputs: to (required), body (required), subject (required), cc, +1 more.
outlook_get_emailA
Get a single email by id, including body by default.
Inputs: id (required), includeBody.
outlook_get_profileA
Get the signed-in user's Outlook / Microsoft 365 profile.
Inputs: no named parameters.
outlook_list_calendarB
List upcoming calendar events.
Inputs: top, days.
outlook_list_emailsB
List recent emails from a mail folder (default: inbox).
Inputs: top, folder, unreadOnly.
outlook_loginA
Start Microsoft device-code login for Outlook. Returns a URL and code (also printed to stderr). Open the URL, enter the code, and sign in.
Inputs: force.
outlook_search_emailsB
Search mailbox messages with a free-text query.
Inputs: query (required), top.
outlook_send_emailC
Send an email immediately from the signed-in mailbox.
Inputs: to (required), body (required), subject (required), cc, +1 more.
outlook_sign_outA
Clear cached Microsoft tokens for this MCP server.
Inputs: no named parameters.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 10 tools
Each tool targets a distinct action or resource: auth login, status, sign out; profile retrieval; email list, get, search, send, draft; calendar list. No two tools overlap in purpose, so an agent can unambiguously select the right one.
All tools share the 'outlook_' prefix and mostly follow verb_noun naming (list_emails, get_email, send_email, create_draft). 'auth_status' and 'sign_out' deviate slightly from the pattern, but overall the style is consistent and readable.
10 tools is a well-scoped set for an Outlook MCP server covering auth, profile, email, and calendar. Each tool serves a clear function without unnecessary bloat or redundancy.
Core email and auth workflows are covered, but obvious gaps exist: no create/update/delete for calendar events, no email delete/reply/move, and no update for drafts. The domain is only partially addressed, falling short of full lifecycle coverage.
Maintenance
Related MCP Connectors
Your IMAP mailbox as an MCP server: read, search and (if you allow it) organize mail. Open source.
MCP server for Nylas — read email, calendars, events and contacts, and send email or create events.
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.
Email infrastructure for AI agents — send, receive, search, and reply to email over MCP.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA local MCP server that connects Codex to Microsoft Graph and Gmail for reading and managing personal mail and calendar accounts.MIT
- FlicenseAqualityDmaintenanceA lightweight MCP server for personal Microsoft Outlook/Hotmail accounts, enabling email search, reading, attachment management, and folder operations via Microsoft Graph API with OAuth device-code flow.61-
- FlicenseAqualityCmaintenanceAn MCP server that enables reading and managing Microsoft 365 / Outlook emails through Microsoft Graph API, allowing users to list, search, send, draft, and authenticate using device code flow.17-
- AlicenseAqualityBmaintenanceLocal-first Microsoft Outlook MCP server: a single Go binary that manages calendar events and mail through the Microsoft Graph API over stdio, with tokens stored in the OS keychain and no Entra ID app registration required. Exposes four aggregate tools (calendar, mail, account, system) dispatched by an operation verb, with multi-account support and read-only and mail-gating modes.445MIT