Update Tasks
update_tasksChange tasks: date (moves the day), priority, title, estimate, done, time slot.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tasks | Yes | Changes to apply, one entry per task |
update_tasksChange tasks: date (moves the day), priority, title, estimate, done, time slot.
| Name | Required | Description | Default |
|---|---|---|---|
| tasks | Yes | Changes to apply, one entry per task |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
Input schema / properties / tasks / items / properties / completed / descriptionPrevious value: -"Mark complete or incomplete"New value: +"Done"Input schema / properties / tasks / items / properties / date / descriptionPrevious value: -"YYYY-MM-DD — moves the task to this day"New value: +"Date"Input schema / properties / tasks / items / properties / endTime / descriptionPrevious value: -"HH:MM slot end"New value: +"End"Input schema / properties / tasks / items / properties / estimatedMinutes / descriptionPrevious value: -"New estimate in minutes"New value: +"Minutes"Input schema / properties / tasks / items / properties / goalId / descriptionRemoved value: -"Goal id to link to"Input schema / properties / tasks / items / properties / priority / descriptionPrevious value: -"New priority tier"New value: +"Priority"Input schema / properties / tasks / items / properties / ref / descriptionPrevious value: -"Task ref: id from the list, #N, or title"New value: +"Task id, #N, or title"Input schema / properties / tasks / items / properties / startTime / descriptionPrevious value: -"HH:MM slot start"New value: +"Start"Input schema / properties / tasks / items / properties / title / descriptionPrevious value: -"New title; an embedded URL becomes a link attachment"New value: +"Title"Input schema / properties / tasks / items / properties / date / maxLengthAdded value: +10Input schema / properties / tasks / items / properties / endTime / maxLengthAdded value: +5Input schema / properties / tasks / items / properties / estimatedMinutes / maximumAdded value: +1440Input schema / properties / tasks / items / properties / estimatedMinutes / minimumAdded value: +0Input schema / properties / tasks / items / properties / goalId / maxLengthAdded value: +64Input schema / properties / tasks / items / properties / ref / maxLengthAdded value: +500Input schema / properties / tasks / items / properties / startTime / maxLengthAdded value: +5Input schema / properties / tasks / items / properties / title / maxLengthAdded value: +500Input schema / properties / tasks / maxItemsAdded value: +100Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=true, and destructiveHint=false, so the mutation and safety profile is known and the description does not contradict it. The parenthetical 'date (moves the day)' adds a minor semantic clarification, but the description does not explain behavior for missing refs, idempotent application, or side effects. It is adequate given annotation coverage but adds little extra context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler. It is appropriately brief for a straightforward update tool, though terms like 'estimate' and 'done' are informal and slightly reduce precision.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema covers all parameters and annotations supply idempotency and non-destructiveness hints, but the description is thin for a tool with 10 editable fields and no output schema. It does not state that updates are keyed by ref, that goalId and loopBucket are also changeable, what happens to omitted fields, or what the tool returns. Core update semantics are clear, but meaningful gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds useful aliases like 'estimate' for estimatedMinutes, 'done' for completed, and 'time slot' for start/end times, and clarifies that date moves the day. However, it does not mention ref, goalId, or loopBucket, and the schema descriptions themselves are terse, so parameter meaning is only mildly enhanced.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a clear imperative verb ('Change') and resource ('tasks'), then enumerates the editable attributes: date, priority, title, estimate, done, time slot. This distinguishes it from create/delete/get siblings by verb, though it omits goalId and loopBucket and does not explicitly contrast with update_goal.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidance is provided. The description does not state when to use update_tasks versus create_tasks or delete_tasks, does not mention that only existing tasks are updated, and gives no prerequisites, exclusions, or alternative routing. The verb 'Change' provides weak implicit context only.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Each tool targets a distinct resource and action: goals, tasks, subtasks, loops, journal, calendar, and stats are cleanly separated. Descriptions include explicit call-order hints (e.g., get_loops before pull_loops) that reduce ambiguity. No two tools appear to do the same thing.
Tool names consistently follow a verb_noun snake_case pattern: create_, get_, update_, delete_, pull_, reorder_, write_. Even non-standard verbs like pull_loops and write_journal fit the same predictable structure, making the API easy to navigate.
Sixteen tools is slightly above the typical well-scoped range, but the coverage justifies it given the multiple domains: goals, tasks, subtasks, loops, journal, calendar, and focus stats. Each tool has a clear purpose, so none feel redundant or padding.
Goals and tasks have full CRUD coverage, and journal read/write plus loop pulling cover important workflows. Minor gaps exist: loops cannot be created, updated, or deleted, and calendar events are read-only, so some agent actions would require workarounds. Overall, the core planning lifecycle is well supported.