Skip to main content
Glama
Commonpost MCP for Thunderbird

Commonpost MCP for Thunderbird

Update Task

updateTask
Destructive

Modify an existing Thunderbird task in place, changing only the fields you pass; changes save immediately without a review dialog. Update title, due date, priority, completion, or description.

Instructions

Change an existing task in place: only the fields passed change, saved at once with no review dialog. completed: true sets 100% and the completion date. taskId and calendarId come from listTasks; new task: createTask. To delete one: deleteTask.

Input Schema

NameRequiredDescriptionDefault
titleNoNew task title
taskIdYesTask ID (from listTasks)
dueDateNoNew due date, ISO 8601 (date only: all-day); '' clears it
priorityNoPriority: 1=high, 5=normal, 9=low, 0=none
completedNotrue: done, false: reopened; not with percentComplete
calendarIdYesCalendar ID containing the task (from listTasks)
descriptionNoNew task description
percentCompleteNoCompletion percentage

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed8 schema fields changedv0.19.2
    • changedInput schema / properties / calendarId / description
      Previous value: -"Calendar ID containing the task (from listTasks results)"New value: +"Calendar ID containing the task (from listTasks)"
    • changedInput schema / properties / completed / description
      Previous value: -"Set to true to mark the task done (sets percentComplete=100 and records completedDate), false to reopen it (optional)"New value: +"true: done, false: reopened; not with percentComplete"
    • changedInput schema / properties / description / description
      Previous value: -"New task description/body (optional)"New value: +"New task description"
    • changedInput schema / properties / dueDate / description
      Previous value: -"New due date in ISO 8601 format (optional)"New value: +"New due date, ISO 8601 (date only: all-day); '' clears it"
    • changedInput schema / properties / percentComplete / description
      Previous value: -"Completion percentage (optional)"New value: +"Completion percentage"
    • changedInput schema / properties / priority / description
      Previous value: -"Priority: 1=high, 5=normal, 9=low (optional)"New value: +"Priority: 1=high, 5=normal, 9=low, 0=none"
    • changedInput schema / properties / taskId / description
      Previous value: -"Task ID (from listTasks results)"New value: +"Task ID (from listTasks)"
    • changedInput schema / properties / title / description
      Previous value: -"New task title (optional)"New value: +"New task title"
  2. First observedv0.1.0

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and idempotentHint=false, so the safety bar is lower; the description still adds real behavior — atomic save with no review dialog, partial-update semantics, and the side effect that completed:true also stamps 100% and the completion date. It does not explain what the response looks like or what happens on an invalid taskId, which is a moderate gap for a mutation tool that is flagged destructive.

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?

Two compact sentences plus short routing fragments, with the core semantics (in-place change, only passed fields, immediate save) front-loaded. No filler or repetition of the schema.

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?

Covers patch semantics, identifier sourcing, the completed cascade, and sibling routing for an 8-parameter mutation with no output schema. Remaining gaps are the response/confirmation behavior and error handling for unknown taskId or calendarId.

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 100%, so baseline is 3, but the description goes beyond it by explaining that 'completed: true' cascades to percentComplete and sets the completion date — a cross-field effect the schema only hints at. It does not add detail for title, description, priority, or dueDate, which the schema already documents well.

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?

States a specific verb and resource ('Change an existing task in place') and immediately pins down the patch semantics: only the fields passed change. It names the sibling tools (createTask, deleteTask) for adjacent intents, so an agent can distinguish this from create/delete without opening the schema.

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 routes to createTask for new tasks and deleteTask for removal, and tells the agent where the required identifiers come from (taskId and calendarId from listTasks). That is concrete when-to-use and when-not-to-use guidance rather than inference.

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