
Microsoft365 Mcp Server
io.github.sapientsaiPublished by GitHub account sapientsaiv1.3.0Updated Nov 7, 2026
Microsoft 365 via Graph — mail, calendar, contacts, files, Teams, Planner, OneNote, To Do.
Overview
Local MCP server giving an assistant 40+ Microsoft Graph tools for mail, calendar, contacts, files, Teams, Planner, OneNote and To Do.
- What you can do
- Work with mail, calendar and contacts through Microsoft Graph
- Browse and manage files and SharePoint content
- Use Teams, Planner, OneNote and To Do items
- Limit the exposed toolset with presets, a name regex, or a read-only switch
- Choose an auth mode: interactive, certificate, client secret, direct token or OAuth proxy
- When to use it
- Use it when a signed-in user wants an assistant to read or act on their own Microsoft 365 mailbox, calendar, files and Teams/Planner/OneNote/To Do content. For tenant-wide, headless app-only deployments the README points to a separate server package instead.
- Requirements
- Runs locally over stdio from the npm package microsoft365-mcp-server (Node.js). Needs an Azure AD app registration: MS365_CLIENT_ID is required in every mode except client-token, plus MS365_TENANT_ID for certificate, client-secret and oauth-proxy modes, and the matching credential (MS365_CLIENT_SECRET, MS365_CERT_PATH with optional MS365_CERT_PASSWORD, MS365_ACCESS_TOKEN, or MS365_OAUTH_BASE_URL).
Installation
In SourceWeft
- Open Microsoft365 Mcp Server in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
microsoft365-mcp monorepo
pnpm workspace for the Microsoft Graph MCP servers. Descends from the archived
sapientsai/microsoft-mcp-server — split into
two focused servers over a shared core. The app-only server keeps the original
microsoft-mcp-server name; the delegated server is microsoft365-mcp-server.
Packages
packages/microsoft365—microsoft365-mcp-server, the delegated (OAuth-proxy) MS365 gateway: 40+ tools across mail, calendar, contacts, files, Teams, Planner, OneNote, To Do, and more via Microsoft Graph. Published to npm. See its README and the monorepo DEPLOYMENT.md.packages/graph—microsoft-mcp-server(the original name), a lean app-only (client_credentials) server purpose-built for headless document-RAG:microsoft_graphpassthrough +microsoft_graph_batch+read_document+sharepoint_search+ optionalazure_ai_search+ a/uploadrelay. Ships as a Docker image atghcr.io/sapientsai/microsoft-mcp-server. See its README.packages/core—@sapientsai/ms-graph-core, the shared plumbing (upload helpers, ticket tokens, OData/pagination, error and auth-strategy types) used by both servers. Internal workspace package, not published.
Pick by auth model: use packages/microsoft365 when a user is present to consent (interactive
OAuth); use packages/graph for tenant-wide, headless, app-only deployments.
Development
Per-package commands run inside the package dir, e.g.:
History
Design context for the split lives in
SAI_PLAN_ms-graph-monorepo_2026-06-20.md.
Source: README.md at commit 98bfd5a
Tools
0Version history
5- v1.3.0LatestNov 7, 2026
- v1.2.22Oct 31, 2026
- v1.2.21Oct 31, 2026
- v1.2.20Oct 29, 2026
- v1.2.17Oct 25, 2026
Score
40% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Declare a license in the repository or the registry entry.