Skip to main content
Glama

inspect

Summarizes a Figma node's bounds, layout, typography, text previews and child counts, with optional image dimensions and paint crop rectangles, so agents can make design decisions.

Instructions

Compact expanded node summary: bounds, layout, typography, text previews and child counts. For image decisions, images=true adds original dimensions/bytes and source-pixel rectangles before masks, not blur diagnoses. Depth and a 200-node budget bound the summary; image paints have their own 200-item limit. nodes returns full design data.

Input Schema

NameRequiredDescriptionDefault
fileYesthe saved .fig: a local path (absolute recommended), or gs://bucket/object using gcloud; remote sources are unavailable with --root
nodeYesa stored node id (12:345 or 12-345), full instance sublayer id (I12:345;67:89) from inspect/nodes, or a Figma URL with ?node-id=
depthNo0-10 levels below the node, default 1; text previews up to 200 characters
imagesNoinclude source bitmap dimensions/bytes and per-paint source-pixel crop rectangles; no files written
statesNoinclude bounded variants and prototype field evidence with exact sources/unknowns; retains instance overrides, infers no business conditions and renders no other variants
compareVariantNocompare node with this other stored variant in the same component set; adds bounded raw-field and descendant-multiset differences, exact sources and unknown pairing; no alternate rendering or business inference

Output Schema

NameRequiredDescriptionDefault
nodeYesCompact node with partial layout semantics and type-only property definitions; _figlens.semantics records source/verification. Definitions, definition evidence and _figlens.renderDiagnostics each have at most 20 entries per node; truncated includes omitted nodes or entries
imagesNooptional source image evidence when images=true
statesNooptional variants and prototype field evidence when states=true; independent truncation, source file, node/override provenance and unknown markers; no inferred business logic
truncatedYes
variantComparisonNooptional same-set definition comparison when compareVariant is supplied; raw fields, descendant value multisets, unpaired nodes, unknowns and independent truncation; not a pixel comparison

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed13 schema fields changedv0.7.2
    • addedInput schema / additionalProperties
      Added value: +true
    • addedInput schema / properties / compareVariant
      Added value: +{
      +  "description": "compare node with this other stored variant in the same component set; adds bounded raw-field and descendant-multiset differences, exact sources and unknown pairing; no alternate rendering or business inference",
      +  "minLength": 1,
      +  "type": "string"
      +}
    • addedInput schema / properties / depth / default
      Added value: +1
    • addedInput schema / properties / depth / maximum
      Added value: +10
    • addedInput schema / properties / depth / minimum
      Added value: +0
    • changedInput schema / properties / file / description
      Previous value: -"the .fig file (File > Save local copy): an absolute path, or gs://bucket/object"New value: +"the saved .fig: a local path (absolute recommended), or gs://bucket/object using gcloud; remote sources are unavailable with --root"
    • addedInput schema / properties / file / minLength
      Added value: +1
    • addedInput schema / properties / images / default
      Added value: +false
    • changedInput schema / properties / node / description
      Previous value: -"a node id (12:345 or 12-345) or a Figma URL with ?node-id="New value: +"a stored node id (12:345 or 12-345), full instance sublayer id (I12:345;67:89) from inspect/nodes, or a Figma URL with ?node-id="
    • addedInput schema / properties / states
      Added value: +{
      +  "default": false,
      +  "description": "include bounded variants and prototype field evidence with exact sources/unknowns; retains instance overrides, infers no business conditions and renders no other variants",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / node / description
      Added value: +"Compact node with partial layout semantics and type-only property definitions; _figlens.semantics records source/verification. Definitions, definition evidence and _figlens.renderDiagnostics each have at most 20 entries per node; truncated includes omitted nodes or entries"
    • addedOutput schema / properties / states
      Added value: +{
      +  "description": "optional variants and prototype field evidence when states=true; independent truncation, source file, node/override provenance and unknown markers; no inferred business logic",
      +  "type": "object"
      +}
    • addedOutput schema / properties / variantComparison
      Added value: +{
      +  "description": "optional same-set definition comparison when compareVariant is supplied; raw fields, descendant value multisets, unpaired nodes, unknowns and independent truncation; not a pixel comparison",
      +  "type": "object"
      +}
  2. Changed2 schema fields changedv0.5.0
    • addedInput schema / properties / images
      Added value: +{
      +  "description": "include source bitmap dimensions/bytes and per-paint source-pixel crop rectangles; no files written",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / images
      Added value: +{
      +  "description": "optional source image evidence when images=true",
      +  "type": "object"
      +}
  3. First observed

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does so well: it discloses depth bounding, a 200-node budget, a separate 200-item image-paint limit, and that image mode writes no files. It also sets negative expectations — "not blur diagnoses", "infers no business conditions", "renders no other variants" — which is exactly the kind of scope containment an agent needs on an unannotated tool.

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?

Four sentences, no filler, and the output shape is front-loaded before the caveats and the sibling reference. It is occasionally terse to the point of opacity — "before masks, not blur diagnoses" reads as an inside reference — but nothing is redundant.

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?

An output schema exists, so return values need not be spelled out, and the description instead covers budgets, scope containment, and side-effect absence, which is the right allocation for an unannotated six-parameter tool. The remaining gap is that the two variant-related parameters are never addressed in prose.

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

Parameters3/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. The prose adds genuine meaning for `images` (source bitmap dimensions/bytes and per-paint crop rectangles, explicitly excluding blur diagnoses) and for `depth` via the 200-node budget, but it says nothing about `compareVariant` or `states`, leaving the schema to carry those alone.

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

Purpose4/5

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

"Compact expanded node summary: bounds, layout, typography, text previews and child counts" names the resource and enumerates its contents, and the closing clause "nodes returns full design data" distinguishes it from the closest sibling. The verb is nominal rather than active, so the operation is inferred rather than stated, but the returned shape is unmistakable.

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

Usage Guidelines3/5

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

Selection guidance is implied rather than stated: "nodes returns full design data" hints this is the lightweight alternative, and "For image decisions, images=true adds..." gives conditional guidance for one flag. There is no explicit when-to-use/when-not statement, no prerequisites (e.g., that it needs a saved .fig), and two of six parameters (states, compareVariant) get no usage framing at all.

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

Deploy Server

Other Tools