此 MCP 服务器允许使用自然语言执行任何 Microsoft 365 CLI 命令。它可以处理复杂的提示,并将其作为一系列 Microsoft 365 CLI 命令来执行,以尝试满足用户的请求。通过这种方式,您可以管理 Microsoft 365 的许多不同领域,例如:Entra ID、OneDrive、OneNote、Outlook、Planner、Power Apps、Power Automate、Power Platform、SharePoint Embedded、SharePoint Online、Teams、Viva Engage 等等。
为了获得最佳效果,请与 Claude Sonnet 4 或 Claude Sonnet 3.7 一起使用。
npm i -g @pnp/cli-microsoft365)此 MCP 服务器使用全局安装的 CLI for Microsoft 365,您需要使用 npm i -g @pnp/cli-microsoft365 进行全局安装。
安装 CLI for Microsoft 365 后,运行以下命令进行初始设置:
m365 setup
更多信息,请参阅 登录到 Microsoft 365
设置 CLI for Microsoft 365 后,请使用以下命令更新其配置:
m365 cli config set --key prompt --value false
m365 cli config set --key output --value text
m365 cli config set --key helpMode --value full
这将确保当出现错误或命令未正确执行时,MCP 服务器可以从 CLI for Microsoft 365 获取尽可能多的信息。
MCP 服务器不会为您进行身份验证。您需要首先使用 CLI for Microsoft 365 的 m365 login 命令进行身份验证。一旦认证成功,MCP 服务器将在运行任何工具时使用相同的认证上下文。
最后,在您选择的 MCP 客户端上安装 MCP 服务器,参考所选 MCP 主机的说明。下面,您可以找到针对 VS Code 的指导。
有多种方法可以将 MCP 服务器添加到 VS Code。最常见的方法是:
打开命令面板(Ctrl+Shift+P 或 macOS 上的 Cmd+Shift+P),并键入 MCP: 添加服务器。
选择 Command (stdio) 作为服务器类型。
输入运行 MCP 服务器的命令:
npx -y @pnp/cli-microsoft365-mcp-server@latest
命名服务器(例如,CLI for Microsoft 365 MCP Server)。
结果,您应该在 .vscode/mcp.json 文件中具有以下配置:
{
"servers": {
"CLI for Microsoft 365 MCP Server": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@pnp/cli-microsoft365-mcp-server@latest"
]
}
}
}
现在,当您在 VS Code 中打开 GitHub Copilot 聊天时,您应该能够从可用的 MCP 服务器列表中选择 CLI for Microsoft 365 MCP Server 并开始使用它通过自然语言管理 Microsoft 365。在提示中指定“使用 CLI for Microsoft 365,我想……”,GitHub Copilot Agent 将使用 MCP 服务器执行您的请求。
如果您正在使用 GitHub Copilot CLI,可以通过以下方式将 CLI for Microsoft 365 MCP 服务器添加到 Copilot:
copilot
/mcp add
cli-microsoft365-mcp-server本地npx"-y", "@pnp/cli-microsoft365-mcp-server@latest"
其余字段可以保留默认值。之后点击 Ctrl+S 保存 MCP 服务器并点击 q 退出 MCP 表单。
现在,您应该能够在 GitHub Copilot CLI 中使用 CLI for Microsoft 365 MCP 服务器,只需在提示中指定即可,例如“使用 CLI for Microsoft 365,我想……”。
当使用 Claude Desktop 时,您可以通过使用此存储库中的专用 .mcpb 文件(推荐)或手动添加到 Claude Desktop 配置来添加 MCP 服务器。
Ctrl + ,)cli-microsoft365-mcp-server.mcpb 文件。完成!现在您应该能够在 Claude Desktop 中使用 CLI-Microsoft365 MCP 服务器。
Ctrl + ,)claude_desktop_config.json。
向文件中添加以下配置。{
"mcpServers": {
"CLI-Microsoft365": {
"command": "npx",
"args": ["-y", "@pnp/cli-microsoft365-mcp-server@latest"]
}
}
}
注意:在 Windows 中,关闭窗口时 Claude 不会退出,而是会在后台运行。您可以在系统托盘中找到它。右键单击图标并选择退出以完全退出应用程序。
完成!现在您应该能够在 Claude Desktop 中使用 CLI-Microsoft365 MCP 服务器。
为了获得最佳效果,请与 Claude Sonnet 4 或 Claude Sonnet 3.7 一起使用。
以下使用案例仅是一些示例,展示了如何使用此 MCP 服务器。它能够处理许多不同的任务,因此请随意实验并使用自然语言管理整个 Microsoft 365。
您还可以查看 CLI for Microsoft 365 维基以查找更多 场景,了解如何使用 CLI for Microsoft 365 管理 Microsoft 365。
在以下示例中,MCP 服务器创建了一个包含新列的 SharePoint 列表,并填充了一些测试项。
提示: "在此站点上添加一个名为“awesome ducks”的新列表。然后向该列表添加新列,并将其包含在默认视图中。第一个应该是文本描述列,第二个应该是用户列。 然后向此列表添加三个项目,在描述列中添加一些关于文档的有趣笑话,并在我的用户列中添加我的用户。使用表情符号 🙂"

