Skip to main content
Glama

Component catalogue

fig_components
Read-only

List components defined in a Figma .fig file, showing properties, defaults, and instance counts. Filter by name and sort by usage to reveal the design system's most-used symbols.

Instructions

List the components (SYMBOL nodes) defined in the file: guid, name, description, the component-set it belongs to when it is a variant, its property definitions with defaults, and how many instances of it exist. Filter with query (case-insensitive substring of the name). Sorted by instance count, most-used first, so the load-bearing parts of the design system come back before one-off symbols. Follow up with fig_instance on a specific INSTANCE guid.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fileYesPath to the .fig / .figma file (absolute, or relative to the server CWD).
limitNoDefault 50.
queryNoCase-insensitive substring of the component name.
cursorNoOpaque nextCursor from a previous truncated response; resumes where it stopped.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so the description does not need to restate safety. It adds useful behavioral details beyond the schema: sorting by instance count (most-used first), the variant nuance (component-set when variant), and the filtering behavior. It does not contradict annotations.

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?

Three sentences, each adding value: the first lists outputs, the second explains filtering and sorting, the third suggests a follow-up. It is front-loaded with the core purpose and avoids fluff. Slightly long but well-structured.

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?

Given the tool's moderate complexity (4 params, no output schema) and the read-only annotations, the description covers the essential behavior: what it returns, sorting, filtering, and a follow-up path. It does not describe pagination explicitly, but the cursor parameter in the schema covers that. No critical gaps for an agent to call it correctly.

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 all four parameters are documented in the schema. The description reiterates the query parameter (case-insensitive substring) and implicitly references sorting but adds no new semantic detail beyond what the schema already provides. Baseline 3 is appropriate.

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?

The description clearly states the tool lists components (SYMBOL nodes) in a file and enumerates the returned fields (guid, name, description, component-set, properties, instance count). It is specific and distinguishable from fig_instance (which is referenced as a follow-up), though it does not explicitly contrast with other siblings like fig_find or fig_node.

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?

The description implies when to use it (to get a catalogue of components) and gives a follow-up suggestion ('Follow up with fig_instance on a specific INSTANCE guid'), but it does not explicitly state when not to use it or name alternatives. The guidance is adequate but not exhaustive.

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