Skip to main content
Glama

updateTask

Edits a task: its name, description, optional flag, or availableDate schedule. Pass only the fields you want to change. On a draft or scheduled beta project the change is applied immediately. On a running or paused beta project the change is STAGED: testers do not see it until commitTaskChanges publishes all staged changes (revertTaskChanges discards them; getBetaTasks with version 'unpublished' shows the staged state). While staging, these tools accept BOTH the live id and the staged id of a task or step, but always respond with the STAGED row — expect ids you did not pass in, with liveVersionId linking back to the live row. Content of finished or archived beta projects cannot be edited.

Input Schema

NameRequiredDescriptionDefault
nameNoThe new task name (1 to 128 characters).
taskIdYesID of the task, from getBetaTasks. Never invent ids.
optionalNoWhether testers may skip this task: they get a Skip control and a skipped task counts as done. Defaults to false. Only tasks of Stomio-placement beta projects can be optional, and a task cannot be both optional and scheduled with availableDate: the two are mutually exclusive.
productIdYesID of the beta project to query. Get valid IDs from the listProducts tool.
descriptionNoThe new description (up to 512 characters of text; basic HTML is allowed).
availableDateNoISO 8601 date-time before which the task shows as locked and testers cannot start it. Omit for available immediately; null (updateTask) clears an existing date. A date past the beta end date is accepted here but blocks publishBeta and commitTaskChanges until fixed. Mutually exclusive with optional: a task can be optional or scheduled, not both.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Goes well beyond the annotations (readOnlyHint=false, destructiveHint=false) by disclosing the staging lifecycle, that staged edits are invisible to testers until commit, and that responses return the STAGED row with ids you did not pass plus a liveVersionId linking to the live row — a non-obvious and genuinely surprising behavior. The one gap is that it never says what happens to staged edits if the session ends or whether staging is per-user or shared across managers.

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

Conciseness4/5

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

Front-loaded with purpose and the partial-update rule, then the conditional behavior, then the constraint — a sensible information hierarchy with no filler sentences. It is fairly dense and the staging paragraph is long, but each clause carries operational meaning an agent needs before calling.

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

Completeness5/5

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

For a mutation tool with no output schema, the description covers the full decision surface: what can be edited, what cannot, when changes take effect, which companion tools publish or revert them, and why returned ids may differ from those passed. Little an agent needs in order to call this correctly is left unstated.

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 coverage is 100%, so name, taskId, optional, productId, description, and availableDate are all documented at the field level; the description mainly restates the field list. It does add one useful semantic not in the schema — the dual-id acceptance and staged-row echo behavior — but that is response semantics rather than parameter meaning. Baseline 3 applies.

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?

Opens with a specific verb and resource plus the exact editable fields (name, description, optional flag, availableDate schedule), so an agent can distinguish it from createTask, updateStep, and updateTasksOrder without reading any schema. The 'pass only the fields you want to change' framing also pins down that this is a partial update, not a replace.

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

Usage Guidelines5/5

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

Explicitly states when the edit applies immediately (draft/scheduled beta) versus when it is staged (running/paused beta) and names the follow-up tools: commitTaskChanges to publish, revertTaskChanges to discard, getBetaTasks with version 'unpublished' to inspect. It also gives a clear exclusion: content of finished or archived beta projects cannot be edited.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources