otheroauth2

Todoist

Todoist is a task management tool allowing users to create to-do lists, set deadlines, and collaborate on projects with reminders and cross-platform syncing

Verdict

The Todoist MCP lets your team create tasks, projects, and labels directly from Switchy conversations. @mention it to capture action items during planning sessions, log follow-ups from customer calls, or organize sprint work without switching tabs. It exposes 31 tools covering task creation, project setup, comments, sections, and workspace management. Best for teams already using Todoist who want AI to handle the busywork of task entry and project structuring. Requires OAuth — you'll grant read/write access to tasks, projects, and comments.

Common use cases

  • Capture meeting action items in real time
  • Build project structures from chat brainstorms
  • Log customer feedback as labeled tasks
  • Close completed tasks during standups
  • Add comments to tasks without leaving Switchy

Integration

Vendor
Todoist
Category
other
Auth
OAUTH2
Tools
31
Composio slug
todoist

Tools

  • Add Workspace

    Tool to create a new workspace in todoist. use when you need a separate workspace to organize projects. generates uuid and temp id automatically.

  • Close Task

    This tool marks an existing task as completed in todoist. it requires the `task id` of the task to be closed.

  • Create Comment

    Tool to create a new comment in todoist. use when you need to add a note to a specific task or project after confirming its id.

  • Create Label

    Creates a new label.

  • Create Project

    Creates a new project in todoist.

  • Create Section

    Tool to create a new section within a specific project. use when you need to group tasks under a new heading in a project.

  • Create task

    Create a new task in todoist. this action allows users to create tasks with various parameters including content, due dates, priority, and more. the task can be created in a specific project, section, or as a subtask of another task.

  • Delete Label
    destructive

    Tool to delete a specific label. use when you need to permanently remove an unused label by its id after confirming it's not in use. example: "delete label with id 2298391482".

  • Delete Project
    destructive

    Tool to delete a specific todoist project. use when you need to permanently remove a project by its id.

  • Delete Section
    destructive

    Tool to delete a specific section. use when you need to permanently remove an unused section by its id after confirming it's not in use. example: "delete section with id 82181370".

  • Delete task
    destructive

    Delete a task from todoist. this action permanently removes the task and all its subtasks.

  • Get All Comments

    This tool retrieves all comments associated with a specific task or project in todoist. it requires either a task id or a project id to fetch the comments, and it returns a json array of comment objects with details such as id, posted at, c

  • Get all labels

    Get all personal labels from todoist. this action retrieves all personal labels from a user's todoist account. each label contains information like name, color, order and favorite status. api documentation: https://developer.todoist.com/res

  • Get all projects

    Get all projects from a user's todoist account. this tool retrieves all projects from the authenticated user's todoist account. the response includes details like project id, name, color, parent project, sharing status, and other metadata f

  • Get All Sections

    Tool to retrieve all sections for a specific project in todoist. use when you need to list section structure within a project after selecting the project.

  • Get All Tasks

    Fetches all tasks from todoist and returns their details.

  • Get Backups

    Tool to list all available backup archives for the user. use when you need to retrieve and review all existing backups.

  • Get Comment

    Tool to retrieve details of a specific comment by its comment id. use when you need full information (content, timestamp, or attachment) about a known comment.

  • Get Label

    Tool to retrieve a specific label by its id. use when you need detailed info about a label after you have its id.

  • Get Project

    Tool to retrieve a specific project by its id. use when you have a project id and need its metadata before display or update.

  • Get Section

    Tool to retrieve a specific section by its id. use when you have a section id and need its metadata before display or update.

  • Get Special Backups

    Tool to list special backup archives for the user. use when you need to retrieve all project backups for the authenticated user after creating or managing projects.

  • Get Task

    Tool to retrieve a specific task by its id. use when you need to fetch all details of an existing task before processing or display.

  • List Archived Workspace Projects

    Tool to list all archived projects in a workspace. use when you need to retrieve archived workspace projects with optional filters or pagination.

  • List Filters

    Tool to list all filters for the authenticated user. use when you need to retrieve the current set of custom filters.

  • List Pending Workspace Invitations

    Tool to list pending invitation emails in a workspace. use when you need to check which email invites are still pending acceptance in a workspace.

  • Reopen Task

    This tool reopens a previously completed task.

  • Update Comment

    Tool to update a specific comment's content. use when you need to correct or clarify an existing comment after confirming its id and the new text.

  • Update Project

    Tool to update a specific project's attributes such as name, color, indent, and order. use when you need to rename or reorder a project after reviewing its current settings. example: "update project 2203306141 name to 'q1 goals'."

  • Update Section

    Tool to update a specific section's attributes such as name and order. use when you need to rename or reorder a section after confirming its id.

  • Update Task

    Tool to update an existing task's properties. use when you need to modify a task's details after confirming its id and new values.

