resize_node
Resize Figma design elements by specifying new width and height values. Use this tool to adjust node dimensions programmatically within your design workflow.
Instructions
Resize a node in Figma
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| nodeId | Yes | The ID of the node to resize | |
| width | Yes | New width | |
| height | Yes | New height |
Implementation Reference
- src/talk_to_figma_mcp/server.ts:758-794 (registration)Registration of the 'resize_node' MCP tool, including inline input schema definition and handler function that forwards the resize command to the Figma plugin via WebSocket.server.tool( "resize_node", "Resize a node in Figma", { nodeId: z.string().describe("The ID of the node to resize"), width: z.number().positive().describe("New width"), height: z.number().positive().describe("New height"), }, async ({ nodeId, width, height }) => { try { const result = await sendCommandToFigma("resize_node", { nodeId, width, height, }); const typedResult = result as { name: string }; return { content: [ { type: "text", text: `Resized node "${typedResult.name}" to width ${width} and height ${height}`, }, ], }; } catch (error) { return { content: [ { type: "text", text: `Error resizing node: ${error instanceof Error ? error.message : String(error) }`, }, ], }; } } );
- Zod input schema for the resize_node tool: requires nodeId (string), width and height (positive numbers).{ nodeId: z.string().describe("The ID of the node to resize"), width: z.number().positive().describe("New width"), height: z.number().positive().describe("New height"), },
- src/talk_to_figma_mcp/server.ts:766-794 (handler)Handler function for resize_node tool. Sends the resize parameters to Figma plugin using sendCommandToFigma and returns success/error message with MCP content format.async ({ nodeId, width, height }) => { try { const result = await sendCommandToFigma("resize_node", { nodeId, width, height, }); const typedResult = result as { name: string }; return { content: [ { type: "text", text: `Resized node "${typedResult.name}" to width ${width} and height ${height}`, }, ], }; } catch (error) { return { content: [ { type: "text", text: `Error resizing node: ${error instanceof Error ? error.message : String(error) }`, }, ], }; } } );