Skip to main content
Glama

Update comment

jira_update_comment
DestructiveIdempotent

Update a Jira comment by replacing its entire body. Provide the comment ID and complete new text, as existing content is discarded unless resent.

Instructions

Edit one existing comment. CC-31 REPLACE semantics: body overwrites the WHOLE comment, so anything the old one contained (tables, panels, mentions) is lost unless you resend it — read the comment with jira_get_comments first and pass the full new text, never just the sentence you wanted to add. commentId is the numeric id from that read. body takes plain text (converted to ADF), raw ADF, or markdown with format: "markdown".

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bodyYesThe COMPLETE new comment: plain text (converted to ADF) or a raw ADF document. It replaces the stored body outright — there is no append.
applyNoSet true to EXECUTE this write. Omit (or false) to get a plan of the request that would be sent. Executing also requires the server to run with JIRA_WRITE_MODE=apply.
issueYesIssue key (PROJ-123) or numeric issue id.
formatNoHow to interpret a string rich-text input: "text" (default — blank lines split paragraphs, single newlines are hard breaks) or "markdown" (the documented subset: headings, lists, code fences, bold/italic/code, links). Refused alongside a raw ADF document.
plan_idNoThe single-use id returned by the preceding plan-mode call. Required together with apply: true; a mismatch means the arguments changed since the plan, and the write is refused rather than executed.
profileNoNamed credential profile for this call. Omit to use the active profile. Rejected when the server locks the profile (JIRA_LOCK_PROFILE).
commentIdYesNumeric comment id, as jira_get_comments reports it in data.comments[].id.
visibilityNoRestrict the edited comment to one project role or one group, by name. A restriction the comment already carries is not read back — pass it again to keep it.
Behavior5/5

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

Beyond the annotations (destructiveHint=true, readOnlyHint=false), the description discloses exactly what gets destroyed: body overwrites the WHOLE comment, and tables, panels, and mentions are lost unless resent. This is precisely the kind of behavioral context that annotations alone do not provide, and it directly warns against a common misuse pattern.

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 not bloated; the critical REPLACE warning is front-loaded and the format guidance is packed efficiently into the final sentence. It earns its length given the destructive nature of the operation, though the 'CC-31 REPLACE semantics' phrasing introduces jargon that slightly reduces directness.

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 an 8-parameter tool with no output schema, the description covers the highest-risk behavior (overwrite) and the required read-before-write workflow. Plan-mode execution, apply flags, visibility, and profile handling are left to the schema, which documents them thoroughly, so the combination is complete enough for correct invocation.

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 the schema already documents all eight parameters, including body replacement semantics, commentId source, format enum, and visibility constraints. The description adds emphasis and connects body formats to the format parameter, but it does not introduce meaning the schema does not already carry, so the 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?

The description opens with 'Edit one existing comment', a specific verb+resource pairing that immediately identifies the tool's purpose. The REPLACE-semantics warning and references to reading an existing comment reinforce that this modifies a pre-existing comment, which inherently distinguishes it from sibling tools like jira_add_comment and jira_delete_comment.

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

Usage Guidelines4/5

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

The description gives clear operational context: read the comment with jira_get_comments first, use its numeric id, and pass the full new text rather than a fragment. It does not explicitly name alternatives for when to use add/delete/update tools, so it stops short of full when-not and alternative routing, but the provided guidance is otherwise strong.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/IvanBBaev/jira-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server