IntegrateIntegrate
Integrations

Todoist Integration

Manage Todoist tasks, projects, and labels

The Todoist integration provides access to manage Todoist tasks, projects, and labels through the Integrate MCP server.

Installation

The Todoist integration is included with the SDK:

import { todoistIntegration } from "integrate-sdk/server";

Setup

1. Create a Todoist OAuth App

  1. Go to Todoist App Console
  2. Create a new OAuth application
  3. Configure your redirect URI
  4. Note your Client ID and Client Secret

2. Configure the Integration on Your Server

Add the Todoist integration to your server configuration. The integration automatically reads TODOIST_CLIENT_ID and TODOIST_CLIENT_SECRET from your environment variables:

import { createMCPServer, todoistIntegration } from "integrate-sdk/server";

export const { client: serverClient } = createMCPServer({
  apiKey: process.env.INTEGRATE_API_KEY,
  integrations: [
    todoistIntegration({
    }),
  ],
});

You can override the environment variables by passing explicit values:

todoistIntegration({
  clientId: process.env.CUSTOM_TODOIST_ID,
  clientSecret: process.env.CUSTOM_TODOIST_SECRET,
});

3. Client-Side Usage

The default client automatically includes all integrations. You can use it directly:

import { client } from "integrate-sdk";

await client.authorize("todoist");
const result = await client.todoist.listProjects({});

console.log(result);

If you're using a custom client, add the integration to the integrations array:

import { createMCPClient, todoistIntegration } from "integrate-sdk";

const customClient = createMCPClient({
  integrations: [todoistIntegration()],
});

Configuration Options

Prop

Type

Tools

todoist_list_projects

List all projects

No parameters.

todoist_get_project

Get details of a specific project

Prop

Type

todoist_create_project

Create a new project

Prop

Type

todoist_update_project

Update an existing project

Prop

Type

todoist_delete_project

Delete a project

Prop

Type

todoist_archive_project

Archive a project

Prop

Type

todoist_list_tasks

List active tasks with optional filters

Prop

Type

todoist_get_task

Get details of a specific task

Prop

Type

todoist_create_task

Create a new task

Prop

Type

todoist_update_task

Update an existing task

Prop

Type

todoist_complete_task

Mark a task as complete

Prop

Type

todoist_delete_task

Delete a task permanently

Prop

Type

todoist_reopen_task

Reopen a completed task

Prop

Type

todoist_move_task

Move a task to a different project, section, or parent

Prop

Type

todoist_quick_add_task

Add a task using natural language

Prop

Type

todoist_get_completed_tasks

Get completed tasks

Prop

Type

todoist_filter_tasks

Get tasks matching a Todoist filter expression

Prop

Type

todoist_list_sections

List sections, optionally filtered by project

Prop

Type

todoist_create_section

Create a new section in a project

Prop

Type

todoist_get_section

Get details of a specific section

Prop

Type

todoist_update_section

Rename a section

Prop

Type

todoist_delete_section

Delete a section (and all tasks in it)

Prop

Type

todoist_list_comments

List comments on a task or project

Prop

Type

todoist_create_comment

Add a comment to a task or project

Prop

Type

todoist_get_comment

Get details of a specific comment

Prop

Type

todoist_update_comment

Update a comment's text

Prop

Type

todoist_delete_comment

Delete a comment

Prop

Type

todoist_list_labels

List all personal labels

No parameters.

todoist_create_label

Create a new label

Prop

Type

todoist_update_label

Update a label

Prop

Type

todoist_delete_label

Delete a label

Prop

Type

todoist_list_reminders

List all reminders

No parameters.

todoist_create_reminder

Create a reminder for a task

Prop

Type

Notes

  • Category: Productivity
  • Authentication mode: OAuth

On this page