Skip to main content
Glama

write_update_card

Destructive

Update work item fields: name, description, tags, release, iteration, team iteration, or parent. Add or remove tags individually; set null to clear. Changes are read back and removed tags are reported.

Instructions

Update a card: name, description, tags (tags replaces the whole list; addTags/removeTags edit it), release, iteration, team iteration (null clears), parent, or other settable fields. Description: pass format markdown for Markdown. Changes are read back; removed tags are reported. For a test case, parent ADDS it to that test plan (existing plans are kept). For state, people, effort, teams and custom fields use the dedicated write_* tools.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYes
nameNo
tagsNo
fieldsNo
formatNoHow the text is written: markdown (stored as a Targetprocess Markdown description), html (sent as-is), or text (plain lines). Default: HTML and text starting with <!--markdown--> are kept, anything else is treated as plain text, so Markdown needs format: markdown.
parentNo
addTagsNo
releaseNo
iterationNo
removeTagsNo
descriptionNo
teamIterationNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.1

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, openWorldHint=true, and destructiveHint=true, so the description doesn't need to restate that this is a mutating, potentially destructive operation. The description adds valuable behavioral context beyond the annotations: tags replaces the whole list while addTags/removeTags edit it, null clears team iteration, changes are read back, removed tags are reported, and parent has special test-plan semantics. This is strong supplementary disclosure, though it doesn't cover every possible side effect.

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 dense but well-organized: it front-loads the core purpose and field list, then explains the tricky semantics (tags vs addTags/removeTags, null clearing, markdown format, parent behavior) in compact sentences. It earns its length because every sentence conveys a non-obvious behavioral fact. It could be slightly tighter, but nothing is wasted.

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 12-parameter mutation tool with no output schema and only 8% schema coverage, the description covers the critical ambiguities: tag replacement semantics, null-clearing behavior, markdown format handling, test-case parent semantics, and routing to sibling tools. It doesn't enumerate all possible 'other settable fields' or describe the read-back response format in detail, but it provides enough for an agent to call the tool correctly in most cases.

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 description coverage is only 8%, so the description must compensate, and it does. It explains the semantic difference between tags (replaces whole list) and addTags/removeTags (edit it), clarifies that null clears release/iteration/teamIteration, and explains the format parameter's markdown behavior. The only minor gap is that the 'fields' object is mentioned as 'other settable fields' without enumerating which fields are valid, but the description still adds substantial meaning beyond the bare 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 opens with a specific verb and resource ('Update a card') and enumerates the exact fields it handles (name, description, tags, release, iteration, team iteration, parent, other settable fields). It also explicitly distinguishes itself from sibling write_* tools by listing what it does NOT handle (state, people, effort, teams, custom fields), so an agent can select it correctly 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?

The description gives explicit when-to-use guidance: use this for card field updates, and use dedicated write_* tools for state, people, effort, teams, and custom fields. It also explains the special parent behavior for test cases (ADDS to the test plan, keeping existing plans), which is exactly the kind of non-obvious usage detail an agent needs.

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