Skip to main content
Glama

Update Todoist Task

todoist_update_task
Idempotent

Modify existing Todoist tasks by updating content, due dates, priority, labels, or moving them between projects and sections.

Instructions

Update an existing Todoist task.

Only include the fields you want to change — all fields are optional. To clear a due date, pass clear_due_date: true (sends due_string: "no date" — empty string is silently ignored and due: null returns 400). To remove all labels, pass labels as an empty array [].

Priority: 1=normal, 2=medium, 3=high, 4=urgent.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
task_idYesID of the task to update
contentNoNew task name
descriptionNoNew description/notes
clear_due_dateNoSet to true to remove the due date entirely
due_stringNoNew due date as natural language: 'tomorrow', 'next monday', 'Feb 20', etc.
due_dateNoNew due date in YYYY-MM-DD format
priorityNoTask priority: 1=normal, 2=medium, 3=high, 4=urgent
labelsNoReplacement label list (replaces all existing labels)
project_idNoMove task to a different project
section_idNoMove task to a different section
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds valuable behavioral context beyond what annotations provide: it explains the partial update pattern ('Only include the fields you want to change'), clarifies edge cases for due dates (empty string vs null behavior), and specifies that labels array replaces all existing labels. Annotations already indicate this is a non-destructive, idempotent, open-world mutation, but the description provides concrete implementation details that help the agent understand how to use the tool correctly.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is perfectly structured and concise: it starts with the core purpose, then provides critical usage guidelines, followed by specific behavioral notes. Every sentence earns its place by addressing important aspects of tool usage. The information is front-loaded with the most important guidance first, and there's no wasted verbiage.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with 10 parameters and no output schema, the description does an excellent job covering the essential context. It explains the partial update pattern, clarifies edge cases, and provides important behavioral details. The main gap is the lack of information about what the tool returns (no output schema), but given the annotations indicate it's an open-world mutation, the description provides sufficient guidance for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 100% schema description coverage, the baseline is 3, but the description adds significant value by clarifying parameter interactions and special cases: it explains the partial update approach, details how to clear due dates using clear_due_date, warns about due_string vs due_date behavior, and explains priority mapping. It also clarifies that labels array replaces all existing labels, which isn't obvious from the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Update' and resource 'existing Todoist task', making the purpose unambiguous. However, it doesn't explicitly differentiate from sibling tools like todoist_update_project or todoist_update_section, which have similar update patterns but different resources. The description is specific about what gets updated but doesn't contrast with similar update operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context about when to use this tool ('Update an existing Todoist task') and includes important usage notes about partial updates and special cases for clearing due dates and labels. However, it doesn't explicitly mention when NOT to use it (e.g., vs todoist_complete_task for marking tasks done) or name specific alternatives for different scenarios, though the sibling tool names provide some implicit guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/christulino/todoist-v1-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server