Microsoft 365 MCP Server

# Microsoft 365 MCP Server

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "Microsoft 365 MCP Server" with this command: npx skills add makhatib/mcp-microsoft365

Microsoft 365 MCP Server

Full Microsoft 365 integration via Model Context Protocol (MCP).

Features

📧 Mail (Outlook)

  • List, read, send, and search emails
  • Filter by folder (inbox, sent, drafts)
  • HTML email support

📅 Calendar

  • List and create events
  • Teams meeting integration
  • Check availability/free-busy

📁 OneDrive

  • Browse files and folders
  • Search files
  • Read file content

✅ Tasks (Microsoft To-Do)

  • List task lists
  • Create and manage tasks
  • Set importance and due dates

💬 Teams

  • List chats
  • Read and send messages

👥 Users

  • List organization users
  • Get user profiles

Requirements

  • Node.js 18+
  • Azure Entra ID App with Microsoft Graph permissions

Setup

1. Create Azure Entra ID App

  1. Go to Azure Portal
  2. Navigate to Microsoft Entra IDApp registrationsNew registration
  3. Configure:
    • Name: MCP-Microsoft365
    • Supported account types: Single tenant (recommended)
    • Redirect URI: http://localhost:3000/callback

2. Add API Permissions

Add these Application permissions for Microsoft Graph:

Mail.Read, Mail.Send, Mail.ReadWrite
Calendars.Read, Calendars.ReadWrite
Files.Read.All, Files.ReadWrite.All
Tasks.Read.All, Tasks.ReadWrite.All
Chat.Read.All, Chat.ReadWrite.All
User.Read.All

Important: Click "Grant admin consent"

3. Get Credentials

Save these values:

  • Application (client) ID
  • Directory (tenant) ID
  • Client Secret (create under Certificates & secrets)

4. Install

# Clone/download the skill
cd mcp-microsoft365

# Install dependencies
npm install

# Build
npm run build

5. Configure mcporter

mcporter config add m365 --stdio "node /path/to/mcp-microsoft365/dist/index.js"

Edit config/mcporter.json to add environment variables:

{
  "mcpServers": {
    "m365": {
      "command": "node /path/to/dist/index.js",
      "env": {
        "TENANT_ID": "your-tenant-id",
        "CLIENT_ID": "your-client-id",
        "CLIENT_SECRET": "your-client-secret",
        "DEFAULT_USER": "user@yourdomain.com"
      }
    }
  }
}

Usage

Email

# List recent emails
mcporter call m365.m365_mail_list top:5

# Send email
mcporter call m365.m365_mail_send to:"recipient@email.com" subject:"Hello" body:"<p>Hi!</p>"

# Search
mcporter call m365.m365_mail_search query:"important"

Calendar

# List events
mcporter call m365.m365_calendar_list top:10

# Create event with Teams meeting
mcporter call m365.m365_calendar_create subject:"Team Sync" start:"2026-01-27T10:00:00" end:"2026-01-27T11:00:00" isOnline:true

Files

# List OneDrive root
mcporter call m365.m365_files_list

# Search files
mcporter call m365.m365_files_search query:"report"

Tasks

# List task lists
mcporter call m365.m365_tasks_lists

Teams

# List chats
mcporter call m365.m365_teams_chats top:10

19 Available Tools

ToolDescription
m365_mail_listList emails
m365_mail_readRead email by ID
m365_mail_sendSend email
m365_mail_searchSearch emails
m365_calendar_listList events
m365_calendar_createCreate event
m365_calendar_availabilityCheck free/busy
m365_files_listList files
m365_files_searchSearch files
m365_files_readRead file content
m365_files_infoGet file metadata
m365_tasks_listsList task lists
m365_tasks_listList tasks
m365_tasks_createCreate task
m365_teams_chatsList chats
m365_teams_messagesRead messages
m365_teams_sendSend message
m365_users_listList users
m365_user_infoGet user profile

Author

Mahmoud Alkhatib

License

MIT

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

office secretary

A digital administrative assistant for Microsoft 365 (Outlook & OneDrive).

Registry SourceRecently Updated
0817
Profile unavailable
General

Email Assistant

多邮箱管理助手,支持 Gmail、163、QQ、Outlook、Hotmail。功能:(1) 读取收件箱并展示邮件摘要 (2) 关键词分析标记重要邮件 (3) 自动提取邮件中的日程信息并生成日历事件。适用于需要统一管理多个邮箱、避免错过重要邮件和日程的用户。

Registry SourceRecently Updated
0309
Profile unavailable
General

Full access to all Exchange 2010 EWS functions, should work with other EWS Open Source

Full access to Exchange 2010 EWS for managing emails, folders, attachments, calendar events, contacts, tasks, and out-of-office settings.

Registry SourceRecently Updated
11.2K
Profile unavailable