副驾驶协作MCP
连接的MCP服务器 到 微软365复制品 (合作)。
在终端上询问有关您的电子邮件、日历、团队消息、会议、文档、联系人和组织数据的问题。发送团队消息(带图像附件)、电子邮件(带附件),并执行其他操作。
需求
- Python 3.10+
- Microsoft 365复制副本许可证 和 副驾驶协同工作 启用
快速开始
- 克隆并安装依赖项
git clone https://github.com/msartem/copilot_cowork_mcp.git
cd copilot_cowork_mcp
pip install -r requirements.txt- 从repo目录启动Copilot CLI
copilot这 .mcp.json 在repo中自动配置MCP服务器。
- 登录 (仅限第一次)
副驾驶将自动呼叫 cowork_sign_in 必要时。边缘 浏览器窗口打开--使用您的Microsoft 365帐户登录。这 身份验证代码通过Playwright自动捕获(无需手动复制粘贴)。
- 试试看
Summarize my unread emails from today
What meetings do I have tomorrow?
Send a Teams message to myself saying hello from CLI
Send an email to John saying the report is ready
Send this image to my Teams DM: ./screenshot.png首次登录后,身份验证通过缓存的刷新令牌保持静默(约90天 寿命、自动更新)。后续使用时没有浏览器窗口。
替代方案:插件安装
如果您更喜欢Copilot CLI插件系统(可从任何目录工作):
# Install the plugin (clones repo + registers MCP server)
/plugin install msartem/copilot_cowork_mcp
# Still need to install Python dependencies from the cloned location
pip install -r ~/.copilot/installed-plugins/copilot_cowork_mcp/requirements.txt备注:由于这是一个Python项目,因此这两种方法都需要git clone+pip install插件方法为您管理克隆和MCP配置,因此服务器在全局范围内可用,而不仅仅是从repo目录中可用。
运作原理
- 您向Copilot CLI询问了有关M365数据的问题
- Copilot将其路由到
cowork_send_message工具 - MCP服务器将其转发到Microsoft 365 Copilot
- 响应流回到您的终端
对于操作(发送消息、发送电子邮件等), cowork_send_message 返回 然后查看操作细节 cowork_action_approve 执行它。这给出了 在发送任何内容之前,您有机会确认。
You → Copilot CLI → cowork MCP → M365 Copilot → your M365 data工具
| 工具 | 说明 |
|---|---|
cowork_sign_in | 登录Microsoft 365(一次性打开Edge) |
cowork_send_message | 向M365副驾驶发送信息(多回合) |
cowork_send_image | 将图像(含可选文本)发送到M365 Copilot——用于团队消息或电子邮件附件 |
cowork_action_approve | 批准并执行待处理的操作(发送电子邮件、团队消息等) |
cowork_new_session | 开始新的对话 |
cowork_session_info | 显示会话状态(用户、运行时、回合数) |
认证
身份验证使用 剧作家 到 通过Microsoft Edge自动登录浏览器。这在以下方面同样有效 macOS、Linux和Windows——没有特定于平台的代码。
首次登录
- 副驾驶电话
cowork_sign_in(或手动触发) - 将打开一个Edge窗口,显示Microsoft登录页面
- 使用您的M365帐户登录(SSO可能会自动完成此操作)
- 身份验证代码被自动捕获——浏览器关闭
- 令牌在本地缓存
后续运行
使用缓存的刷新令牌——无需浏览器窗口,也不需要交互。 令牌每45分钟在后台自动刷新一次。
浏览器选择
Playwright默认使用Microsoft Edge。要使用其他基于Chromium的浏览器:
export COWORK_BROWSER=chrome # or: msedge (default), chromium备注:chromium需要playwright install chromium.Edge和Chrome 直接使用已安装的浏览器,无需额外安装。
手动身份验证
python auth.py # Interactive sign-in
python auth.py logout # Clear cached tokens令牌存储
| 平台 | 缓存位置 |
|---|---|
| macOS/Linux | ~/.copilot-cowork-mcp/token_cache.json |
| 窗户 | %LOCALAPPDATA%\copilot-cowork-mcp\token_cache.json |
环境变量
| 变量 | 描述 |
|---|---|
COWORK_TOKEN | 手动JWT覆盖(跳过浏览器身份验证) |
COWORK_TENANT | Azure AD租户ID(默认值: common) |
COWORK_BROWSER | 登录浏览器: msedge, chrome, chromium |
COWORK_SHOW_THINKING | 在行动响应中显示Cowork的推理(默认值: false) |
技术细节
看 技术.md 有关身份验证、通信协议、SSE事件和操作批准流程的详细信息。
免责声明
这是一个独立的社区项目-- 不隶属于微软或不受微软支持.
它的工作原理是与驱动 M365副驾驶网络应用程序这些API可能 更改或中断,恕不另行通知。使用风险自负。
