This server allows you to manage Microsoft To Do tasks, task lists, and checklist items through an AI assistant.
Authentication Management: Check authentication status and token expiration.
Task List Management: Create, retrieve, update, and delete task lists.
Task Management: Create, retrieve, update, and delete tasks, including properties like title, body, status, importance, and dates.
Checklist Management: Create, retrieve, update, and delete checklist items (subtasks) within tasks.
Advanced Querying: Filter, sort, and select specific task properties.
Task Customization: Set reminders and organize complex tasks with subtasks.
Microsoft To Do MCP
This MCP (Model Context Protocol) service allows you to interact with Microsoft To Do tasks using an AI assistant.
Setup Instructions
1. Prerequisites
Node.js 16 or higher
npm
A Microsoft account
Azure App Registration (see setup below)
2. Installation
There are two parts to installing this tool:
Installing the package
Setting up authentication (requires cloning the repository)
Step 1: Install the Package
Step 2: Set Up Authentication
Even if you install the package globally, you'll need to clone the repository to complete the authentication process:
3. Azure App Registration
Go to the Azure Portal
Navigate to "App registrations" and create a new registration
Name your application (e.g., "To Do MCP")
For "Supported account types", select one of the following based on your needs:
Accounts in this organizational directory only (Single tenant) - For use within a single organization
Accounts in any organizational directory (Any Azure AD directory - Multitenant) - For use across multiple organizations
Accounts in any organizational directory and personal Microsoft accounts - For both work accounts and personal accounts
Set the Redirect URI to
http://localhost:3000/callback
After creating the app, go to "Certificates & secrets" and create a new client secret
Go to "API permissions" and add the following permissions:
Microsoft Graph > Delegated permissions:
Tasks.Read
Tasks.ReadWrite
User.Read
Click "Grant admin consent" for these permissions
4. Configuration
Create a .env
file in the root directory with the following information:
TENANT_ID Options:
organizations
- For multi-tenant organizational accounts (default if not specified)consumers
- For personal Microsoft accounts onlycommon
- For both organizational and personal accountsyour-specific-tenant-id
- For single-tenant configurations
Examples:
Usage
Complete Workflow
Authenticate to get tokens (must be done from the cloned repository)
npm run authThis will open a browser window for you to authenticate with Microsoft and create a
tokens.json
file.Create MCP config file (must be done from the cloned repository)
npm run create-configThis creates an
mcp.json
file with your authentication tokens.Set up the global MCP configuration
# Copy the mcp.json file to your global Cursor configuration directory cp mcp.json ~/.cursor/mcp-servers.jsonThis makes the Microsoft To Do MCP available across all your Cursor projects.
Start using with your AI assistant
In Cursor, you can now use Microsoft To Do commands directly in any project
Try commands like
auth status
orlist up todos
to get started
The Claude Desktop configuration file is located at:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Windows:
%APPDATA%\Claude\claude_desktop_config.json
Linux:
~/.config/Claude/claude_desktop_config.json
Available Tools
auth-status
: Check your authentication statusget-task-lists
: Get all your To Do task listscreate-task-list
: Create a new task listupdate-task-list
: Update an existing task listdelete-task-list
: Delete a task listget-tasks
: Get all tasks in a listcreate-task
: Create a new taskupdate-task
: Update an existing taskdelete-task
: Delete a taskget-checklist-items
: Get checklist items for a taskcreate-checklist-item
: Create a checklist itemupdate-checklist-item
: Update a checklist itemdelete-checklist-item
: Delete a checklist item
Limitations
The API requires proper authentication and permissions
Rate limits may apply according to Microsoft's policies
Troubleshooting
Authentication Issues
"MailboxNotEnabledForRESTAPI" error: This typically means you're using a personal Microsoft account. Microsoft To Do API access is limited for personal accounts through the Graph API.
Token acquisition failures: Make sure your
CLIENT_ID
,CLIENT_SECRET
, andTENANT_ID
are correct in your.env
file.Permission issues: Ensure you have granted admin consent for the required permissions in your Azure App registration.
Account Type Issues
Work/School Accounts: These typically work best with the To Do API. Use
TENANT_ID=organizations
or your specific tenant ID.Personal Accounts: These have limited access to the To Do API. If you must use a personal account, try
TENANT_ID=consumers
orTENANT_ID=common
.
Checking Authentication Status
You can check your authentication status using the auth-status
tool or by examining the expiration time in your tokens:
To convert the timestamp to a readable date:
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
A Model Context Protocol service for Claude that enables natural language interaction with Microsoft Todo tasks, including viewing task lists, creating tasks, and managing checklist items.
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server that integrates with Notion's API to manage personal todo lists, allowing users to view, add, and update tasks directly from Claude.Last updated -26MIT License
- AsecurityAlicenseAqualityA Model Context Profile server that enables Claude to interact with Todoist, allowing users to create, retrieve, update, and manage tasks through natural language commands.Last updated -62MIT License
- -securityFlicense-qualityA Model Context Protocol server that enables Claude to interact with your Todoist account, allowing you to manage tasks, projects, and labels through natural language.
- -securityAlicense-qualityA Model Context Protocol server that enables advanced task and project management in Todoist via Claude Desktop and other MCP-compatible clients.Last updated -171MIT License