microsoft365-mcp-server

io.github.sapientsai/microsoft365-mcp-server

About microsoft365-mcp-server

microsoft365-mcp-server is an MCP server published by the GitHub account sapientsai. Microsoft 365 via Graph — mail, calendar, contacts, files, Teams, Planner, OneNote, To Do.

It runs on your own machine: your AI client starts it from the npm package microsoft365-mcp-server at version 1.2.19.

It asks for 3 secrets: MS365_CLIENT_SECRET, MS365_CERT_PASSWORD and MS365_ACCESS_TOKEN. Give it a key with the least access that still works.

It also needs MS365_CLIENT_ID set before it starts.

Version 1.2.19 was published on 28 October 2026, and the source code is public, so you can read it before installing.

Written from the registry entry. 9 automated checks on the registry entry and the package code: 7 pass, 1 warn, 0 fail, 1 info. How we check.

What it asks for

VariableRequiredSecretDescription
MS365_CLIENT_IDYesNoAzure AD application (client) ID. Every mode except client-token needs it.
MS365_TENANT_IDNoNoAzure AD tenant ID, or 'common'/'organizations'/'consumers'. Read by certificate, client-secret and oauth-proxy modes.
MS365_CLIENT_SECRETNoYesAzure AD client secret (client-secret mode).
MS365_CERT_PATHNoNoPath to the certificate used by certificate mode.
MS365_CERT_PASSWORDNoYesPassword for the certificate at MS365_CERT_PATH, if it has one.
MS365_ACCESS_TOKENNoYesA Graph access token supplied directly (client-token mode).
MS365_AUTH_MODENoNoAuth mode: interactive (default), certificate, client-secret, client-token or oauth-proxy.
MS365_OAUTH_BASE_URLNoNoBase URL of the OAuth proxy (oauth-proxy mode).
MS365_READ_ONLYNoNoSet to 'true' to expose read-only tools and refuse every write.
MS365_ENABLED_TOOLSNoNoCase-insensitive regular expression matched against tool names; only matching tools are registered. Not a comma-separated list.
MS365_PRESETSNoNoComma-separated tool presets to enable instead of naming tools individually.
MS365_ORG_MODENoNoSet to 'true' for organisation-wide (application-permission) behaviour.
TRANSPORT_TYPENoNoTransport: 'stdio' (the default, and what this npm package is listed as) or 'httpStream' for remote/Docker deployments.

Checks

CheckResultDetail
Source repository linkedPasshttps://github.com/sapientsai/microsoft365-mcp-server
Version pinnedPassEvery package has an explicit version
Secrets requestedWarnAsks for 3 secrets: MS365_CLIENT_SECRET, MS365_CERT_PASSWORD, MS365_ACCESS_TOKEN
Known package registryPassAll packages come from npm, PyPI, OCI, NuGet or MCPB
Namespace ownershipInfoName verified via GitHub account sapientsai
Registry text aimed at the AIPassDescription and settings contain no hidden characters or instructions to the AI
Install scriptsPassmicrosoft365-mcp-server@1.2.19 runs nothing at install
Code red flagsPassRead 8 files in microsoft365-mcp-server@1.2.19: no obfuscation, encoded execution, credential reads or data-collection endpoints found
Text aimed at the AIPassNo hidden characters or instructions to the AI in 8 files, including comments and the README

Popularity & health: 49 / 100

Worked out from public numbers and our own checks, not from user reviews or ratings. It says how used and how looked-after a server is, not whether it is safe.

Popularity13 / 40

1 GitHub stars, 1,037 downloads last week, no Hacker News posts found. Best two of the three, each on a log scale.

Activity15 / 25

Last push 2026-10-29, last release 2026-10-30, 0 commits in 90 days.

Issue health5 / 15

4 closed of 11 issues.

Our checks16 / 20

1 warning, each costing a fifth.

2 forks, 91 merged pull requests. Sources: GitHub, npm, PyPI (pypistats.org) and Hacker News (Algolia), fetched 2026-10-31.

What people say

No Hacker News threads link to its source code.

Look further: search Reddit, search Hacker News, read its GitHub issues. These are not reviews we checked.

Facts

Registry nameio.github.sapientsai/microsoft365-mcp-server
PublisherGitHub account sapientsai
How the name is verifiedName verified via GitHub account sapientsai. The registry ties the name prefix to that account or domain; it does not check the code.
TypeLocal: runs on your machine from a package
Packagesnpm microsoft365-mcp-server 1.2.19 (stdio)
Version1.2.19
Published
Last updated
Source repositoryhttps://github.com/sapientsai/microsoft365-mcp-server
WebsiteNone linked
CategoryEmail & messaging (assigned by keyword rule, not by hand)

Related servers in Email & messaging