Todoist MCP for AI Agents

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with Todoist MCP or direct API to create tasks, update deadlines, fetch project lists, and manage reminders through natural language.
Trusted by
AWS
Glean
Zoom
Airtable

30 min · no commitment · see it on your stack

Todoist Logo
Gradient Top
Gradient Middle
Gradient Bottom
divider

Try Todoist now

Enter a prompt below to test the integration in our Tool Router playground. You'll be redirected to sign in and try it live.

Supported Tools and Triggers

Tools
Triggers
Add WorkspaceTool to create a new workspace in Todoist.
Archive Project (API v1)Tool to archive a project using Todoist API v1.
Bulk Create TasksCreate many tasks in one request using Todoist's Sync batching.
Close Task (API v1)Tool to close (complete) a task in Todoist using API v1.
Create Comment (API v1)Tool to create a new comment on a project or task using Todoist API v1.
Create Label (API v1)Tool to create a new personal label using API v1.
Create Project (API v1)Tool to create a new project in Todoist using the unified API v1.
Create Section (API v1)Tool to create a new section within a project using API v1.
Create taskCreate a new task in Todoist using the unified API v1.
Delete CommentTool to delete a specific comment from Todoist by its ID.
Delete Label (V1)Tool to delete a personal label using API v1.
Delete Project (API v1)Tool to delete a project and all of its sections and tasks using Todoist API v1.
Delete Section (v1)Tool to delete a section and all tasks within it.
Delete TaskTool to delete a specific task from Todoist.
Delete UploadTool to delete an uploaded file from Todoist.
Export Template As FileTool to export a Todoist project as a CSV template file.
Export Template As URLTool to export a Todoist project as a shareable template URL.
Filter TasksTool to get all tasks matching the filter.
Get All CommentsThis tool retrieves all comments associated with a specific task or project in Todoist.
Get all projectsGet all projects from a user's Todoist account.
Get All TasksFetches all INCOMPLETE tasks from Todoist and returns their details.
Get BackupsTool to list all available backup archives for the user.
Get Comment (V1)Tool to retrieve a single comment by ID using the v1 API.
Get Completed Tasks By Completion DateTool to retrieve completed tasks within a specified completion date window.
Get ID MappingsTool to translate IDs between Todoist API v1 and v2.
Get Personal LabelTool to retrieve a personal label by its ID.
Get Productivity StatsTool to retrieve comprehensive productivity statistics for the authenticated user.
Get Project (API v1)Tool to retrieve a specific project by its ID using Todoist API v1.
Get Full Project DataTool to retrieve full project data including all sections, tasks, and collaborators.
Get Project PermissionsTool to retrieve all available roles and their associated actions in Todoist projects.
Get Section (v1 API)Tool to retrieve a specific section by its ID using Todoist v1 API.
Get Special BackupsTool to list special backup archives for the authenticated user's projects.
Get Task (API v1)Tool to retrieve a single active (non-completed) task by ID using API v1.
Get UserTool to retrieve information about the currently authenticated user.
Get Workspace Plan DetailsTool to retrieve details about a workspace's current plan and usage.
Import Template Into Project By IDTool to import a template from Todoist's template gallery into an existing project.
Import Template Into Project From FileTool to import a CSV template into an existing Todoist project from a file.
Invite Project CollaboratorTool to invite a collaborator to a Todoist project by email.
List ActivitiesTool to get activity logs from Todoist.
List All Workspace InvitationsTool to return a list containing details of all pending invitations to a workspace.
List Archived ProjectsTool to get all archived projects from Todoist.
List Archived SectionsTool to retrieve all archived sections for a specific project in Todoist.
List Archived Workspace ProjectsTool to list all archived projects in a workspace.
List Completed TasksTool to retrieve all completed tasks with optional project filtering.
List Completed Tasks By Due DateTool to retrieve completed tasks within a specified due date range (up to 6 weeks).
List FiltersTool to list all filters for the authenticated user.
List Joinable WorkspacesTool to get workspaces the user can join.
List LabelsTool to get all user labels with pagination support.
List Pending Workspace InvitationsTool to list pending invitation emails in a workspace.
List Project CollaboratorsTool to get all collaborators for a given project with cursor-based pagination.
List SectionsTool to get all active sections for the user, with optional filtering by project.
List Shared LabelsTool to retrieve shared label names from active tasks with pagination support.
List Workspace Active ProjectsTool to list all active workspace projects.
List Workspace Archived ProjectsTool to get archived projects in a workspace.
List Workspace InvitationsTool to list user emails with pending invitations to a workspace.
List Workspace UsersTool to list users in workspace(s).
Move TaskTool to move a task to another project, section, or parent task while preserving task identity and metadata.
Move Task (REST API)Tool to move a task to another project, section, or parent task using the REST API.
Quick Add TaskTool to add tasks using natural language parsing similar to the official Todoist clients.
Remove Shared Label (API v1)Tool to remove a shared label from all active tasks using API v1.
Rename Shared Labels (API v1)Tool to rename a shared label across all active tasks using API v1.
Reopen Task (API v1)Tool to reopen a completed task in Todoist using API v1.
Reorder TasksReorder tasks deterministically by updating child_order in bulk via the Sync API item_reorder command.
Search LabelsTool to search user labels by name with case-insensitive matching.
Search ProjectsSearch active user projects by name with support for wildcards and pagination.
Search SectionsTool to search active sections by name, optionally filtered by project.
Todoist SyncTool to sync data with Todoist server, supporting both read and write operations.
Unarchive Project (API v1)Tool to unarchive a previously archived Todoist project using API v1.
Update Comment (v1)Tool to update a comment by ID and return its content via v1 API.
Update Label (API v1)Tool to update an existing label using API v1.
Update Notification SettingTool to update notification settings for the current user.
Update Project (API v1)Tool to update a project's properties using Todoist API v1.
Update Section (v1)Tool to update an existing section by its ID using Todoist v1 API.
Update TaskTool to update an existing task's properties.
Update Workspace LogoTool to upload an image as the workspace logo or delete the existing logo.
Upload FileTool to upload a file to Todoist.
Python
TypeScript

