update_issue
Modify existing Bitbucket Cloud issues by updating title, content, state, priority, assignee, or issue type to track project changes.
Instructions
Update an existing issue.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| workspace | Yes | The workspace slug | |
| repo_slug | Yes | The repository slug | |
| issue_id | Yes | The issue ID | |
| title | No | New title | |
| content | No | New content | |
| state | No | New state | |
| kind | No | Issue type | |
| priority | No | Priority level | |
| assignee | No | Assignee UUID |
Implementation Reference
- src/tools/index.ts:1036-1040 (handler)Handler for the 'update_issue' tool: parses input using Zod schema, extracts parameters, and delegates to IssuesAPI.update method to perform the update.case 'update_issue': { const params = toolSchemas.update_issue.parse(args); const { workspace, repo_slug, issue_id, ...updates } = params; return this.issues.update(workspace, repo_slug, issue_id, updates); }
- src/tools/index.ts:227-243 (schema)Zod schema definition for validating inputs to the 'update_issue' tool.update_issue: z.object({ workspace: z.string().describe('The workspace slug'), repo_slug: z.string().describe('The repository slug'), issue_id: z.number().describe('The issue ID'), title: z.string().optional().describe('New title'), content: z.string().optional().describe('New content'), state: z .enum(['new', 'open', 'resolved', 'on hold', 'invalid', 'duplicate', 'wontfix', 'closed']) .optional() .describe('New state'), kind: z.enum(['bug', 'enhancement', 'proposal', 'task']).optional().describe('Issue type'), priority: z .enum(['trivial', 'minor', 'major', 'critical', 'blocker']) .optional() .describe('Priority level'), assignee: z.string().optional().describe('Assignee UUID'), }),
- src/tools/index.ts:728-758 (registration)Registration of the 'update_issue' tool in the toolDefinitions array, including MCP-compatible input schema and description.{ name: 'update_issue', description: 'Update an existing issue.', inputSchema: { type: 'object' as const, properties: { workspace: { type: 'string', description: 'The workspace slug' }, repo_slug: { type: 'string', description: 'The repository slug' }, issue_id: { type: 'number', description: 'The issue ID' }, title: { type: 'string', description: 'New title' }, content: { type: 'string', description: 'New content' }, state: { type: 'string', enum: ['new', 'open', 'resolved', 'on hold', 'invalid', 'duplicate', 'wontfix', 'closed'], description: 'New state', }, kind: { type: 'string', enum: ['bug', 'enhancement', 'proposal', 'task'], description: 'Issue type', }, priority: { type: 'string', enum: ['trivial', 'minor', 'major', 'critical', 'blocker'], description: 'Priority level', }, assignee: { type: 'string', description: 'Assignee UUID' }, }, required: ['workspace', 'repo_slug', 'issue_id'], }, },