Skip to main content
Glama

create_instance

Instantiate a Figma component from a local ID or published key, with optional name, position, and parent.

Instructions

Instantiate a component. Provide componentId (a local COMPONENT node) or componentKey (a published component imported via the API). Optionally name / position / parent the instance. Returns { ok, nodeId, name, type } for the new instance.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
xNo
yNo
nameNoOptional name for the new instance
parentIdNoContainer node id; omit for current page
componentIdNoLocal component node id to instantiate
componentKeyNoPublished component key to instantiate
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a mutating (readOnlyHint: false) and non-destructive action. The description adds valuable behavioral details: the two acceptable source identifiers, optional position/name/parent parameters, and the return shape { ok, nodeId, name, type }. It does not disclose error behavior when both or neither identifier is provided, but overall complements the annotations well.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four tight sentences deliver all key information without redundancy. Every sentence earns its place: purpose, source identifiers, optional parameters, and return value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the main usage modes, optional placement, and the return contract, which is adequate for a tool with no output schema. However, it omits behavior when both or neither componentId/componentKey are supplied, leaving a potential ambiguity given no required parameters. Overall, it is nearly complete for typical usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema descriptions cover componentId, componentKey, name, and parentId, while x and y have no schema descriptions. The description adds meaning by referring to 'name / position / parent', implicitly explaining x/y as position and reinforcing the semantics of the other parameters. This compensates for the 67% schema coverage, though x/y could have been more explicit.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'Instantiate' with the resource 'component', and clearly distinguishes between local and published component sources via componentId and componentKey. This sets it apart from sibling tools like create_component or swap_component, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly indicates when to use this tool (to create an instance from a local or published component) and provides context for optional placement. However, it does not explicitly state when not to use it or name alternative tools, so it stops short of full usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other 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/awdr74100/figwright'

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