Skip to main content
Glama

linear_duplicateIssue

Create a copy of an existing Linear issue to replicate its details for similar tasks or workflows.

Instructions

Duplicate an issue

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
issueIdYesID or identifier of the issue to duplicate (e.g., ABC-123)

Implementation Reference

  • The primary handler function for the 'linear_duplicateIssue' MCP tool. It validates the input arguments using a type guard and delegates to the LinearService.duplicateIssue method.
    export function handleDuplicateIssue(linearService: LinearService) { return async (args: unknown) => { try { if (!isDuplicateIssueArgs(args)) { throw new Error('Invalid arguments for duplicateIssue'); } return await linearService.duplicateIssue(args.issueId); } catch (error) { logError('Error duplicating issue', error); throw error; } }; }
  • The tool schema definition specifying input (issueId) and output structures for 'linear_duplicateIssue'.
    export const duplicateIssueToolDefinition: MCPToolDefinition = { name: 'linear_duplicateIssue', description: 'Duplicate an issue', input_schema: { type: 'object', properties: { issueId: { type: 'string', description: 'ID or identifier of the issue to duplicate (e.g., ABC-123)', }, }, required: ['issueId'], }, output_schema: { type: 'object', properties: { success: { type: 'boolean' }, originalIssue: { type: 'object', properties: { id: { type: 'string' }, identifier: { type: 'string' }, title: { type: 'string' }, }, }, duplicatedIssue: { type: 'object', properties: { id: { type: 'string' }, identifier: { type: 'string' }, title: { type: 'string' }, url: { type: 'string' }, }, }, }, }, };
  • Registration of the 'linear_duplicateIssue' tool handler within the registerToolHandlers function.
    linear_duplicateIssue: handleDuplicateIssue(linearService),
  • Type guard function used by the handler to validate and type-check the input arguments for the tool.
    export function isDuplicateIssueArgs(args: unknown): args is { issueId: string; } { return ( typeof args === 'object' && args !== null && 'issueId' in args && typeof (args as { issueId: string }).issueId === 'string' ); }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/tacticlaunch/mcp-linear'

If you have feedback or need assistance with the MCP directory API, please join our Discord server