Setup

Setup guide

  1. 11. Open your Switchy workspace and navigate to Settings > Integrations. 2. Find Todoist in the MCP directory and click Connect. 3. You'll be redirected to Todoist's OAuth consent screen — sign in with your Todoist account. 4. Grant the requested scopes: read and write access to tasks, projects, comments, labels, and sections. 5. After authorizing, you'll return to Switchy with a green confirmation badge. 6. Open any Space and type '@Todoist create a task: test connection' to verify the integration works. 7. If the task appears in your Todoist inbox, you're ready — the MCP can now read your projects and create tasks on command. 8. To invoke other tools, @mention Todoist and describe what you need: 'add a project for Q2 planning' or 'close task ID 12345'.

What teammates see: by default, memories from Todoist are scoped to the Space (PROJECT visibility) - you can mark any memory PRIVATE or share it ORG-wide.

Works well with

Top models

Compatibility data appears once enough Spaces have used this MCP together with a given model.

How Switchy teams use it

Not enough Spaces yet to publish anonymised usage stats (we require ≥ 50 Spaces per week).

Starter prompts

Log Sprint Tasks

@Todoist create tasks in the 'Sprint 12' project: implement login flow, write API tests, update docs, review PR #204
Open in a Space →

Structure New Project

@Todoist create a project called 'Website Redesign' with sections for Research, Design, Development, and QA, then add a placeholder task in each section
Open in a Space →

Close Batch of Tasks

@Todoist close tasks with IDs 8372615, 8372618, 8372620, and 8372623
Open in a Space →

Tag Feedback Items

@Todoist create a label called 'customer-request' and apply it to tasks 9281047 and 9281052
Open in a Space →

Add Context to Task

@Todoist add a comment to task 7294810: 'Customer mentioned this breaks on Safari 16, needs priority bump'
Open in a Space →

Example outputs

Illustrative - representative of the model's voice and quality, not literal recordings.

Prompt

@todoist show me all high-priority tasks due this week across my projects

Output

Here are your high-priority tasks due this week: **Work Project** - Finish Q1 budget review (Priority 1, due Thursday) - Schedule team sync (Priority 1, due Friday) **Personal** - File tax documents (Priority 1, due Saturday) You have 3 high-priority items. The budget review is flagged as overdue by 2 days in your Todoist account.

Notes

This example demonstrates read-only task filtering by priority and date range. The MCP requires OAuth2 scope to access all projects. Response accuracy depends on how consistently you've set priority levels and due dates in Todoist—tasks without explicit priorities won't appear in filtered results.

Prompt

@todoist create a task 'Review API integration docs' in my Engineering project, due next Monday, priority 2

Output

Task created successfully: **Review API integration docs** - Project: Engineering - Due: Monday, January 13, 2025 - Priority: 2 (high) - Task ID: 8472619384 The task is now visible in your Todoist Engineering project. You can add comments or subtasks by referencing this task ID.

Notes

This write operation creates a persistent task in your Todoist account. The MCP needs write permissions via OAuth2. If the specified project doesn't exist, the operation fails—verify project names beforehand. Priority levels in Todoist range from 1 (urgent) to 4 (normal), which may differ from your mental model.

Prompt

@todoist look at all my overdue tasks and draft a prioritized catch-up plan for the next 3 days

Output

You have 7 overdue tasks. Here's a 3-day catch-up plan: **Today (Focus: Client Work)** - Complete client proposal draft (overdue 4 days, Priority 1) - Respond to vendor inquiry (overdue 2 days, Priority 2) **Tomorrow (Focus: Internal)** - Update team roadmap (overdue 6 days, Priority 2) - Review hiring pipeline (overdue 1 day, Priority 3) **Day 3 (Focus: Admin)** - File expense reports, renew software licenses, update CRM notes This plan groups tasks by theme to minimize context-switching. Consider rescheduling the 3 lowest-priority items if new urgent work arrives.