Install Composio

python
pip install composio claude-agent-sdk
Install the Composio SDK and Claude Agent SDK

Create Tool Router Session

python
from composio import Composio
from claude_agent_sdk import ClaudeSDKClient, ClaudeAgentOptions

composio = Composio(api_key='your-composio-api-key')
session = composio.create(user_id='your-user-id')
url = session.mcp.url
Initialize the Composio client and create a Tool Router session

Connect to AI Agent

python
import asyncio

options = ClaudeAgentOptions(
    permission_mode='bypassPermissions',
    mcp_servers={
        'tool_router': {
            'type': 'http',
            'url': url,
            'headers': {
                'x-api-key': 'your-composio-api-key'
            }
        }
    },
    system_prompt='You are a helpful assistant with access to Todoist tools.',
    max_turns=10
)

async def main():
    async with ClaudeSDKClient(options=options) as client:
        await client.query('Add a new task to "Work" project due tomorrow')
        async for message in client.receive_response():
            if hasattr(message, 'content'):
                for block in message.content:
                    if hasattr(block, 'text'):
                        print(block.text)

asyncio.run(main())
Use the MCP server with your AI agent

Why Use Composio?

AI Native Todoist Integration

  • Supports both Todoist MCP and direct API based integrations
  • Structured, LLM-friendly schemas for reliable tool execution
  • Rich coverage for reading, writing, and querying your Todoist data

Managed Auth

  • Built-in OAuth handling with automatic token refresh and rotation
  • Central place to manage, scope, and revoke Todoist access
  • Per user and per environment credentials instead of hard-coded keys

Agent Optimized Design

  • Tools are tuned using real error and success rates to improve reliability over time
  • Comprehensive execution logs so you always know what ran, when, and on whose behalf

Enterprise Grade Security

  • Fine-grained RBAC so you control which agents and users can access Todoist
  • Scoped, least privilege access to Todoist resources
  • Full audit trail of agent actions to support review and compliance

Frequently Asked Questions

Do I need my own developer credentials to use Todoist with Composio?

No, you can get started immediately using Composio's built-in Todoist app. For production, we recommend configuring your own OAuth credentials.

Can I use multiple toolkits together?

Yes! Composio's Tool Router enables agents to use multiple toolkits. Learn more.

Is Composio secure?

Composio is SOC 2 and ISO 27001 compliant with all data encrypted in transit and at rest. Learn more.

What if the API changes?

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

Used by agents from

Context
Letta
glean
HubSpot
Agent.ai
Altera
DataStax
Entelligence
Rolai
Context
Letta
glean
HubSpot
Agent.ai
Altera
DataStax
Entelligence
Rolai
Context
Letta
glean
HubSpot
Agent.ai
Altera
DataStax
Entelligence
Rolai

Never worry about agent reliability

We handle tool reliability, observability, and security so you never have to second-guess an agent action.