D

Todoist MCP Server

MCP server for Todoist task management with support for tasks, projects, sections, labels, and comments

Overall Score52/100

Score Breakdown

Server Info

Package
todoist-mcp
Registry
npm
Maintainer
Community
Category
Project Management
Tags
taskstodoproductivity
Last Scanned
7 Apr 2026

Findings

9 issues

Authentication & Identity

HIGHNo per-request auth - requires instance-per-user

Stdio-only transport. Requires API_KEY env var which is a Todoist personal API token. No HTTP transport, no OAuth support. For multi-tenant deployment, the platform must spawn a separate server instance per user.

Remediation

Add HTTP/SSE transport to accept per-request Authorization headers, or implement the MCP OAuth spec.

Tool Schema Quality

HIGHRequired fields missing on 10 write operations

Write tools without required field declarations: update_tasks, close_tasks, reopen_tasks, delete_tasks, move_tasks.

Remediation

Add required arrays to all write/delete tool schemas.

MEDIUMOnly 6 of 35 schemas have parameter constraints

Most schemas lack maxLength, enum, or pattern constraints on string parameters.

Remediation

Add constraints to string parameters, especially on write operations.

LLM Safety

MEDIUM1 tool descriptions are too vague

Short or generic descriptions make tool selection unreliable.

Remediation

Expand descriptions with specific actions, data types, and side effects.

MEDIUMOverlapping tool descriptions may cause wrong selection

Similar descriptions between tools could cause the LLM to pick the wrong one.

Remediation

Differentiate descriptions with unique use cases.

Data Exposure

MEDIUM5 list operations lack pagination

get_tasks_list has a limit param (default 50). get_completed_tasks has cursor pagination and limit (max 200). List tools for projects, labels, sections, and shared labels return all results without pagination. No field selection - returns full records.

Remediation

Add limit/offset or cursor-based pagination.

LOWNo field selection on responses

Responses return full records rather than projected fields.

Remediation

Implement field selection to return only relevant fields.

Maintenance & Trust

LOWCommunity-maintained by stanislavlysenko0912

No official vendor backing.

Remediation

Seek vendor verification.

MEDIUM15 dependency vulnerabilities (6 high)

npm audit found 6 high severity CVEs.

Remediation

Update vulnerable dependencies.

Tools

35 total
NameDescriptionRisk
get_tasks_listGet tasks list from Todoistread
create_tasksCreate new tasks in Todoistwrite
get_tasksGet tasks from Todoistread
update_tasksUpdate tasks in Todoistwrite
close_tasksClose tasks in Todoistwrite
reopen_tasksReopen tasks in Todoistwrite
delete_tasksDelete tasks from Todoistadmin
move_tasksMove tasks to a different parent or section in Todoist. Exactly one of parent_id, section_id, or project_id must be providedwrite
get_completed_tasksGet completed tasks from Todoist with filtering options. Date range limited to 3 months max.read
get_projects_listGet all projects from Todoistread
create_projectsCreate new projects in Todoistwrite
get_projectsGet projects from Todoistread
update_projectsUpdate projects in Todoistwrite
delete_projectsDelete projects from Todoistadmin
get_collaboratorsGet all collaborators for a project in Todoistread
move_projectsMove a projects to a different parent in Todoistwrite
get_comments_listGet comments list from Todoistread
create_commentsCreate new comments in Todoistwrite
get_commentsGet comments from Todoist by IDread
update_commentsUpdate comments in Todoistwrite
delete_commentsDelete comments in Todoistadmin
get_labels_listGet all personal labels from Todoistread
create_labelsCreate a new personal labels in Todoistwrite
get_labelsGet a personal label from Todoistread
update_labelsUpdate a personal label in Todoistwrite
delete_labelsDelete a personal label in Todoistadmin
get_shared_labelsGet all shared labels from Todoistread
rename_shared_labelsRename a shared label in Todoistwrite
remove_shared_labelsRemove a shared label in Todoistadmin
get_sections_listGet sections list from Todoistread
create_sectionsCreate new sections in Todoistwrite
get_sectionsGet sections from Todoistread
update_sectionsUpdate sections in Todoistwrite
delete_sectionsDelete sections in Todoistadmin
utils_get_colorsGet available colors for projects, labels, filters in Todoistread

Deploy Todoist MCP Server securely

CompleteFlow adds per-user authentication, permission scoping, and audit logging to any MCP server out of the box.

Deploy on CompleteFlow