Microsoft 365 via Graph — mail, calendar, contacts, files, Teams, Planner, OneNote, To Do.
To add microsoft365-mcp-server to Claude, run the install command below or copy the ready-made config for Claude Code, Claude Desktop, Cursor and VS Code further down. Restart your client after adding it and its tools show up in your next conversation. It needs 13 environment variables, listed below.
Install
npx -y microsoft365-mcp-server@1.2.22Environment variables
MS365_CLIENT_IDSet in your MCP configMS365_TENANT_IDSet in your MCP configMS365_CLIENT_SECRETSet in your MCP configMS365_CERT_PATHSet in your MCP configMS365_CERT_PASSWORDSet in your MCP configMS365_ACCESS_TOKENSet in your MCP configMS365_AUTH_MODESet in your MCP configMS365_OAUTH_BASE_URLSet in your MCP configMS365_READ_ONLYSet in your MCP configMS365_ENABLED_TOOLSSet in your MCP configMS365_PRESETSSet in your MCP configMS365_ORG_MODESet in your MCP configTRANSPORT_TYPESet in your MCP configInstall with your client
claude mcp add microsoft365 --env MS365_CLIENT_ID=<YOUR_MS365_CLIENT_ID> --env MS365_TENANT_ID=<YOUR_MS365_TENANT_ID> --env MS365_CLIENT_SECRET=<YOUR_MS365_CLIENT_SECRET> --env MS365_CERT_PATH=<YOUR_MS365_CERT_PATH> --env MS365_CERT_PASSWORD=<YOUR_MS365_CERT_PASSWORD> --env MS365_ACCESS_TOKEN=<YOUR_MS365_ACCESS_TOKEN> --env MS365_AUTH_MODE=<YOUR_MS365_AUTH_MODE> --env MS365_OAUTH_BASE_URL=<YOUR_MS365_OAUTH_BASE_URL> --env MS365_READ_ONLY=<YOUR_MS365_READ_ONLY> --env MS365_ENABLED_TOOLS=<YOUR_MS365_ENABLED_TOOLS> --env MS365_PRESETS=<YOUR_MS365_PRESETS> --env MS365_ORG_MODE=<YOUR_MS365_ORG_MODE> --env TRANSPORT_TYPE=<YOUR_TRANSPORT_TYPE> -- npx -y microsoft365-mcp-server@1.2.22
Run this in a terminal to add the server to Claude Code.
What this does
microsoft365-mcp-server exposes a set of tools to Claude over the Model Context Protocol. After you add it to claude_desktop_config.json (snippet above) and restart Claude Desktop, those tools become callable inside any conversation.
Requirements
This server needs the following environment variables to be set before it can run:
MS365_CLIENT_ID MS365_TENANT_ID MS365_CLIENT_SECRET MS365_CERT_PATH MS365_CERT_PASSWORD MS365_ACCESS_TOKEN MS365_AUTH_MODE MS365_OAUTH_BASE_URL MS365_READ_ONLY MS365_ENABLED_TOOLS MS365_PRESETS MS365_ORG_MODE TRANSPORT_TYPE
Set these via the env object in your MCP config (see claude_desktop_config.json snippet above).
Frequently asked questions
How do I install microsoft365-mcp-server?
Run the Claude Code command in the install section to add microsoft365-mcp-server to Claude Code, or copy the ready-made config for your client from the install section on this page. Restart your client afterwards and the tools appear in your next conversation.
Which clients work with microsoft365-mcp-server?
This page carries setup and config for Claude Code, Claude Desktop, Cursor and VS Code. Any other MCP client that accepts a standard server config can connect to microsoft365-mcp-server as well.
Does microsoft365-mcp-server need an API key?
Yes. Before it can run, set these environment variables: MS365_CLIENT_ID, MS365_TENANT_ID, MS365_CLIENT_SECRET, MS365_CERT_PATH, MS365_CERT_PASSWORD, MS365_ACCESS_TOKEN, MS365_AUTH_MODE, MS365_OAUTH_BASE_URL, MS365_READ_ONLY, MS365_ENABLED_TOOLS, MS365_PRESETS, MS365_ORG_MODE, TRANSPORT_TYPE. They go in the env block of your MCP config.
Imported from the Official MCP Registry. The details above come from the registry entry; the maker can claim this listing to correct them, add docs, and see its traffic.
Is this your MCP server?
Claim this listing to see its traffic, fix details yourself, and skip the review queue on future updates.
Add this badge to your README
Show visitors this server is listed in the ClaudeRules directory. The badge links straight to this listing.
[](https://clauderules.net/mcp/io-github-sapientsai-microsoft365-mcp-server)<a href="https://clauderules.net/mcp/io-github-sapientsai-microsoft365-mcp-server" target="_blank" rel="noopener noreferrer"><img src="https://clauderules.net/api/badge/io-github-sapientsai-microsoft365-mcp-server" alt="Listed on clauderules.net" /></a>More Files MCP servers
GitHub
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
eyaltoledano/claude-task-master
📇 ☁️ 🏠 - AI-powered task management system for AI-driven development. Features PRD parsing, task expansion, multi-provider support (Claude, OpenAI, Gemini, Perplexity, xAI), and selective tool loadi
Serena MCP: the IDE for your agent
A powerful toolkit for coding, providing semantic retrieval and editing capabilities.
MCP Toolbox for Databases
MCP Toolbox for Databases enables your agent to connect to your database.
