microsoft-todo-mcp-server
MCP server for Microsoft To Do — manage task lists, tasks, and checklist items via the Microsoft Graph API.
Features
- 13 MCP tools for full CRUD on task lists, tasks, and checklist items
- Zero-config authentication — uses a well-known Microsoft client ID, no app registration needed
- Interactive browser login — opens your browser on first run, then caches credentials
- Launch with uvx — no installation required
Quick Start
Claude Desktop / Copilot / any MCP client
Add to your MCP client configuration:
{
"mcpServers": {
"microsoft-todo": {
"command": "uvx",
"args": ["microsoft-todo-mcp-server"]
}
}
}
On first launch, your browser will open for Microsoft sign-in. After that, credentials are cached and sign-in is automatic.
Optional: Specify a tenant
If your organization requires a specific Azure AD tenant (e.g., due to conditional access policies), set the AZURE_TENANT_ID environment variable:
{
"mcpServers": {
"microsoft-todo": {
"command": "uvx",
"args": ["microsoft-todo-mcp-server"],
"env": {
"AZURE_TENANT_ID": "your-tenant-id"
}
}
}
}
By default, the server uses the common tenant which works with any Microsoft account (personal or work/school).
Available Tools
Task Lists
| Tool | Description |
|---|---|
list_task_lists |
List all task lists |
create_task_list |
Create a new task list |
update_task_list |
Rename a task list |
delete_task_list |
Delete a task list |
Tasks
| Tool | Description |
|---|---|
list_tasks |
List tasks in a list (optional status filter) |
create_task |
Create a task with title, body, due date, importance |
update_task |
Update any task fields |
complete_task |
Mark a task as completed |
delete_task |
Delete a task |
Checklist Items (Subtasks)
| Tool | Description |
|---|---|
list_checklist_items |
List subtasks of a task |
create_checklist_item |
Add a subtask |
update_checklist_item |
Update or check/uncheck a subtask |
delete_checklist_item |
Delete a subtask |
Authentication
This server uses Microsoft's well-known "Graph Command Line Tools" client ID for authentication. No Azure AD app registration is required.
On first run:
- Your browser opens to Microsoft's login page
- Sign in with your Microsoft account (personal or work/school)
- Consent to the requested permissions (Tasks.ReadWrite, User.Read)
- Credentials are cached locally for future use
Token cache is stored in your platform's config directory (e.g., ~/.config/microsoft-todo-mcp-server/ on Linux).
Development
# Clone the repository
git clone https://github.com/vexxhost/microsoft-todo-mcp-server.git
cd microsoft-todo-mcp-server
# Install dependencies
uv sync
# Run the server locally
uv run microsoft-todo-mcp-server
# Lint
uv run ruff check src/
License
Apache-2.0
Metadata
Release files for microsoft-todo-mcp-server 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| microsoft_todo_mcp_server-0.1.0.tar.gz | 119.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| microsoft_todo_mcp_server-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 130.2 kB
Release files / microsoft_todo_mcp_server-0.1.0.tar.gz
| Download URL | microsoft_todo_mcp_server-0.1.0.tar.gz |
|---|---|
| Size | 119.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cc0307083edcec3d83ad1bfd5f97b68a8f9e4f6600ec2ee775271a479b522695
|
|
BLAKE2b-256 checksum How to use checksums |
2ac3bdacac1acd3a67a6e457873588e78bd194ccccba458f4fbff8479a2c7a6a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 11, 2026.
Transparency logRelease files / microsoft_todo_mcp_server-0.1.0-py3-none-any.whl
| Download URL | microsoft_todo_mcp_server-0.1.0-py3-none-any.whl |
|---|---|
| Size | 10.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6050638fea4f64ba1e22336f386471341524e324856dfe8c4cdc6cb21367a97c
|
|
BLAKE2b-256 checksum How to use checksums |
f35e07c1f20a63bbc87369b22ecfa02b49444a7621d5ffdaa6279a346a3216ea
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 11, 2026.
Transparency log