clone_node
Duplicate design elements directly in Figma using AI commands. Simplify node replication to enhance design workflows while maintaining consistency.
Instructions
Clone an existing node in Figma
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- The MCP tool handler for 'clone_node'. Registers the tool, defines the input schema using Zod, and implements the execution logic by sending a 'clone_node' command to the Figma plugin via websocket. Returns success/error messages.// Clone Node Tool server.tool( "clone_node", "Clone an existing node in Figma", { nodeId: z.string().describe("The ID of the node to clone"), x: z.number().optional().describe("New X position for the clone"), y: z.number().optional().describe("New Y position for the clone") }, async ({ nodeId, x, y }) => { try { const result = await sendCommandToFigma('clone_node', { nodeId, x, y }); const typedResult = result as { name: string, id: string }; return { content: [ { type: "text", text: `Cloned node "${typedResult.name}" with new ID: ${typedResult.id}${x !== undefined && y !== undefined ? ` at position (${x}, ${y})` : ''}` } ] }; } catch (error) { return { content: [ { type: "text", text: `Error cloning node: ${error instanceof Error ? error.message : String(error)}` } ] }; } } );
- src/talk_to_figma_mcp/tools/index.ts:15-15 (registration)Registration call for creation tools, which includes the clone_node tool.registerCreationTools(server);
- src/talk_to_figma_mcp/server.ts:34-34 (registration)Top-level registration of all tools via registerTools(server), which calls registerCreationTools including clone_node.registerTools(server);
- Input schema (Zod) for the clone_node tool defining parameters nodeId, x (optional), y (optional).{ nodeId: z.string().describe("The ID of the node to clone"), x: z.number().optional().describe("New X position for the clone"), y: z.number().optional().describe("New Y position for the clone") },
- 'clone_node' included in FigmaCommand type union for TypeScript type safety.| "clone_node"