Skip to main content
Glama
by grab

set_text_content

Update text content in Figma by specifying the node ID and new text. Enables programmatic text modification in designs through natural language commands.

Instructions

Set the text content of an existing text node in Figma

Input Schema

NameRequiredDescriptionDefault
nodeIdYesThe ID of the text node to modify
textYesNew text content

Input Schema (JSON Schema)

{ "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "nodeId": { "description": "The ID of the text node to modify", "type": "string" }, "text": { "description": "New text content", "type": "string" } }, "required": [ "nodeId", "text" ], "type": "object" }

Implementation Reference

  • MCP tool registration for 'set_text_content'. Includes schema definition and handler function that sends the command to the Figma plugin via WebSocket.
    // Set Text Content Tool server.tool( "set_text_content", "Set the text content of an existing text node in Figma", { nodeId: z.string().describe("The ID of the text node to modify"), text: z.string().describe("New text content"), }, async ({ nodeId, text }: any) => { try { const result = await sendCommandToFigma("set_text_content", { nodeId, text, }); const typedResult = result as { name: string }; return { content: [ { type: "text", text: `Updated text content of node "${typedResult.name}" to "${text}"`, }, ], }; } catch (error) { return { content: [ { type: "text", text: `Error setting text content: ${error instanceof Error ? error.message : String(error) }`, }, ], }; } } );
  • Handler function for the 'set_text_content' tool. Forwards nodeId and text to Figma plugin command 'set_text_content' and formats success/error response.
    async ({ nodeId, text }: any) => { try { const result = await sendCommandToFigma("set_text_content", { nodeId, text, }); const typedResult = result as { name: string }; return { content: [ { type: "text", text: `Updated text content of node "${typedResult.name}" to "${text}"`, }, ], }; } catch (error) { return { content: [ { type: "text", text: `Error setting text content: ${error instanceof Error ? error.message : String(error) }`, }, ], }; } }
  • Input schema validation using Zod for 'set_text_content' tool parameters: nodeId (string) and text (string).
    { nodeId: z.string().describe("The ID of the text node to modify"), text: z.string().describe("New text content"), },
  • TypeScript type definition for FigmaCommand parameters of 'set_text_content' in CommandParams interface.
    set_text_content: { nodeId: string; text: string; };

Other Tools

Related Tools

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/grab/cursor-talk-to-figma-mcp'

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