Skip to main content
Glama

update_task

Update specific fields of a ClickUp task without overwriting others. Supports incremental assignee changes via add/remove.

Instructions

Update any field of a task — pass only the fields you want to change. For assignees, assignees replaces the whole set, while assignees_add/assignees_rem change them incrementally. Returns the updated task.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
task_idYesID of the task to update.
nameNoTask name/title.
descriptionNoPlain-text task description.
markdown_contentNoMarkdown task description. Takes precedence over `description` if both are given.
statusNoStatus name (must exist in the task's List, e.g. 'to do', 'in progress', 'complete').
priorityNoPriority: 1=urgent, 2=high, 3=normal, 4=low; null clears it.
due_dateNoDue date (natural language, ISO, or epoch ms).
due_date_timeNoIf true, the due date includes a specific time of day.
start_dateNoStart date (natural language, ISO, or epoch ms).
start_date_timeNoIf true, the start date includes a specific time of day.
time_estimateNoTime estimate in milliseconds.
assigneesNoFull set of assignee user ids. On update this REPLACES the current assignees (use assignees_add/assignees_rem for incremental changes).
tagsNoTag names to set on the task (must already exist in the Space).
parentNoParent task id; set to make this task a subtask of that parent.
custom_fieldsNoArray of custom field assignments as { id, value } objects.
custom_item_idNoCustom task type id (from `get_custom_task_types`); null for the default Task type.
archivedNoSet true to archive the task, false to unarchive it.
assignees_addNoUser ids to ADD as assignees (incremental, leaves others in place).
assignees_remNoUser ids to REMOVE from assignees (incremental).
custom_task_idsNoSet true to treat `task_id` as a custom task ID instead of a native ClickUp ID. Requires `team_id`.
team_idNoTeam/Workspace ID. Falls back to CLICKUP_TEAM_ID when omitted.
Behavior4/5

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

Without annotations, the description carries full behavioral disclosure burden. It explains the partial update nature, the special assignee behavior, and states that it returns the updated task. It does not mention permissions or error conditions, but for a mutation tool, this is reasonably transparent.

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 extremely concise—two sentences that efficiently convey the core purpose, usage pattern, and a critical nuance (assignee handling). Every sentence earns its place.

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?

Given the complexity (21 parameters, no output schema, no annotations), the description covers the essential behavioral traits and parameter relationships. It could be more complete by mentioning implications of partial updates (e.g., fields not passed are unchanged) but is sufficient for a typical update tool.

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

Parameters3/5

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

Schema description coverage is 100%, so the schemas already document each parameter. The description adds a high-level pattern (pass only changed fields) and clarifies the difference between assignees, assignees_add, and assignees_rem. This adds some value but does not significantly enhance understanding beyond the schema.

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

Purpose5/5

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

The description clearly states 'Update any field of a task' and contrasts with sibling tools like create_task and delete_task. The verb-resource pairing is precise, and the description distinguishes itself by noting the partial update pattern ('pass only the fields you want to change').

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 effectively conveys when to use this tool (updating specific task fields) and provides critical guidance on assignee handling (replace vs incremental). However, it does not explicitly exclude scenarios where alternative tools (e.g., update_bulk_tasks) would be more appropriate.

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/helbertparanhos/clickup-mcp-pro'

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