Notes

This synthesis example combines the MCP's task-fetching capability with the AI's planning logic. The AI can't automatically reschedule tasks in Todoist—you'll need to manually update due dates or ask a follow-up prompt to execute changes. Effective prioritization depends on accurate metadata (due dates, priority flags) already present in your Todoist account.

Use-case deep-dives

Client project handoff tracking

When Todoist beats Linear for agency client work

A 6-person creative agency runs 8-12 client projects at once, each with deliverables, approvals, and recurring check-ins. Todoist wins here because the workspace/project/section hierarchy maps cleanly to client/campaign/phase, and OAuth2 means the team can automate task creation from client emails or Slack threads without sharing a master password. The 31 tools let you script intake workflows (new client → workspace → templated projects) and close tasks in bulk when a campaign wraps. The threshold: if your team needs time tracking or sprint velocity, Todoist has no native support for that—you'd bolt on Toggl or Harvest. But for pure task sequencing and client-facing checklists, this MCP keeps the agency's Switchy workspace synced with what clients see in shared Todoist views.

Personal productivity coaching sessions

Why this MCP works for 1:1 accountability coaching

A solo productivity coach runs weekly Zoom sessions with 20 clients, each maintaining their own Todoist setup. The coach uses Switchy to review a client's overdue tasks, add comments with reframing questions, and create new sections for habit experiments—all without switching windows or asking the client to screenshare. OAuth2 means each client authorizes once; the coach's Switchy context remembers which Todoist account to query. The create-comment and close-task tools let the coach model task hygiene in real time during the call. The limit: if a client has 500+ tasks, search gets slow and the coach ends up scrolling. For clients under 200 active tasks, this MCP turns the coaching call into a live co-working session where both people see changes instantly.

Editorial calendar for newsletter team

When Todoist's recurring tasks beat Notion for publishing cadence

A 3-person newsletter team ships twice a week: research Monday, draft Wednesday, edit Friday, publish Saturday. They tried Notion databases but kept missing steps because no one checked the board daily. Todoist's recurring task templates (via the create-task tool with due-date strings like 'every Monday at 9am') mean the MCP can regenerate the checklist automatically, and the team sees tasks in their personal Todoist apps between Switchy sessions. The label and section tools let them tag issues by topic (policy, product, opinion) so the research phase pulls from the right backlog. The trade-off: Todoist has no rich text or inline images, so the actual draft lives in Google Docs. But for sequencing the 12 steps from idea to send, this MCP keeps the team on rhythm without a project manager.

Frequently asked

What can Todoist MCP do in Switchy?

Todoist MCP lets your team create tasks, projects, sections, and labels directly from chat. It can close tasks, add comments, and organize work across multiple workspaces. The AI can read your existing Todoist structure and write new items without leaving the conversation. It's useful when you want task creation to happen inline with discussion, not as a separate step.

Do I need admin access to connect Todoist via OAuth?

No. Any Todoist user can authorize the MCP through OAuth2. The connection grants access to your personal Todoist account, including shared projects where you're a member. If your team uses Todoist Business, each person connects their own account — there's no org-wide admin setup. The OAuth flow requests read and write permissions for tasks, projects, comments, and labels.

Can Todoist MCP assign tasks to other team members?

Not directly. The MCP can create tasks in shared projects, but it doesn't expose an "assign to user" parameter in the Create Task tool. You'll need to open Todoist and manually assign the task after creation, or use Todoist's native automation rules. If task assignment is central to your workflow, consider pairing this with a direct API integration instead.

How does this compare to just using Todoist's web app?

The MCP is faster when you're already in a Switchy conversation and want to capture a task without context-switching. It's slower if you need to browse projects, drag tasks between sections, or use Todoist's board view. Think of the MCP as a write-focused shortcut — good for "create this task in Project X" requests, less useful for reviewing or reorganizing your backlog.

Who on the team should connect Todoist?

Anyone who manages tasks in Todoist and wants the AI to create or update them on their behalf. Each connection is personal — the MCP acts as that user in Todoist, so tasks will show their name as the creator. If your team shares a single Todoist workspace, one connection is usually enough. Multiple connections make sense when people manage separate projects.

Data last verified 607 hours ago.Sources aggregated hourly to weekly. See docs/architecture/model-directory.md.