update_issue
Modify Linear issues by updating title, description, status, assignee, or priority to keep project tracking current.
Instructions
Update an existing issue
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| issueId | Yes | Issue ID | |
| title | No | New title (optional) | |
| description | No | New description (optional) | |
| status | No | New status (optional) | |
| assigneeId | No | New assignee ID (optional) | |
| priority | No | New priority (0-4, optional) |
Implementation Reference
- src/index.ts:325-352 (handler)The main handler for the 'update_issue' tool. It validates the issueId, fetches the issue using LinearClient, applies the provided updates (title, description, status, assignee, priority), and returns the updated issue as JSON.case "update_issue": { const args = request.params.arguments as unknown as UpdateIssueArgs; if (!args?.issueId) { throw new Error("Issue ID is required"); } const issue = await linearClient.issue(args.issueId); if (!issue) { throw new Error(`Issue ${args.issueId} not found`); } const updatedIssue = await issue.update({ title: args.title, description: args.description, stateId: args.status, assigneeId: args.assigneeId, priority: args.priority, }); return { content: [ { type: "text", text: JSON.stringify(updatedIssue, null, 2), }, ], }; }
- src/index.ts:237-244 (schema)TypeScript type definition for the input arguments of the 'update_issue' tool.type UpdateIssueArgs = { issueId: string; title?: string; description?: string; status?: string; assigneeId?: string; priority?: number; };
- src/index.ts:125-160 (registration)Tool registration in the ListTools response, defining name, description, and input schema for 'update_issue'.{ name: "update_issue", description: "Update an existing issue", inputSchema: { type: "object", properties: { issueId: { type: "string", description: "Issue ID", }, title: { type: "string", description: "New title (optional)", }, description: { type: "string", description: "New description (optional)", }, status: { type: "string", description: "New status (optional)", }, assigneeId: { type: "string", description: "New assignee ID (optional)", }, priority: { type: "number", description: "New priority (0-4, optional)", minimum: 0, maximum: 4, }, }, required: ["issueId"], }, },
- src/index.ts:49-49 (registration)Capability declaration enabling the 'update_issue' tool in the MCP server capabilities.update_issue: true,