Skip to main content
Glama
rrvrs

jira-alerts-mcp

Update a JSM alert's priority, message or description

jsm_update_alert_field
DestructiveIdempotent

Overwrite one field (priority, message, or description) on a JSM alert to correct it after triage. Use when the original value is wrong.

Instructions

Overwrite one field on an existing JSM alert: its priority, its message, or its description.

This is how an alert gets corrected once triage knows more than the integration that raised it did — a P3 that turns out to be customer-facing, a message that says "check failed" when it should say which check, a description that should carry what has been tried.

Args:

  • alert_id (string): the full alert id (not the tinyId)

  • field ('priority' | 'message' | 'description'): which field to overwrite

  • value (string): the new value

There are no 'user' or 'source' arguments here, unlike the other write tools: these three endpoints take only the value.

Returns: { "requestId": string, "result": string, "alert_id": string }

IMPORTANT: this action is asynchronous. Verify with jsm_get_request_status using the returned requestId.

This overwrites, it does not append. Reading the current value first with jsm_get_alert is the difference between adding context to a description and destroying what someone else wrote in it. If you mean to add to the record without replacing anything, use jsm_add_alert_note instead — notes are additive and are what the activity timeline is for.

For field='priority', value must be exactly one of P1, P2, P3, P4, P5 — not "high", not "1", not "p1".

Examples:

  • "This is worse than we thought, make it a P1" -> field="priority", value="P1"

  • "Fix the alert title to name the failing endpoint" -> read it first, then field="message"

Constraints and errors:

  • Raising priority may change who is paged, since routing and escalation rules read it.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fieldYesWhich field to overwrite. Each is a separate endpoint under the hood.
valueYesThe new value. For field='priority' this must be exactly one of P1, P2, P3, P4, P5. For 'message' keep it to one line — it is the headline responders read first. For 'description' anything goes, and an empty string clears it.
alert_idYesFull alert id, e.g. '9b251e07-73c9-4907-9996-8cb53a6a20d0-1704440650350'. This is NOT the short tinyId shown in the JSM UI — get the full id from jsm_list_alerts first.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultNo
alert_idYes
requestIdNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv2.1.0
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • changedOutput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. Addedv2.0.0

TDQS

A4.8/5.0
Behavior5/5

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

Annotations cover the safety profile (destructiveHint=true, idempotentHint=true, openWorldHint=true), and the description adds substantial behavior beyond that: the action is asynchronous and must be verified via jsm_get_request_status, it overwrites rather than appends, reading first avoids destroying existing content, and raising priority can change paging. None of this is recoverable from the annotations alone.

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?

It is well front-loaded — the core action leads, followed by args, async caveat, the overwrite warning, and examples. It is longer than average, and the Args block partially restates the schema, but nearly every sentence carries actionable information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive, async, open-world mutation with three required params, the description covers everything an agent needs: what is overwritten, async verification path, the priority enum constraint, the append-vs-replace pitfall, and the paging side effect. An output schema exists, so return-value explanation is not required.

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 the baseline is 3, but the description adds genuine value: it stresses alert_id is the full id not the tinyId, pins priority to exact values P1–P5 (rejecting 'high' or '1'), and clarifies that 'value' means the new value with no user/source arguments unlike other write tools. Some content overlaps the schema, keeping it just short of a 5.

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 names a specific verb ('overwrite') and resource ('one field on an existing JSM alert') and enumerates the exact fields (priority, message, description). It explicitly distinguishes itself from siblings jsm_add_alert_note and jsm_update_alert_note, so an agent can route correctly without opening a 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?

It gives explicit when-to-use context (correcting an alert once triage knows more than the raising integration) and a clear when-not-to-use rule with a named alternative: use jsm_add_alert_note if you mean to append rather than replace. This is exactly the alternative-routing guidance the dimension rewards.

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