Microsoft To Do
Microsoft To Do is a cloud-based task management application that lets users create, organize, and track task lists, tasks, checklist items, and reminders across devices via Microsoft Graph
Verdict
Common use cases
- Turn meeting notes into trackable tasks
- Check off subtasks as features ship
- Pull today's due items at standup
- Archive completed sprints by deleting lists
- Add file attachments to task context
Integration
- Vendor
- Microsoft To Do
- Category
- other
- Auth
- OAUTH2
- Tools
- 22
- Composio slug
microsoft_todo
Tools
- Complete Task
Mark a Microsoft To Do task as completed. Convenience wrapper that always PATCHes status='completed'; the server auto-sets completedDateTime. Use Update Task to reopen a task (status='notStarted') or to change other fields.
- Create Checklist Item
Add a checklist item (subtask) to a Microsoft To Do task. Only display_name is required; the created item is returned with a GUID id, displayName, isChecked, and createdDateTime.
- Create Task
Create a task in a Microsoft To Do task list. Only title is required. Dates are passed as flat ISO-8601 strings plus a shared timezone; the tool builds the Graph dateTimeTimeZone objects. Notes are passed as body_content (+ body_content_typ
- Create Task List
Create a new Microsoft To Do task list.
- Delete Checklist Itemdestructive
Delete a checklist item (subtask) from a Microsoft To Do task. This permanently removes the checklist item (this cannot be undone).
- Delete Taskdestructive
Delete a task from a Microsoft To Do task list. WARNING: this also permanently removes the task's checklist items and linked resources.
- Delete Task Attachmentdestructive
Permanently delete a file attachment from a Microsoft To Do task. This cannot be undone.
- Delete Task Listdestructive
Delete a Microsoft To Do task list. WARNING: this cascades — all tasks in the list and their checklist items are permanently deleted.
- Download Task Attachment
Download one file attached to a Microsoft To Do task. The file is offloaded to storage and returned as a downloadable reference rather than inline base64.
- Get Checklist Item
Get a single Microsoft To Do checklist item (subtask) by its id, within a task in a task list.
- Get Current User
Return the profile of the Microsoft account connected to this toolkit (whoami / connection verification). Useful to confirm which mailbox the To Do tasks belong to before other operations.
- Get Task
Get a single Microsoft To Do task by its id, within a task list. Set include_checklist_items=true to expand its checklist items inline.
- Get Task Attachment
Get metadata for one file attached to a Microsoft To Do task. Use Download Task Attachment to retrieve the file contents.
- Get Task List
Get a single Microsoft To Do task list by its id.
- List Checklist Items
List the checklist items (subtasks) of a To Do task. Auto-paginates so all subtasks are returned at once as {items: [...]}.
- List Task Attachments
List the files attached to a Microsoft To Do task. Returns attachment metadata without file contents, one page at a time, plus a next_cursor.
- List Task Lists
List the To Do task lists owned by the connected user. The built-in default list has wellknown_list_name='defaultList'; user-created lists have wellknown_list_name='none'. Always returns at least the default list. Select the default list by
- List Tasks
List the tasks in a To Do task list. Checklist items (subtasks) are NOT returned by default; set include_checklist_items=true to expand them inline. Returns one page of tasks plus a next_cursor for the next page.
- Update Checklist Item
Update a checklist item (subtask) of a Microsoft To Do task: rename it (display_name) and/or check/uncheck it (is_checked). Partial update: only the fields you pass are changed; at least one is required. Setting is_checked=true marks the su
- Update Task
Update fields of an existing Microsoft To Do task (title, notes, importance, status, due/start/reminder dates, categories). Partial update: only the fields you pass are changed; unset fields are left untouched. To mark a task done set statu
- Update Task List
Rename a Microsoft To Do task list (updates its displayName).
- Upload Task Attachment
Attach a file up to 25 MB to a Microsoft To Do task. The tool automatically uses a single request for files under 3 MB and a chunked upload session for larger files.
Setup
Setup guide
- 11. In your Switchy workspace, navigate to Settings → Integrations and click Connect next to Microsoft To Do. 2. You'll be redirected to Microsoft's OAuth consent screen; sign in with your Microsoft account and grant the Tasks.ReadWrite permission (this lets Switchy read and modify your To Do lists). 3. After approving, you'll land back in Switchy with a green Connected badge. 4. Open any Project and type a message that @mentions Microsoft To Do — for example '@Microsoft To Do create a task called Test integration in my default list'. 5. The MCP will confirm the task was created and return its ID; open the Microsoft To Do app or web interface to verify the task appears. 6. If the connection fails, check that your Microsoft account has To Do enabled and that you granted the correct scope during OAuth.
What teammates see: by default, memories from Microsoft To Do are scoped to the Project (PROJECT visibility) - you can mark any memory PRIVATE or share it ORG-wide.
Works well with
Top models
Compatibility data appears once enough Projects have used this MCP together with a given model.
How Switchy teams use it
Starter prompts
Capture Action Items
@Microsoft To Do create three tasks in my Work list: 'Draft Q2 roadmap', 'Schedule design review', and 'Update stakeholder deck'. Set all due dates to Friday.
Daily Standup Snapshot
@Microsoft To Do show me all tasks due today across every list, grouped by list name.
Mark Sprint Complete
@Microsoft To Do mark all tasks in my 'Sprint 12' list as completed, then delete the list.
Add Subtask Checklist
@Microsoft To Do find the task 'Launch blog redesign' and add four checklist items: 'Finalize wireframes', 'Write CSS', 'QA on mobile', 'Deploy to prod'.
Attach Reference Files
@Microsoft To Do attach the file 'API-spec-v2.pdf' to the task 'Implement webhook endpoint' in my Engineering list.
Example outputs
Illustrative - representative of the model's voice and quality, not literal recordings.
@Microsoft To Do show me all tasks due this week across my lists, grouped by priority
Found 14 tasks due by Friday across 3 lists. High priority (4 tasks): 'Finalize Q1 budget' in Work (due Tuesday), 'Review contract amendments' in Work (due Thursday), 'Submit expense report' in Personal (due Wednesday), 'Book team offsite venue' in Projects (due Friday). Medium priority (7 tasks) includes 'Draft newsletter' and 'Update CRM fields'. Low priority (3 tasks) are mostly admin cleanup. All tasks pulled from your default timezone (America/New_York).
This read-heavy example demonstrates cross-list querying and priority filtering. Requires Tasks.Read scope. The MCP fetches tasks from all accessible lists; response shape depends on how many lists you've created and whether tasks have due dates set. No side effects.
@Microsoft To Do create a task 'Ship v2.1 release notes' in my Work list, due Friday, and add three checklist items: draft changelog, get PM approval, publish to blog
Created task 'Ship v2.1 release notes' in Work list (ID: AQMkAD...). Due date set to 2025-05-30 in your account timezone. Added 3 checklist items: 'draft changelog' (unchecked), 'get PM approval' (unchecked), 'publish to blog' (unchecked). Each checklist item received a GUID and createdDateTime timestamp. Task is now visible in your Microsoft To Do app.
This write example chains Create Task with three Create Checklist Item calls. Requires Tasks.ReadWrite scope. The MCP converts your plain-English due date to ISO-8601 format using your account's default timezone. Side effect: immediately visible in all synced To Do clients.
@Microsoft To Do look at my 'Projects' list, find any overdue tasks, and draft a status email summarizing what's blocked
Scanned 'Projects' list and found 5 overdue tasks. Draft email: 'Hi team — Quick status on overdue items: (1) 'Migrate staging DB' was due May 15, blocked waiting on DevOps to provision new instance. (2) 'Finalize vendor contracts' due May 20, pending legal review of liability clauses. (3) 'Update API docs' due May 18, no blocker noted but assigned to Sarah. (4–5) Two minor tasks overdue by 2 days. Let me know if you need me to reschedule any of these.' Based on task titles and any notes you'd added.
This synthesis example pairs the MCP's read capability with the AI's summarization. Requires Tasks.Read scope. The draft quality depends on how much context you've stored in task notes or titles. The MCP doesn't access external systems to verify blockers—it only surfaces what's in To Do metadata.
Use-case deep-dives
When To Do beats project tools for repeatable client work
A 3-person agency runs the same 18-step onboarding sequence for every new client. They tried Asana but the overhead of creating projects and duplicating templates ate 20 minutes per client. Microsoft To Do wins here because the Create Task and Create Checklist Item tools let an AI agent spin up a fresh onboarding list in under 10 seconds—title the task with the client name, populate the checklist, set the due date. The Complete Task wrapper makes standup updates trivial. This breaks down if you need task dependencies or multi-person assignment; To Do has no concept of blocking relationships. But for solo-owner repeatable checklists under 30 steps, the 22-tool scope and OAuth2 auth make this the fastest path from 'new client signed' to 'checklist ready'.
To Do as the single-source agenda builder for recurring syncs
A 5-person product team holds the same weekly sync every Monday at 10am. They used to cobble agendas together in Slack threads or Google Docs, losing context week-over-week. Now they keep a standing 'Monday Sync Agenda' list in To Do. An AI agent reads the previous week's completed tasks, pulls open Linear tickets tagged 'discuss', and uses Create Task to draft this week's agenda by Sunday night. The team reviews in Switchy Monday morning, adds checklist items for sub-topics, and the meeting runs from the live list. Delete Task clears old agenda items after 4 weeks. This only works if your agenda items don't need rich formatting or embedded files—To Do's notes field is plain text. If you're pasting screenshots or tables, stick with Notion.
When To Do is the right inbox for one-person support queues
A solo support lead at a 12-person SaaS startup fields 40-60 customer questions a day across email, Slack, and Intercom. She tried keeping a Notion database but the friction of manual entry meant tasks slipped. Microsoft To Do wins because an AI agent can Create Task from every inbound message, tag it with the customer name in the title, and set a due date based on SLA. The 22-tool scope includes Delete Task Attachment and Create Checklist Item, so she can attach screenshots and break complex issues into sub-steps without leaving the list. This stops working above 80 tasks per day—To Do has no bulk operations or advanced filtering. But for a single owner triaging moderate volume, the OAuth2 setup and flat task model beat heavier project tools.
Frequently asked
What can the Microsoft To Do MCP do in Switchy?
It creates, completes, and deletes tasks across your To Do lists, adds checklist items to tasks, and manages file attachments. The MCP exposes 22 tools that mirror the core Microsoft To Do API—so you can build workflows that read your lists, update task statuses, or wire To Do into broader automation without opening the app.
Which OAuth scopes does the Microsoft To Do MCP request?
It asks for Tasks.ReadWrite, which grants read and write access to all your To Do lists and tasks. Microsoft's OAuth consent screen will show this scope when you connect. You don't need admin consent unless your tenant enforces it globally; a standard user account is enough to authorize the integration.
Can the MCP set due dates with reminders or recurrence rules?
Yes for due dates—you pass an ISO-8601 string and timezone, and the tool builds the Graph API dateTimeTimeZone object. Reminders and recurrence depend on the underlying Graph endpoints; the MCP's Create Task and Update Task tools accept the fields Microsoft supports, so recurring tasks work if you supply the recurrence pattern the API expects.
Why use this MCP instead of the Microsoft To Do web app or API directly?
The MCP wraps the Graph API so your AI agents can read and write tasks without you writing OAuth refresh logic or parsing JSON responses. If you already have a service calling the Graph API, keep it. If you want natural-language task creation inside Switchy—"Add 'Review Q3 budget' to my Work list"—the MCP handles auth and schema for you.
Who on the team should connect the Microsoft To Do integration?
Whoever owns the To Do account you want Switchy to read and write. Each connection is scoped to one Microsoft account's tasks. If your team shares a single To Do account, that person connects it. If everyone has their own, each user connects their own account—Switchy doesn't pool tasks across connections.