mstodo-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MSTODO_CACHE | No | Token cache path | |
| MSTODO_TIMEZONE | No | IANA zone, default is the system zone | |
| MSTODO_AUTHORITY | No | Default https://login.microsoftonline.com/consumers (personal accounts); use .../organizations for work accounts | https://login.microsoftonline.com/consumers |
| MSTODO_CLIENT_ID | No | Use your own Azure app registration instead of Microsoft's public one |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_listsA | List all To Do lists (including the default 'Tasks' list and 'Flagged Emails'). |
| create_listA | Create a new To Do list. |
| rename_listB | Rename a To Do list. |
| delete_listA | Permanently delete a To Do list and every task in it (no recycle bin). Confirm with the user first. |
| list_tasksA | List tasks in a list, newest first. Finished tasks are hidden unless status is "completed" or "all". Notes longer than 200 characters are shortened; use get_task for the full task. |
| get_taskA | Get one task in full: note, steps, dates, repeat rule, linked items and attachment names. |
| create_taskC | Create a task, optionally with a note, due date, reminder and steps. |
| update_taskA | Change a task. Only the fields you pass are changed; use |
| delete_taskA | Permanently delete a task (no recycle bin). To finish a task, use update_task(completed=true) instead. |
| add_stepC | Add a step (subtask) to a task. |
| update_stepB | Rename a step or tick/untick it. |
| delete_stepA | Delete a step from a task. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 12 tools
Each tool targets a distinct resource and action: lists, tasks, and steps each have their own set of lifecycle operations. The descriptions clearly separate permanent deletion from completing a task, so there is no ambiguity between tools.
All tool names follow a consistent verb_noun pattern (list_lists, create_task, update_step, delete_list). Rename_list uses a semantically specific verb, but it still fits the same pattern as the rest, making the naming predictable.
Twelve tools is a well-scoped size for a To Do server covering lists, tasks, and steps. Each tool serves a concrete purpose with no redundant or overwhelming additions.
The server covers CRUD operations for lists, tasks, and steps, including fetching full task details and managing subtasks. A minor gap is no explicit way to move a task between lists, though this may be achievable via update_task depending on the underlying API.