以下示例显示了如何创建一个新的 Microsoft Teams 团队并在通用频道中添加欢迎帖子。
提示: "在 Teams 上创建一个名为“Awesome Ducks”的新团队,并在通用频道中添加一个欢迎帖子"

在示例中,MCP 服务器禁用了 Power Automate 流程。
提示: "你能检查一下我是否有 HoursReportingReminder 流程,如果有,请禁用它"

在以下示例中,MCP 服务器创建了一个新的 Planner 计划,其中包含示例桶和任务。
提示: "你能创建一个新的 Planner 计划来管理 awesome ducks 的工作吗?我需要一些示例桶和任务来开始"

| 工具 | 描述 |
|---|---|
| m365GetCommands | 获取所有 CLI for Microsoft 365 命令,供模型上下文协议用于为给定任务选择正确的命令 |
| m365GetCommandDocs | 获取指定 CLI for Microsoft 365 命令的文档,供模型上下文协议提供有关命令的详细信息,包括示例、使用案例和选项描述 |
| m365RunCommand | 运行指定的 CLI for Microsoft 365 命令,供模型上下文协议执行命令并返回结果和响应原因 |
首先运行 npm install 来安装所有依赖项。
然后,要构建项目,请运行:
npm run build
也可以从本地构建在 VS Code 中运行 MCP 服务器,以便由 GitHub Copilot Agent 使用。 首先,使用以下命令启动 CLI for Microsoft 365 MCP 服务器:
npm run start
现在转到 VS Code GitHub Copilot Agent 模式,点击工具图标,然后选择 添加更多工具。然后选择 添加 MCP 服务器 并选择 Command (stdio),并输入以下命令:
node FULL_PATH_TO_YOUR_PROJECT/dist/index.js
点击 Enter 并命名它。建议将其添加到 workspace 范围内进行测试。之后,打开您的 .vscode/mcp.json 文件并修改它,以便传递所需的认证环境变量。
{
"servers": {
"m365-mcp-server": {
"type": "stdio",
"command": "node",
"args": [
"FULL_PATH_TO_YOUR_PROJECT/dist/index.js" // 例如 C:/workspace/repo/microsoft-365-mcp-server/dist/index.js
]
}
}
}
测试 CLI for Microsoft 365 MCP 服务器的一种方法是使用 MCP 检查器。 这种设置主要用于调试目的和本地测试 MCP 服务器。 首先,使用以下命令启动 MCP 服务器:
npm run start
现在,为了运行您的 MCP 服务器的检查器,您需要在存储库根文件夹位置运行以下命令:
npx @modelcontextprotocol/inspector node dist/index.js
之后,等待检查器启动并在浏览器中打开检查器。您应该能看到 MCP 服务器正在运行,并且能够查询工具并在本地执行它们。