linear_transferIssue
Transfer an issue to another team in Linear project management. Specify the issue ID and target team ID to move tasks between teams.
Instructions
Transfer an issue to another team
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| issueId | Yes | ID or identifier of the issue to transfer (e.g., ABC-123) | |
| teamId | Yes | ID of the team to transfer the issue to |
Implementation Reference
- The handler function that implements the core logic for the 'linear_transferIssue' tool. It validates the input arguments using a type guard and calls the LinearService to perform the issue transfer.export function handleTransferIssue(linearService: LinearService) { return async (args: unknown) => { try { if (!isTransferIssueArgs(args)) { throw new Error('Invalid arguments for transferIssue'); } return await linearService.transferIssue(args.issueId, args.teamId); } catch (error) { logError('Error transferring issue', error); throw error; } }; }
- The tool definition including input and output schemas for 'linear_transferIssue'.export const transferIssueToolDefinition: MCPToolDefinition = { name: 'linear_transferIssue', description: 'Transfer an issue to another team', input_schema: { type: 'object', properties: { issueId: { type: 'string', description: 'ID or identifier of the issue to transfer (e.g., ABC-123)', }, teamId: { type: 'string', description: 'ID of the team to transfer the issue to', }, }, required: ['issueId', 'teamId'], }, output_schema: { type: 'object', properties: { success: { type: 'boolean' }, issue: { type: 'object', properties: { id: { type: 'string' }, identifier: { type: 'string' }, title: { type: 'string' }, team: { type: 'object' }, url: { type: 'string' }, }, }, }, }, };
- src/tools/handlers/index.ts:119-119 (registration)Registration of the handler for 'linear_transferIssue' in the tool handlers registry.linear_transferIssue: handleTransferIssue(linearService),
- src/tools/type-guards.ts:363-375 (schema)Type guard function for validating arguments to the 'linear_transferIssue' tool.export function isTransferIssueArgs(args: unknown): args is { issueId: string; teamId: string; } { return ( typeof args === 'object' && args !== null && 'issueId' in args && typeof (args as { issueId: string }).issueId === 'string' && 'teamId' in args && typeof (args as { teamId: string }).teamId === 'string' ); }