Back to MCP Servers
🔌

softeria/ms-365-mcp-server

MITAPI key required

📇 ☁️ - MCP server that connects to Microsoft Office and the whole Microsoft 365 suite using Graph API (including Outlook, mail, files, Excel, calendar)

TypeScriptCommunication

Install

npx -y @softeria/ms-365-mcp-server

Required environment variables

OPENAI_API_KEYSet in your MCP config
MS365_MCP_CLIENT_SECRETSet in your MCP config
MS365_MCP_OAUTH_TOKENSet in your MCP config
MS365_MCP_KEYSet in your MCP config
MS365_MCP_TOKENSet in your MCP config
AZURE_CLIENT_SECRETSet in your MCP config

claude_desktop_config.json

claude_desktop_config.json
{
  "mcpServers": {
    "softeria-ms-365-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@softeria/ms-365-mcp-server"
      ],
      "env": {
        "OPENAI_API_KEY": "<YOUR_OPENAI_API_KEY>",
        "MS365_MCP_CLIENT_SECRET": "<YOUR_MS365_MCP_CLIENT_SECRET>",
        "MS365_MCP_OAUTH_TOKEN": "<YOUR_MS365_MCP_OAUTH_TOKEN>",
        "MS365_MCP_KEY": "<YOUR_MS365_MCP_KEY>",
        "MS365_MCP_TOKEN": "<YOUR_MS365_MCP_TOKEN>",
        "AZURE_CLIENT_SECRET": "<YOUR_AZURE_CLIENT_SECRET>"
      }
    }
  }
}

Add this to your Claude Desktop config file. Find it at ~/Library/Application Support/Claude/claude_desktop_config.json on macOS.

What this does

softeria/ms-365-mcp-server exposes a set of tools to Claude over the Model Context Protocol. After you add it to claude_desktop_config.json (snippet above) and restart Claude Desktop, those tools become callable inside any conversation. That makes it useful when you want Claude to reach into your team's communication channels without copy-pasting context every turn.

Requirements

This server needs the following environment variables to be set before it can run:

OPENAI_API_KEY
MS365_MCP_CLIENT_SECRET
MS365_MCP_OAUTH_TOKEN
MS365_MCP_KEY
MS365_MCP_TOKEN
AZURE_CLIENT_SECRET

Set these via the env object in your MCP config (see claude_desktop_config.json snippet above).

Common use cases

  • Read recent threads, channels, or DMs to summarize team activity
  • Send messages, replies, or status updates as part of a workflow
  • Bring stakeholder context into a Claude conversation without copy-paste