transfer_workflow
Move n8n workflows between projects or change ownership to organize automation processes.
Instructions
Transfer an n8n workflow to a different project or owner
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| projectId | No | ||
| newOwnerId | No |
Implementation Reference
- src/index.ts:451-455 (handler)MCP server handler for the transfer_workflow tool. Extracts id and transferData from arguments and delegates to N8nClient.transferWorkflow, then formats the response.private async handleTransferWorkflow(args: { id: string | number } & TransferRequest) { const { id, ...transferData } = args; const result = await this.n8nClient.transferWorkflow(id, transferData); return { content: [{ type: 'text', text: JSON.stringify(jsonSuccess(result), null, 2) }] }; }
- src/n8n-client.ts:503-506 (handler)Core implementation of workflow transfer in N8nClient. Performs PUT request to n8n REST API endpoint `/workflows/${id}/transfer` with transferData.async transferWorkflow(id: string | number, transferData: TransferRequest): Promise<TransferResponse> { const response = await this.api.put<N8nApiResponse<TransferResponse>>(`/workflows/${id}/transfer`, transferData); return response.data.data; }
- src/index.ts:192-192 (registration)Tool registration entry in the list_tools response. Defines the tool name, description, and input schema.{ name: 'transfer_workflow', description: 'Transfer an n8n workflow to a different project or owner', inputSchema: { type: 'object', properties: { id: { oneOf: [{ type: 'string' }, { type: 'number' }] }, projectId: { type: 'string' }, newOwnerId: { type: 'string' } }, required: ['id'] } },
- src/types.ts:74-83 (schema)TypeScript interfaces for TransferRequest (input parameters: projectId, newOwnerId) and TransferResponse (output). Used by the handler functions.export interface TransferRequest { projectId?: string; newOwnerId?: string; } export interface TransferResponse { id: string | number; projectId?: string; newOwnerId?: string; }