jira_update_issue
Modify existing Jira issues by updating fields like summary, description, priority, or assignee using the issue key.
Instructions
Update an existing Jira issue
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| issue_key | Yes | Issue key (e.g., PROJ-123) | |
| fields | Yes | Fields to update |
Implementation Reference
- src/jira_server.py:311-331 (handler)The _update_issue method that executes the core logic for the jira_update_issue tool. It processes the input arguments, constructs the update fields dictionary, calls the Jira client's update_issue_field method, and returns a success message.async def _update_issue(self, arguments: dict) -> List[TextContent]: """Update an existing issue""" issue_key = arguments["issue_key"] fields = arguments["fields"] update_fields = {} if "summary" in fields: update_fields["summary"] = fields["summary"] if "description" in fields: update_fields["description"] = fields["description"] if "priority" in fields: update_fields["priority"] = {"name": fields["priority"]} if "assignee" in fields: update_fields["assignee"] = {"name": fields["assignee"]} self.jira_client.update_issue_field(issue_key, update_fields) return [TextContent( type="text", text=f"Updated issue: {issue_key}" )]
- src/jira_server.py:124-143 (schema)The inputSchema defining the expected parameters for the jira_update_issue tool: an object with required 'issue_key' (string) and 'fields' (object with optional summary, description, priority, assignee).inputSchema={ "type": "object", "properties": { "issue_key": { "type": "string", "description": "Issue key (e.g., PROJ-123)" }, "fields": { "type": "object", "description": "Fields to update", "properties": { "summary": {"type": "string"}, "description": {"type": "string"}, "priority": {"type": "string"}, "assignee": {"type": "string"} } } }, "required": ["issue_key", "fields"] }
- src/jira_server.py:121-144 (registration)The Tool object registration for jira_update_issue in the list_tools() function, which defines the tool's name, description, and input schema.Tool( name="jira_update_issue", description="Update an existing Jira issue", inputSchema={ "type": "object", "properties": { "issue_key": { "type": "string", "description": "Issue key (e.g., PROJ-123)" }, "fields": { "type": "object", "description": "Fields to update", "properties": { "summary": {"type": "string"}, "description": {"type": "string"}, "priority": {"type": "string"}, "assignee": {"type": "string"} } } }, "required": ["issue_key", "fields"] } ),