Microsoft 365 MCP Server

An MCP server that enables you to execute Microsoft 365 CLI commands in natural language to manage various areas of Microsoft 365, including Entra ID, OneDrive, OneNote, Outlook, Planner, Power Apps, Power Automate, SharePoint Online, Teams, and much more.

Get this MCP server

An MCP server that enables you to execute Microsoft 365 CLI commands in natural language to manage various areas of Microsoft 365, including Entra ID, OneDrive, OneNote, Outlook, Planner, Power Apps, Power Automate, SharePoint Online, Teams, and much more.

Installation

NPX

npx -y @pnp/cli-microsoft365-mcp-server@latest

From Source Code

npm install
npm run build
npm run start

Configuration

VS Code

{
    "servers": {
        "CLI for Microsoft 365 MCP Server": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@pnp/cli-microsoft365-mcp-server@latest"
          ]
        }
    }
}

Claude Desktop

{
  "mcpServers": {
    "CLI-Microsoft365": {
      "command": "npx",
      "args": ["-y", "@pnp/cli-microsoft365-mcp-server@latest"]
    }
  }
}

Available Tools

Tool Description
m365GetCommands Retrieves all Microsoft 365 CLI commands for use with the Model Context Protocol when selecting the correct command...
m365GetCommandDocs Retrieves documentation for a specified Microsoft 365 CLI command for use with the Model Context Protocol...
m365RunCommand Executes a specified Microsoft 365 CLI command for use with the Model Context Protocol when executing...

Capabilities

  • Execute Microsoft 365 CLI commands in natural language
  • Combine multiple commands to perform complex queries
  • Manage SharePoint Online sites, lists, and content
  • Create and manage Microsoft Teams and channels
  • Manage Power Platform solutions and Power Automate flows
  • Manage Planner plans, buckets, and tasks
  • Work with Entra ID, OneDrive, OneNote, Outlook, and Viva Engage
  • Support for complex multi-step operations

Usage Examples

Add a new list to this site with title "awesome ducks". Then add new columns to that list including them in the default view. The first should be a text description columns and the second one should be a user column. Then add 3 items to this list with some funny jokes about docs added in the description column and adding my user in the user column. use emojis 🙂
Create a new Team on Teams with name "Awesome Ducks" and in the General channel add a welcome post
can you check if I have HoursReportingReminder flow and if so disable it
can you create a new plan in planner to manage work for the awesome ducks. I need some sample buckets and tasks to get started

Notes

Requires Node.js version 20.x or higher and a globally installed Microsoft 365 CLI (npm i -g @pnp/cli-microsoft365). Initial setup requires authentication via m365 login and configuration with specific CLI settings. Works best with Claude Sonnet 4 or Claude Sonnet 3.7. The server uses the existing Microsoft 365 CLI authentication context.

Comments (0)

Sign In Sign in to leave a comment.

Spark Drops

Weekly picks: best new AI tools, agents & prompts

Venture Crew
Terms of Service

© 2026, Venture Crew