jira_edit
Edit existing JIRA issues by setting any editable field via display name or ID, with automatic value coercion for selects, labels, dates, rich-text (Markdown to ADF), and parent. Preview changes with dry_run.
Instructions
Set arbitrary fields on an existing JIRA issue by field display name or canonical id — labels, selects, story points, dates, rich-text custom fields (e.g. Acceptance Criteria), parent, and other editable fields. Names are resolved against the issue's edit screen and values coerced to the API shape, so pass natural values: {"Labels": ["a", "b"], "Story Points": 8, "Acceptance Criteria": "- one\n- two"}. String values for rich-text fields are JFM markdown auto-converted to ADF ("" clears the field); pass a raw ADF object ({"type": "doc", ...}) to bypass conversion. Complements jira_write (description body, assignee/reporter, raw-id fields); to change workflow status use jira_transition; for hierarchy jira_link_parent remains the canonical surface. Set dry_run: true to preview the request (method, path, body) without updating. Returns {status: ok, key, updated_fields} as YAML. Mirrors the CLI's omni-dev atlassian jira write --set-field.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | JIRA issue key (e.g., `PROJ-123`). | |
| fields | Yes | Map of field display name or canonical id (e.g. `"Labels"`, `"labels"`, `"Story Points"`, `"customfield_19300"`) to its new value. Names are resolved against the issue's edit screen (editmeta) and values are coerced to the API shape: select/option fields take the option string (becomes `{"value": ...}`), multi-selects an array of option strings, labels a plain string array, number/date fields the bare scalar, issue-link fields (e.g. Parent) an issue key string (becomes `{"key": ...}`). Rich-text fields (e.g. Acceptance Criteria) take JFM markdown (auto-converted to ADF; the empty string `""` clears the field) or a raw ADF document object (`{"type": "doc", ...}`) which is validated and forwarded as-is. | |
| dry_run | No | When true, resolve and return the would-be request (method, path, body) without updating the issue. Defaults to `false`. |