Microsoft 365 Files runs on your own machine — the client starts it, so there is no endpoint to ping. 75 installs a week from npm. Last commit 2 Nov 2026.
Microsoft 365 OneDrive files via Graph: list, search, get, upload, download, share, read text.
We read the source, 22 h ago · rules 995398eba69f
A value the model can set ends up inside a file or shell call. That is not a flaw by itself — for a terminal server it is the job — but it is where things go wrong when it is not.
fs.writeFileSync(outFd, pdfBuffer);
What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.
const fullPath = path.join(stagingDir, filename);
const child = spawn(process.execPath, [script], {
if (isUnder(resolvedAbs, sshDir)) return { hit: true, reason: '~/.ssh/** is sensitive' };
<script src="https://appsforoffice.microsoft.com/lib/1.1/hosted/office.js"></script>
const entries = fs.readdirSync(workspacePath, { withFileTypes: true });
Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.
That is not a flaw by itself — but it is where things go wrong when it is not the job. We re-read this code on every release. Watch it and you hear from us the day another one appears.
This server runs on your own machine — install it with the package manager and the client starts it for you. Package name taken from the official registry entry.
claude mcp add mcp-server-microsoft-files -e 'MS_CLIENT_ID=<MS_CLIENT_ID>' -e 'MS_CONFIG_DIR=<MS_CONFIG_DIR>' -- npx -y @mindstone/mcp-server-microsoft-files
{
"mcpServers": {
"mcp-server-microsoft-files": {
"command": "npx",
"args": [
"-y",
"@mindstone/mcp-server-microsoft-files"
],
"env": {
"MS_CLIENT_ID": "<MS_CLIENT_ID>",
"MS_CONFIG_DIR": "<MS_CONFIG_DIR>"
}
}
}
}
[mcp_servers.mcp-server-microsoft-files]
command = "npx"
args = ["-y", "@mindstone/mcp-server-microsoft-files"]
env = { MS_CLIENT_ID = "<MS_CLIENT_ID>", MS_CONFIG_DIR = "<MS_CONFIG_DIR>" }
{
"mcpServers": {
"mcp-server-microsoft-files": {
"command": "npx",
"args": [
"-y",
"@mindstone/mcp-server-microsoft-files"
],
"env": {
"MS_CLIENT_ID": "<MS_CLIENT_ID>",
"MS_CONFIG_DIR": "<MS_CONFIG_DIR>"
}
}
}
}
{
"servers": {
"mcp-server-microsoft-files": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@mindstone/mcp-server-microsoft-files"
],
"env": {
"MS_CLIENT_ID": "<MS_CLIENT_ID>",
"MS_CONFIG_DIR": "<MS_CONFIG_DIR>"
}
}
}
}
Put your own values in place of
<MS_CLIENT_ID> (Microsoft Entra (Azure AD) application client ID), <MS_CONFIG_DIR> (Path to the per-user Microsoft config directory (credentials/, accounts.json)).
The author’s registry entry marks them as required.
Optional settings from the registry entry, left out of the block above:
MS_ACCOUNT_EMAIL (Account email when running in multi-account per-instance mode (falls back to the first account in accounts.json)), MS_MCP_PACKAGE_ID (Logical package ID surfaced in error responses), MICROSOFT_REQUEST_TIMEOUT_MS (Override the upstream Microsoft Graph request timeout in milliseconds (max 300000 = 5 min)).
Outlook mail and OneDrive files via Microsoft Graph — read, search, send and organize.
Google Drive files: search, list, read, upload, download, folders and trash, as MCP tools.
MCP server for the Google Drive API: search, upload, download, organize and share files.
Microsoft OneDrive MCP server — browse, read, and manage files and folders through Microsoft Graph.
List, search, download and upload files in a NAVER MYBOX (네이버 마이박스) cloud drive.
Allow AI systems to list, search, upload, download, and manage files and folders in Google Drive.
OneDrive (Microsoft Graph) MCP Pack
Google Drive via gogcli for Claude — search, upload, download, permissions
Answers built from our own checks of this server.