Ms 365 MCP Server logo

Ms 365 MCP Server

by softeria

Connects AI agents to Microsoft 365 services through Graph API, with account management, bulk requests, webhooks, and binary file handling.

Install Ms 365 MCP Server

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "softeria-ms-365-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@softeria/ms-365-mcp-server"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Install not yet sandbox-tested— the server itself is confirmed live (we called its tools/list endpoint). The stdio install command is a separate, ongoing check.

Overview

softeria/ms-365-mcp-server connects MCP clients to Microsoft 365 and Office services through Microsoft Graph, covering mail, calendars, files, Excel, and more. It supports Microsoft personal accounts by default and adds organization services such as Teams, SharePoint, and online meetings with organization mode. Use it when an agent needs to read or modify Microsoft 365 data, manage Graph subscriptions, or move binary content without routing everything through the model context. Authentication uses Microsoft accounts through MSAL, with support for multiple configured accounts and several Microsoft cloud environments.

Use cases

  • Read and triage Outlook messages in bulk
  • Update Excel ranges with batched Graph requests
  • Manage Microsoft Graph webhook subscriptions
  • Download OneDrive or SharePoint files outside the model context
  • Work with Teams and SharePoint data in organization mode

Key features

  • Microsoft Graph access across Microsoft 365 services
  • Multiple-account authentication and account selection
  • Batch requests for up to 20 Graph operations
  • Webhook subscription lifecycle management
  • Out-of-band file downloads and attachment uploads
  • Read-only mode and scope-based tool filtering

Tools19

What Ms 365 MCP Server lets your agent do. Expand a tool for its parameters.

Verified live~10.0k tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

31/32 checks healthy over the last 78d

What it can do

From the 19 tools this server returned when we ran it; 14 declare their own safety hints.

Can delete or modify data · 6Handles credentials · 1Makes network requests · 13Read-only tools · 13
Network at startup3 connections
Files written at startup3
Install scriptsNone
npm provenanceSigned build
Package age562 days
Maintainers1

Observed 2026-10-18 in an isolated sandbox. A description of reach, not a security audit.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 7d ago via OSV.dev · @softeria/ms-365-mcp-server (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars1.1kStargazers on the source repository.
npm downloads130kPackage downloads in the last 30 days.
Last commitTodayMost recent push to the default branch.
Tools exposed19Callable tools this server registers over MCP.
Directory activity8 viewsConfig copies, upvotes, and views on AllMCPs.

How Ms 365 MCP Server works

What softeria/ms-365-mcp-server does

softeria/ms-365-mcp-server exposes Microsoft Graph operations as MCP tools for Microsoft 365 and Office workloads. The server includes more than 300 endpoint-oriented tools covering Outlook mail, calendars, OneDrive, Excel, OneNote, To Do, Planner, contacts, user profiles, and search in its default personal-account mode.

Organization mode adds Teams and chats, online meetings, transcripts and recordings, attendance reports, SharePoint sites and lists, shared mailboxes and calendars, user management, presence, and virtual events. Custom Teams emoji tools are also available in organization mode through Microsoft Graph beta endpoints.

Authentication is handled with Microsoft Authentication Library. Multiple Microsoft accounts can be configured, listed, selected, verified, or removed. The server supports the global Microsoft cloud, Microsoft 365 operated by 21Vianet in China, and GCC High government cloud environments.

How it works

Each enabled tool maps to a Microsoft Graph endpoint and requests the permissions associated with that operation. The server can calculate required permissions with --list-permissions, and it supports read-only operation for deployments that should prevent write actions.

graph-batch combines up to 20 relative Graph requests in one HTTP call. Requests can run in parallel or depend on earlier requests, which is useful for grouped mail reads and large Excel updates. Batch responses may arrive in a different order, so callers should match them by request ID.

Webhook subscription tools create, inspect, renew, reauthorize, and delete Microsoft Graph subscriptions. Subscription targets require the relevant resource permissions, and notification endpoints must meet Microsoft Graph requirements such as HTTPS delivery and validation-token handling.

Binary content can be returned as base64, written to a local server file, or accessed through a short-lived download URL where Microsoft Graph supports one. Attachment upload URLs can send file bytes directly to Graph when attachment URL support is enabled.

Setup and configuration

Node.js 20 or newer is recommended. The package can be started with npx @softeria/ms-365-mcp-server. Claude Desktop can launch it as an MCP process with an mcpServers entry using the package through npx.

Use --org-mode to expose organization-focused services. Tool exposure can be narrowed with --enabled-tools, --enabled-tools-file, presets, or --read-only. --allowed-scopes and MS365_MCP_ALLOWED_SCOPES provide an additional Graph permission boundary; tools whose required scopes are outside that boundary are hidden.

Output is JSON by default. The experimental TOON format can be selected with --toon or MS365_MCP_OUTPUT_FORMAT=toon. GCC High deployments require a tenant-registered application with MS365_MCP_CLIENT_ID and MS365_MCP_TENANT_ID, together with --cloud gcc-high.

Tools and capabilities

  • Authenticate, select, inspect, and remove Microsoft accounts.
  • Read, create, and manage Microsoft Graph resources exposed by the enabled tool surface.
  • Process mail in a cleaned text view with controls for message count and character limits.
  • Batch up to 20 Graph requests, including dependent writes.
  • Manage Graph webhook subscriptions and renewal workflows.
  • Download Graph binary content as base64, save it locally, or obtain an out-of-band URL.
  • Parse Teams meeting links and create direct attachment-upload URLs.

Limitations and notes

Graph permissions depend on the enabled tools, account type, cloud, and selected scope restrictions. Organization services require organization mode, and some operations require administrator consent. Subscription expiry limits vary by resource type. Pre-authenticated download URLs are primarily available for drive and SharePoint content; mail attachments and meeting recordings use server-assisted handling when attachment URLs are enabled. TOON output is experimental.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Ms 365 MCP Server

softeria/ms-365-mcp-server is an MCP server that connects AI clients to Microsoft 365 and Office through Microsoft Graph. Its main tools cover authentication, mail, calendars, files, Excel, account selection, Graph batching, webhook subscriptions, and binary downloads. Organization mode adds Teams, SharePoint, meetings, and related services.

Install or run it with `npx @softeria/ms-365-mcp-server`. Node.js 20 or newer is recommended. Claude Desktop can start the package through an MCP server configuration that uses `npx` and the package name.

Enable organization mode with `--org-mode`. This adds Teams, chats, online meetings, transcripts, recordings, SharePoint sites and lists, shared mailboxes and calendars, user management, presence, and virtual events, subject to the required Microsoft Graph permissions.

Use `--allowed-scopes` or `MS365_MCP_ALLOWED_SCOPES` to define a permission boundary. The server hides tools whose required Graph scopes are not covered, and `--list-permissions` shows the tool, effective, allowed, and missing scope information.

Use `get-download-url` for drive or SharePoint file content. It returns a short-lived pre-authenticated URL that a client can fetch directly. Mail attachments and meeting recordings may require `download-bytes-to-file` or server-minted attachment URLs instead.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewMs 365 MCP Server AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/softeria-ms-365-mcp-server?style=directory)](https://allmcps.com/mcp/softeria-ms-365-mcp-server)
HTML Embed
<a href="https://allmcps.com/mcp/softeria-ms-365-mcp-server"><img src="https://allmcps.com/api/badge/softeria-ms-365-mcp-server?style=directory" alt="Ms 365 MCP Server on AllMCPs" /></a>