Skip to main content
Glama

component_update

Destructive

Creates a product component (without componentID; productID and title are required) or updates a component's name and description, or removes its main Figma frame; omitted fields stay unchanged, module membership is not affected. Only at the user's request or with their consent: the product structure belongs to the team.

Input Schema

NameRequiredDescriptionDefault
descNoDescription, Markdown
titleNoName
designNonull - remove the component's main Figma frame
productIDNoProduct ID of a new component
componentIDNoComponent ID; omitted - a new component

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changed
    • removedInput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
    • changedInput schema / properties / componentID / description
      Previous value: -"Component ID"New value: +"Component ID; omitted - a new component"
    • changedInput schema / properties / desc / description
      Previous value: -"New description, Markdown"New value: +"Description, Markdown"
    • addedInput schema / properties / productID
      Added value: +{
      +  "description": "Product ID of a new component",
      +  "format": "uuid",
      +  "type": "string"
      +}
    • changedInput schema / properties / title / description
      Previous value: -"New name"New value: +"Name"
    • removedInput schema / required
      Removed value: -[
      -  "componentID"
      -]
  2. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is covered structurally. The description adds real value on top: omitted fields stay unchanged (PATCH semantics), module membership is unaffected, and it names what gets destroyed (the main Figma frame). It does not discuss reversibility or response shape, so not a 5.

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

Conciseness4/5

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

Dense but front-loaded: the create/update/remove branching comes first, then the invariants, then the consent caveat. Each clause carries information. Slightly heavy as a single sentence but nothing is wasted.

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?

For a multi-mode mutation tool with no output schema, the description covers the branching logic, side effects (frame removal, unchanged omitted fields, module membership), and the consent guardrail. What it omits is authorization mechanics and whether the frame removal is reversible, which would be the last gaps.

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 coverage is 100%, so the baseline is 3, but the description adds genuine meaning beyond the schema by explaining parameter interaction: omitting componentID creates a new component requiring productID and title, while supplying it triggers an update. This conditional logic is not obvious from the flat schema alone.

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 states a specific verb+resource ('Creates a product component', 'updates a component's name and description', 'removes its main Figma frame') and spells out the branching condition that selects each mode. An agent can distinguish this from sibling module_update or product_update purely from the text.

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?

It gives an explicit precondition for use ('Only at the user's request or with their consent: the product structure belongs to the team'), which is strong when-to-use guidance. It does not name alternative tools or state when-not to use it, so it stops short of a 5.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources