linear_removeIssueLabel
Remove a specific label from an issue in Linear by specifying the issue ID and label ID. Streamline issue management and maintain project organization effectively.
Instructions
Remove a label from an issue in Linear
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| issueId | Yes | ID or identifier of the issue to remove the label from (e.g., ABC-123) | |
| labelId | Yes | ID of the label to remove from the issue |
Implementation Reference
- The main handler function for the linear_removeIssueLabel tool. It validates the input arguments using the type guard and delegates to the LinearService to remove the label from the specified issue.export function handleRemoveIssueLabel(linearService: LinearService) { return async (args: unknown) => { try { if (!isRemoveIssueLabelArgs(args)) { throw new Error('Invalid arguments for removeIssueLabel'); } return await linearService.removeIssueLabel(args.issueId, args.labelId); } catch (error) { logError('Error removing label from issue', error); throw error; } }; }
- The tool schema definition for linear_removeIssueLabel, specifying input (issueId, labelId) and output schemas.export const removeIssueLabelToolDefinition: MCPToolDefinition = { name: 'linear_removeIssueLabel', description: 'Remove a label from an issue in Linear', input_schema: { type: 'object', properties: { issueId: { type: 'string', description: 'ID or identifier of the issue to remove the label from (e.g., ABC-123)', }, labelId: { type: 'string', description: 'ID of the label to remove from the issue', }, }, required: ['issueId', 'labelId'], }, output_schema: { type: 'object', properties: { success: { type: 'boolean' }, issueId: { type: 'string' }, labelId: { type: 'string' }, }, }, };
- src/tools/handlers/index.ts:110-110 (registration)Registration of the handleRemoveIssueLabel as the linear_removeIssueLabel tool in the registerToolHandlers function.linear_removeIssueLabel: handleRemoveIssueLabel(linearService),
- src/tools/type-guards.ts:240-255 (helper)Type guard helper function used in the handler to validate tool arguments match the expected {issueId: string, labelId: string} shape./** * Type guard for linear_removeIssueLabel tool arguments */ export function isRemoveIssueLabelArgs(args: unknown): args is { issueId: string; labelId: string; } { return ( typeof args === 'object' && args !== null && 'issueId' in args && typeof (args as { issueId: string }).issueId === 'string' && 'labelId' in args && typeof (args as { labelId: string }).labelId === 'string' ); }