微软做MCP
此MCP(模型上下文协议)服务允许您使用AI助手与Microsoft待办事项进行交互。
安装说明
1.先决条件
- Node.js 16或更高版本
- npm
- Microsoft帐户
- Azure应用程序注册(请参阅下面的设置)
2.安装
安装此工具有两个部分:
- 安装软件包
- 设置身份验证(需要克隆存储库)
步骤1:安装软件包
npm install -g @jhirono/todomcp步骤2:设置身份验证
即使您全局安装该包,也需要克隆存储库以完成身份验证过程:
git clone https://github.com/jhirono/todoMCP.git
cd todoMCP
npm install3.Azure应用程序注册
- 转到 Azure门户
- 导航到“应用程序注册”并创建新注册
- 命名您的应用程序(例如,“待办事项MCP”)
- 对于“支持的帐户类型”,请根据您的需求选择以下选项之一:
- 仅此组织目录中的帐户(单租户) -用于单个组织内 - 任何组织目录中的帐户(任何Azure AD目录-多租户) -适用于多个组织 - 任何组织目录中的帐户和个人Microsoft帐户 -适用于工作账户和个人账户
- 将重定向URI设置为
http://localhost:3000/callback - 创建应用程序后,转到“证书和机密”并创建新的客户端机密
- 转到“API权限”并添加以下权限:
- Microsoft Graph>委派权限: - 任务。阅读 - 任务。读写 - 用户。阅读
- 点击“授予管理员同意”以获取这些权限
4.配置
创建一个 .env 根目录中的文件,其中包含以下信息:
CLIENT_ID=your_client_id
CLIENT_SECRET=your_client_secret
TENANT_ID=your_tenant_setting
REDIRECT_URI=http://localhost:3000/callbackTENANT_ID选项:
organizations-对于多租户组织帐户(如果未指定,则默认)consumers-仅适用于个人Microsoft帐户common-适用于组织账户和个人账户your-specific-tenant-id-对于单租户配置
示例:
# For multi-tenant organizational accounts (default)
TENANT_ID=organizations
# For personal Microsoft accounts
TENANT_ID=consumers
# For both organizational and personal accounts
TENANT_ID=common
# For a specific organization tenant
TENANT_ID=00000000-0000-0000-0000-000000000000用法
完成工作流程
- 验证以获取令牌 (必须从克隆的存储库中完成)
npm run auth这将打开一个浏览器窗口,供您与Microsoft进行身份验证并创建 tokens.json 文件。
- 创建MCP配置文件 (必须从克隆的存储库中完成)
npm run create-config这创建了一个 mcp.json 使用您的身份验证令牌创建文件。
- 设置全局MCP配置
# Copy the mcp.json file to your global Cursor configuration directory
cp mcp.json ~/.cursor/mcp-servers.json这使得Microsoft待办事项MCP在所有Cursor项目中都可用。
- 开始使用您的AI助手
- 在Cursor中,您现在可以在任何项目中直接使用Microsoft待办事项命令 - 尝试以下命令 auth status 或 list up todos 开始吧
Claude Desktop配置文件位于:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 视窗:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
可用工具
auth-status:检查您的身份验证状态get-task-lists:获取所有待办事项列表create-task-list:创建新任务列表update-task-list:更新现有任务列表delete-task-list:删除任务列表get-tasks:获取列表中的所有任务create-task:创建新任务update-task:更新现有任务delete-task:删除任务get-checklist-items:获取任务的清单项create-checklist-item:创建检查表项update-checklist-item:更新检查表项目delete-checklist-item:删除检查表项
局限性
- API需要正确的身份验证和权限
- 根据Microsoft的政策,可能适用费率限制
故障排除
身份验证问题
- “MailboxNotEnabledForRESTAPI”错误:这通常意味着您正在使用个人Microsoft帐户。Microsoft To Do API访问受限于通过Graph API访问个人帐户。
- 令牌获取失败:确保你的
CLIENT_ID,CLIENT_SECRET,以及TENANT_ID在你的.env文件。
- 权限问题:确保您已授予Azure应用程序注册中所需权限的管理员同意。
帐户类型问题
- 工作/学校账户:这些通常与待办事项API配合使用效果最佳。使用
TENANT_ID=organizations或您的特定租户ID。
- 个人账户:这些对待办事项API的访问权限有限。如果您必须使用个人帐户,请尝试
TENANT_ID=consumers或TENANT_ID=common.
正在检查身份验证状态
您可以使用以下工具检查您的身份验证状态 auth-status 工具或通过检查令牌中的过期时间:
cat tokens.json | grep expiresAt要将时间戳转换为可读日期:
date -r $(echo "$(cat tokens.json | grep expiresAt | cut -d ":" -f2 | cut -d "," -f1) / 1000" | bc)