跳过安装。2 分钟内即可运行。
在 cloud.anythingmcp.com 开始免费试用,一键添加 Microsoft Planner,然后将你的 AI 客户端(Claude、ChatGPT、Copilot 或 Cursor)指向生成的 MCP 端点。无需 Docker,无需 git clone,无需任何工程经验。
摘要
让你的 AI 使用 Microsoft Planner:查看你在所有计划中的任务,浏览团队的计划和存储桶,创建和分配任务,更新进度、截止日期和清单。通过 Microsoft Graph 支持 Microsoft 365 工作或学校账户。
试试这样问
Microsoft Planner 的示例提示
点击任意提示即可复制,然后粘贴到 Claude、ChatGPT、Cursor、Gemini、Copilot 或 OpenClaw 中,在该连接器上运行。
Claude 是 AI,可能会出错。请核对回答。
💡 无需安装? 直接使用 cloud.anythingmcp.com。 登录、点击 Connectors → Microsoft Planner、粘贴凭证、生成 MCP API key,即可完成。无 Docker、无
git clone、无本地服务器。
Microsoft Planner + ChatGPT
让你的 AI 使用 Microsoft Planner:查看你在所有计划中的任务,浏览团队的计划和存储桶,创建和分配任务,更新进度、截止日期和清单。通过 Microsoft Graph 支持 Microsoft 365 工作或学校账户。
前提条件
完整的设置说明已内置在连接器中 (在 store 中选择连接器时可见)。所需环境变量:
MICROSOFT_CLIENT_ID, MICROSOFT_CLIENT_SECRET, MICROSOFT_TENANT_ID
步骤 1 — 获取凭证
-
打开 Microsoft Entra 管理中心(entra.microsoft.com)或 Azure 门户,进入 Applications → App registrations → New registration。
-
为应用命名(例如 "AnythingMCP Microsoft 365"),并选择 Supported account types。这一选择决定
MICROSOFT_TENANT_ID填什么:- Accounts in this organizational directory only(单租户):只有你组织内的用户可以登录。填写应用 Overview 页面上的 Directory (tenant) ID(一个 GUID),或你的域名,例如
contoso.onmicrosoft.com。 - Accounts in any organizational directory(多租户):填写
organizations。 - Accounts in any organizational directory and personal Microsoft accounts:不适用于此连接器。Planner 不支持个人 Microsoft 账户,因此
consumers无法使用;填写common时也只有工作或学校账户能使用。
如果该值与账户类型不符,Microsoft 会拒绝登录(AADSTS50194 或 AADSTS50020)。
- Accounts in this organizational directory only(单租户):只有你组织内的用户可以登录。填写应用 Overview 页面上的 Directory (tenant) ID(一个 GUID),或你的域名,例如
-
在 Redirect URI 下选择平台 Web,填写
https://cloud.anythingmcp.com/api/mcp-oauth/callback。如果你自行托管 AnythingMCP,则改为填写https://your-anythingmcp-host/api/mcp-oauth/callback。URI 必须逐字符一致,否则 Microsoft 会返回 AADSTS50011。 -
打开 API permissions → Add a permission → Microsoft Graph → Delegated permissions,添加
offline_access、User.Read和Tasks.ReadWrite。offline_access让 Microsoft 签发刷新令牌;缺少它,连接器会在授权一小时后停止工作。 -
打开 Certificates & secrets → New client secret。复制密钥的 Value,而不是 Secret ID;它只显示一次。记下到期日期:密钥过期后,连接器会停止工作,直到你创建新密钥并填入。
-
将 Overview 页面上的 Application (client) ID 填入
MICROSOFT_CLIENT_ID,将密钥值填入MICROSOFT_CLIENT_SECRET,将第 2 步中的租户值填入MICROSOFT_TENANT_ID,然后安装连接器。 -
在连接器页面点击 Authorize with Provider,用 AI 要使用其计划的工作或学校账户登录。刷新令牌会加密保存,访问令牌(有效期约一小时)会自动续期。
-
先运行
microsoft_planner_list_my_tasks:它会显示在你所有计划中分配给你的任务。
一个 Entra 应用服务所有 Microsoft 连接器:你为 Outlook、OneDrive、SharePoint 或 Excel 连接器创建的应用注册在这里同样适用。打开它,在 API permissions 下添加第 4 步中的权限,保留相同的重定向 URI,并复用同一个客户端 ID、密钥和租户。每个连接器在授权时只请求它自己需要的权限:
- Outlook:
Mail.ReadWrite、Mail.Send、Calendars.ReadWrite - OneDrive:
Files.ReadWrite - Excel:
Files.ReadWrite(工作簿位于 SharePoint 中或由他人共享给你时,还需要Files.ReadWrite.All) - SharePoint:
Sites.ReadWrite.All和Files.ReadWrite.All - OneNote:
Notes.ReadWrite - Microsoft To Do:
Tasks.ReadWrite - Planner:
Tasks.ReadWrite
它们都还需要 offline_access 和 User.Read。
管理员同意:这些委托权限通常不需要管理员,但许多组织关闭了用户同意。如果登录时显示 "Need admin approval"(AADSTS65001 或 AADSTS90094),需要租户管理员打开一次应用注册,点击 API permissions → Grant admin consent 为整个组织授予同意。之后每个用户都可以授权。每个连接器仍然只能处理登录账户有权查看的内容。
需要工作或学校账户:Planner 是面向组织的 Microsoft 365 的一部分。Outlook.com 等个人 Microsoft 账户没有 Planner,会收到 403 或 400 错误。AI 只能看到你所属的 Microsoft 365 组和团队的计划。
权限:Planner 只需要 Tasks.ReadWrite,单独使用时不需要管理员。Group.Read.All 或 Group.ReadWrite.All 也可以,但需要管理员同意,所以连接器不会请求它们。Microsoft To Do 连接器使用同一个 Tasks.ReadWrite 权限。
只读设置:在连接器的 OAuth 设置中将 scopes 替换为 offline_access User.Read Tasks.Read,重新授权,并停用 microsoft_planner_create_task、microsoft_planner_update_task、microsoft_planner_update_task_details 和 microsoft_planner_create_bucket。
改动要等你确认:在创建、修改或移动任务或存储桶之前,AI 会告诉你它要做什么,并等你确认。计划是共享的,每次改动整个组都能看到。
安装时默认关闭:microsoft_planner_delete_task。删除会让整个团队都失去这个任务,而连接器无法撤销,所以只有在确实需要 AI 删除任务时才打开它。
计划、存储桶和分配:团队的计划位于该团队的 Microsoft 365 组中。AI 会先找到组,再找到计划、计划中的存储桶(看板上的列)和任务。进度为 0(未开始)、50(进行中)或 100(已完成),优先级为紧急、重要、中或低。描述、清单和链接位于任务的详细信息中。要分配任务,AI 需要对方的用户 id:你的 id 来自 microsoft_planner_get_me,同事的 id 来自已分配给他的任务,因为连接器无法按姓名查找人员。Planner 每次修改都会检查版本标记;如果有人在此期间改过任务,AI 会重新读取后再试。
常见错误:401 InvalidAuthenticationToken 表示授权已被撤销或客户端密钥已过期;如有需要填入新密钥,然后再次点击 Authorize with Provider。403 表示缺少 Tasks.ReadWrite 或该权限未获同意、你不是该计划所属组的成员、达到了计划的上限(例如任务或存储桶过多),或者这是个人 Microsoft 账户。404 表示 id 错误或项目已被删除。409 或 412 表示项目在此期间已被修改:AI 会重新读取后再试。400 表示某个值格式不对,例如用了另一个计划的存储桶,或日期没有时区。429 表示 Microsoft Graph 正在限制该账户的请求:稍等片刻后重试。
连接器不创建或删除计划,不读取任务评论(评论在组的对话中),不上传附件,不打开 Planner 高级版计划,也不在目录中查找人员。
步骤 2 — 安装 adapter
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
步骤 3 — 在 ChatGPT 中添加连接器
你的服务器 URL: 在 AnythingMCP 中打开 MCP Servers → 此连接器所在的服务器,复制它的 URL(
https://cloud.anythingmcp.com/mcp/…)。本指南中出现YOUR_SERVER_ID的地方都用它替换。
ChatGPT 在网页版的 Plugins 页面把 MCP 服务器添加为插件,仅付费套餐可用,不再需要开发者模式。在 Business 工作区中只有管理员和所有者可以添加;在 Enterprise 和 Edu 中,管理员可以授予 Create plugins with MCPs 权限。
- 前往 chatgpt.com/plugins,点击 +,然后选择 Add custom MCP server。
- 填写名称,例如 Name:
Microsoft Planner。 - 在 Connection 下的 Server URL 中填入
https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID,Authentication 保持为 OAuth。 - 选择 I understand and want to continue,然后点击 Create as a plugin。ChatGPT 提示时,登录 AnythingMCP 并允许访问。
- 在个人插件中安装这个新插件,然后在对话中输入 @ 并选择它。
可用工具
| Tool | What it does |
|---|---|
microsoft_planner_get_me | Get the signed-in user's id, displayName, mail and userPrincipalName |
microsoft_planner_list_my_tasks | List the Planner tasks assigned to the signed-in user, across all plans: id, title, planId, bucketId, percentComplete (0, 50, 100)… |
microsoft_planner_list_my_plans | List the plans shared with the signed-in user: id, title, owner (the group id), container, createdDateTime |
microsoft_planner_list_my_groups | List the groups the signed-in user is a direct member of: id, displayName, groupTypes (Unified for Microsoft 365 groups, which can own… |
microsoft_planner_list_group_plans | List the plans owned by a Microsoft 365 group (a team's plans live in its group): id, title, createdDateTime |
microsoft_planner_get_plan | Get one plan: id, title, owner, container, createdBy, createdDateTime, @odata.etag |
microsoft_planner_get_plan_details | Get a plan's details: categoryDescriptions (the label names behind category1 ... category25) and sharedWith (user ids the plan is shared… |
microsoft_planner_list_buckets | List a plan's buckets (the board columns, e.g. To do, Doing, Done): id, name, planId, orderHint |
microsoft_planner_list_plan_tasks | List all tasks of a plan: id, title, bucketId, percentComplete, priority, dueDateTime, assignments, appliedCategories, @odata.etag |
microsoft_planner_list_bucket_tasks | List the tasks in one bucket, with the same fields as microsoft_planner_list_plan_tasks |
microsoft_planner_get_task | Get one task with its current @odata.etag, which microsoft_planner_update_task needs |
microsoft_planner_get_task_details | Get a task's details: description (the notes), checklist (items keyed by id, each with title and isChecked), references (attached links)… |
microsoft_planner_create_task | Create a task in a plan and bucket, with assignees, dates, priority and labels |
microsoft_planner_update_task | Change a task: only the fields you pass are changed |
microsoft_planner_update_task_details | Change a task's description, checklist or links |
microsoft_planner_create_bucket | Create a bucket (board column) in a plan |
microsoft_planner_delete_task | Delete a task for everyone in the plan |
示例提示
- “Planner 里有哪些任务分配给了我?其中哪些已经逾期?”
- “看看市场团队的计划:每个存储桶里有多少任务,哪些还没完成?”
- “在“活动”计划的“进行中”存储桶里创建任务“准备展会展位”,分配给我,优先级为重要,10 月 31 日到期。”
- “给这个任务添加清单“订购传单”“预约展位清洁”和“打印胸牌”,并把进度设为进行中。”
FAQ
ChatGPT 免费套餐能用自定义 MCP 服务器吗? OpenAI 只为付费套餐提供自定义 MCP 服务器的说明,Free 套餐不在其列。
下一步
这份指南对你有帮助吗?