Skip to main content
Glama

update_task

Report progress, ask a question, deliver results, or decline a delegated task by updating its state. Keeps the peer agent informed from acceptance to completion.

Instructions

Everything you tell the peer about work you accepted: post progress (working), ask (input-required: all questions in one message; one open question at a time; with wait_seconds, waits for the answer), finish (completed, with artifacts), or give up (failed). Also declines new work (rejected).

Input Schema

NameRequiredDescriptionDefault
stateYesworking (post progress, carry on), input-required (ask), completed, failed, or rejected (decline new work)
messageNoto the peer: progress, your question (all of it in one message), your summary, or why it failed or you decline; required for input-required and rejected
task_idYes
artifactsNooutputs, each with a name and text; a name already sent replaces that output
wait_secondsNowith input-required: wait up to this long (max 120) for the answer

Output Schema

NameRequiredDescriptionDefault
stateYes
answerNoset when the peer answered directly instead of working on a task
task_idYes
versionYespass as after_version to get_delegated_task_updates to wait for the next change

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.2

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations, the description still discloses distinctive behaviors: batching all questions in one message, keeping one open question at a time, and having wait_seconds block for an answer. It omits state-transition rules, whether terminal states are irreversible, permission/auth requirements, and other side effects, so it does not fully carry the behavioral burden.

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?

The description is compact and front-loads the task/peer context before enumerating states. The single long sentence with nested parentheticals is dense and slightly harder to scan, so it is good but not maximally clear.

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 five-parameter mutation tool with an output schema and no annotations, it covers purpose and the important interaction modes. It still leaves the agent to infer sibling-tool routing and task lifecycle constraints, so it is strong but not complete.

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?

Schema coverage is already high at 80%, so the baseline is 3, but the description adds cross-parameter meaning by linking wait_seconds to input-required and emphasizing that all questions belong in a single message. It also clarifies the purpose of each state, though task_id is left obvious from the schema.

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 names the resource (work you accepted) and the concrete state-based actions (post progress, ask, finish, give up, decline), so it is more than a restatement of update_task. It does not explicitly contrast with siblings such as reply or cancel_task, which keeps it from a 5.

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

Usage Guidelines3/5

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

It gives clear context for each state value, including when to use working, input-required, completed, failed, or rejected, so invocation is reasonably guided. However, it does not say when to use update_task rather than reply, accept_task, cancel_task, or other siblings, and offers no exclusions.

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