Planner MCP Server
This MCP server enables Claude to manage Microsoft Planner via the Microsoft Graph API. Key capabilities include:
Authentication
Initiate OAuth 2.0 device code flow (
auth_start) and poll for completion (auth_poll), with token persistence.
Plans
List all plans (
list_plans), retrieve plan details (get_plan), and get extended info including category/label descriptions (get_plan_details).
Buckets
List buckets within a plan (
list_buckets) and create new buckets (create_bucket).
Tasks
List (
list_tasks): Filter by plan, bucket, priority (Urgent/Important/Medium/Low), due/creation/completion dates, completion percentage, assigned users, categories, and search keywords; supports pagination.Get (
get_task): Retrieve detailed task info, optionally including description, checklist, and references.Create (
create_task): Add tasks with title, description, priority, due/start dates, assignments, categories, and checklist items.Update (
update_task): Modify title, description, priority, bucket, dates, completion percentage, assignments, categories, and checklist items.Delete (
delete_task): Permanently remove a task.Checklists: Add, update, or remove checklist items on tasks.
Users & Groups
Retrieve the signed-in user's profile (
get_me) and list members of a Microsoft 365 group (list_group_members), with filtering and search support.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Planner MCP ServerShow my urgent tasks in the 'Project Alpha' plan."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Planner MCP Server
A Model Context Protocol (MCP) server that enables Claude to interact with Microsoft Planner through the Microsoft Graph API.
Features
Authentication: OAuth 2.0 device code flow for secure authentication
Plans Management: List and view Planner plans
Buckets Management: List, create, and manage buckets within plans
Tasks Management: Create, update, delete, and view tasks
Checklists: Add, update, and remove checklist items on tasks
Token Persistence: Stores access tokens across server restarts
Related MCP server: Microsoft Planner MCP
Prerequisites
Node.js 18+ or newer
npm or yarn
Microsoft account with access to Planner
Installation
Clone or download this repository
Install dependencies:
cd planner-mcp
npm installBuild the project:
npm run buildAuthentication
Before using the Planner tools, you need to authenticate:
Start the authentication flow by calling the
auth_starttoolVisit the displayed verification URL
Enter the provided code
Sign in with your Microsoft account
Use the
auth_polltool to check if authentication is complete
The access token will be saved locally and reused for future sessions.
Configuration
Option 1: Using CLI (Recommended)
claude mcp add --transport stdio planner node /path/to/planner-mcp/build/index.jsOption 2: Manual Configuration
Add this server to your Claude Desktop configuration file:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"planner": {
"command": "node",
"args": ["/path/to/planner-mcp/build/index.js"]
}
}
}Note: Replace
/path/to/planner-mcp/build/index.jswith the actual path to your cloned repository.
Available Tools
Authentication Tools
auth_start: Start the Planner authentication flow (device code)auth_poll: Check if authentication is complete
Plan Tools
list_plans: List all Microsoft Planner plans for the current userget_plan: Get detailed information about a specific plan
Bucket Tools
list_buckets: List all buckets in a plancreate_bucket: Create a new bucket in a plan
Task Tools
list_tasks: List tasks in a plan or bucket with filtering options (priority, due date, status, etc.)get_task: Get detailed information about a specific taskcreate_task: Create a new task in a bucket with title, description, priority, and due dateupdate_task: Update an existing task (title, description, priority, bucket, due date, checklist, etc.)delete_task: Delete a task
Checklist parameter (on create_task and update_task): pass checklist as an object keyed by item ID, same style as assignments:
To add an item, use any unique string as the key with
{"title": "...", "isChecked": false}To update an item, use its existing item ID (from
get_task/list_taskswithincludeDetails: true) with just the fields to changeTo remove an item, set its ID's value to
null
Example:
{
"taskId": "your-task-id",
"checklist": {
"buy-milk": { "title": "Buy milk", "isChecked": false },
"existing-item-id-from-get-task": { "isChecked": true },
"item-id-to-remove": null
}
}Checklist items are visible on any task fetched via get_task or list_tasks with includeDetails: true (under details.checklist, keyed by item ID).
Priority Levels:
1= Urgent (highest priority)3= Important (high priority)5= Medium (normal priority)9= Low (lowest priority)
Required Permissions
The Microsoft Graph API requires the following permissions for Planner:
Group.Read.All- To list plans and bucketsTasks.ReadWrite- To read, create, update, and delete tasks
Example Workflows
Create a new task
List plans:
list_plansList buckets in a plan:
list_bucketswith the plan IDCreate a task:
create_taskwith plan ID, bucket ID, title, and priority (1=urgent, 3=important, 5=medium, 9=low)
Example:
{
"planId": "your-plan-id",
"bucketId": "your-bucket-id",
"title": "Complete project proposal",
"description": "Write and submit the Q1 project proposal",
"priority": 1,
"dueDateTime": "2026-03-30T17:00:00Z"
}Move a task to another bucket
Get task details:
get_taskUpdate task:
update_taskwith the new bucket ID
Filter tasks by priority
List tasks with priority filter:
list_taskswith plan ID and priority parameter
Example:
{
"planId": "your-plan-id",
"priority": 1
}This will show only urgent tasks (priority 1).
Update task due date
Get task details:
get_taskUpdate task:
update_taskwith the new due date in ISO 8601 format (e.g., "2025-12-31T23:59:59Z")
Troubleshooting
Authentication Issues
If authentication fails, try these steps:
Delete the
.access-token.txtfileCall
auth_startagainMake sure you're using a Microsoft account that has access to Planner
"Not authenticated" Error
If you get a "Not authenticated" error:
Make sure you've completed the authentication flow
Check that the
.access-token.txtfile exists and contains a valid tokenIf the token has expired, run
auth_startagain
Permission Errors
If you get permission errors:
Make sure your Microsoft account has access to the specified plan
Check that the required permissions are granted in your Azure AD app
Development
Build
npm run buildWatch mode
npm run watchStart server
npm startLicense
ISC
Contributing
Contributions are welcome! Please feel free to submit issues or pull requests.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityCmaintenanceConnects Claude to Microsoft Outlook through the Microsoft Graph API, enabling email management (list, search, read, send) and calendar operations (list, create, accept, decline, delete events) via OAuth 2.0 authentication.Last updated1MIT
- FlicenseBqualityDmaintenanceEnables interaction with Microsoft Planner tasks through natural language using Azure CLI authentication. Supports listing plans, creating/updating/deleting tasks, managing buckets, and integrating GitHub links without complex OAuth setup.Last updated97
- AlicenseBqualityDmaintenanceEnables interaction with Microsoft Outlook services (Tasks, Calendar, Email, Contacts, and Teams) via the Microsoft Graph API, providing 39 tools for Claude Desktop with natural language and JSON output.Last updated39MIT
- Alicense-qualityCmaintenanceConnects Claude with Microsoft 365 services such as Email, Calendar, Teams, OneDrive, and more through the Microsoft Graph API.Last updated8316MIT
Related MCP Connectors
WHOOP recovery, strain, sleep and workouts in Claude via official WHOOP OAuth. Free, open source.
Connect Claude to Fathom meeting recordings, transcripts, and summaries
Garmin data in Claude & ChatGPT via the Garmin Health API. OAuth sign-in, no password sharing.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Plong-Wasin/planner-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server