PlugWiki
ms-365-mcp-server logo

Microsoft 365 MCP Server: Setup for Claude Code, Cursor and Other Apps

CommunityLocal
Getnpm@softeria/ms-365-mcp-serversofteria/ms-365-mcp-server

Not the official Microsoft 365 MCP server. This one is built by the community. Microsoft 365 makes its own: Microsoft Work IQ →

Lets Claude, Cursor and other assistants read and send Outlook mail, manage your calendar, files, Excel, To Do and Teams through Microsoft 365.

This is a community server by Softeria, not a Microsoft product. It runs on your computer and signs in to your Microsoft account with a device code. By default it covers personal features such as mail, calendar, OneDrive, Excel, OneNote and To Do. Teams, SharePoint and other work features need the organization flag. It can send mail and delete data, so start with the read-only flag.

Good for

  • Anyone who wants Claude to triage email and plan the calendar
  • Work and school users who need Teams, SharePoint and meeting transcripts in chat
  • IT teams that lock it down with read-only mode, presets and scope allowlists
  • Analysts who read and edit Excel workbooks stored in OneDrive

Works in

12 should work

Tap an app to see how to set it up and any known problems.

Install ms-365-mcp-server

Claude Code

  1. 1

    Copy this prompt.

    Add the ms-365-mcp-server server to Claude Code. Run this command:
    
    claude mcp add ms-365 -- npx -y @softeria/ms-365-mcp-server
    
    Then check that it loaded and tell me if I need to sign in or restart.
  2. 2

    Paste it into Claude Code. It shows the change and asks before running it.

Requires Node.js, Node.js 20 or newer; sign in with the login tool.

Add --org-mode to the args for work or school accounts. Add --read-only to block writes, or --preset mail (or calendar, files, teams) to load fewer tools. Personal Microsoft accounts should set MS365_MCP_TENANT_ID to consumers. After install, ask the assistant to run the login tool and confirm with verify-login.

Built from the package data we hold. Not yet tested by us.

Tools

  • Lists emails in your mailbox

    Lists messages from your Outlook mailbox so the assistant can find and summarise mail.

    Try: “Show my unread emails from today.”

    Network · list-mail-messages

  • Opens one email

    Returns one email with its content.

    Try: “Open the email from Dana about the budget.”

    Network · get-mail-message

  • Sends an email

    Sends a new email from your account.

    Try: “Email Sam the meeting notes.”

    Write · send-mail

  • Saves an email draft

    Creates a draft in your mailbox without sending it.

    Try: “Draft a reply to Dana and save it.”

    Write · create-draft-email

  • Replies to an email

    Sends a reply to a message in your mailbox.

    Try: “Reply yes to Dana's invite.”

    Write · reply-mail-message

  • Forwards an email

    Forwards a message to people you name.

    Try: “Forward this invoice to accounting.”

    Write · forward-mail-message

  • Moves an email to a folder

    Moves a message to another mail folder.

    Try: “Move newsletters to the Reading folder.”

    Write · move-mail-message

  • Deletes an email

    Deletes a message from your mailbox.

    Try: “Delete the spam from this morning.”

    Delete · delete-mail-message

  • Creates an inbox rule

    Creates a rule that sorts or handles incoming mail.

    Try: “Create a rule that files mail from billing@ into Finance.”

    Write · create-mail-rule

  • Lists your calendar events

    Lists events on your calendar.

    Try: “What is on my calendar tomorrow?”

    Network · list-calendar-events

  • Shows events in a date range

    Returns calendar events between two dates, including repeating ones.

    Try: “What meetings do I have next week?”

    Network · get-calendar-view

  • Adds a calendar event

    Creates an event on your calendar, with attendees if you give them.

    Try: “Book a 30 minute call with Sam on Friday at 2pm.”

    Write · create-calendar-event

From the official docs

Permissions

high risk · 4 things to watch · 2 advisories

High risk

The assistant can read and send your mail, change your calendar and files, and delete items with your Microsoft permissions. Turn on the read-only flag and limit tools with a preset until you trust it.

What it can do

Watch out for

  • It can send email and delete your data

    The assistant can send mail, delete messages, files and events, and post in Teams. Start with the read-only flag and approve each send or delete. github.com

  • It acts as you across Microsoft 365

    Calls run with your account permissions across mail, files and chats. Use presets or the allowed-scopes option to expose only the apps you need. github.com

  • App mode applies to the whole tenant

    App mode uses application permissions with no signed-in user, so one grant such as Mail.Read can reach every mailbox. Do not use it unless an admin approved it. github.com

  • HTTP mode can expose file tools

    The local file tools over HTTP let anyone who reaches the port write files as the server user. The server refuses them unless it is bound to localhost. github.com

Security advisories

Technical details
Turning on read-onlyStart the server with --read-only or set READ_ONLY=true.
Talks toMicrosoft Graph and login endpoints (global by default; China 21Vianet and GCC High are supported)
Sign-in and keysTokens are cached in the OS credential store, with a file fallback.
Scopes
  • Permissions follow the enabled tools; see --list-permissions

Questions

Is this the official Microsoft 365 MCP server?

No. It is a community project by Softeria that uses the Microsoft Graph API. It is not made or supported by Microsoft.

Can I run it read-only?

Yes. Add the read-only flag or set READ_ONLY=true and it turns off write operations. You can also limit tools with a preset such as mail or calendar.

Does it work with work and school accounts?

Yes, but you must start it with the organization mode flag to get Teams, SharePoint, shared mailboxes and similar features. Without it only personal-account features are available.

Do I need to register an Azure app?

Not by default. It uses a built-in app and a device-code sign-in. GCC High has no built-in app, so you register your own and set the client ID.

Why does sign-in keep failing on a personal Microsoft account?

The README says personal accounts should set the tenant to consumers, because since June 2026 the default common authority is rejected at the first token refresh.

Is the tool list complete?

No. The server has more than 300 tools, each mapped to one Microsoft Graph endpoint, and this list shows a sample. Presets or discovery mode load fewer tools to save context.

How do I add it to Claude Desktop?

Use the Claude Desktop tab in the install box above, then ask Claude to run the login tool to sign in.

Information

updated Nov 2, 2026

Publisher
Community
Package
@softeria/ms-365-mcp-server
Registry
npm
Transport
stdio, Streamable HTTP
Auth
OAuth
Version
0.178.0
License
MIT
Last commit
Oct 30, 2026
Open issues
8
Listed in
Official MCP registry

GitHubnpmOfficial MCP RegistryChangelogIssues

Other Microsoft 365 MCP servers

Sources

Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.

Show all 2
  1. github.com · github.com
  2. github.com · github.com

Facts from the official MCP registry, GitHub, npm, PyPI and the Docker catalog. Updated Nov 2, 2026.