Skip to content

Tools

Plumb exposes twelve MCP tools. Each one has a focused, single responsibility — the agent composes them.

ToolWhat it does
plumb_statusSelf-description, key legend, connection state. Call first.
plumb_outlineEvery screen in the file (id, name, size).
plumb_nodeExtract a screen as compact PDS — by id or by name.
plumb_tokensDesign-token table (colours, type, radii, shadows).
plumb_selectionThe user's live Figma selection.
plumb_assetsExport icons (SVG) + images (PNG) — three modes.
plumb_screenshotRender any node to PNG/JPG.
plumb_searchFind nodes by name and/or type.
plumb_componentsList components + instance usages.
plumb_verifyDiff your rendered layout against the design.
plumb_fig_outlineHeadless: list every screen in a saved .fig file from disk.
plumb_fig_nodeHeadless: fetch one node from a saved .fig file by id.

Tool selection

If you only remember three:

  • plumb_outline — figure out which screens exist.
  • plumb_node — get the design spec for one of them.
  • plumb_verify — confirm your code matches.

The other seven are how the agent fills in the details — exports, screenshots, search, design tokens, and component awareness.

How the agent picks paths

Most tools accept either id (canonical) or name (looked up against the live outline). Pass id whenever you have it; it's unambiguous. Names can be duplicated — Plumb handles that by returning a list of matches for the agent to disambiguate.

Tools that need design data auto-pick between the plugin path (instant, no rate limits, requires Figma open) and the REST path (headless, rate-limited, requires FIGMA_TOKEN). With the plugin paired, omit fileKey. For REST, pass fileKey + id.

The plugin-path tools — plumb_outline, plumb_selection, plumb_assets, plumb_screenshot, plumb_search, plumb_components — require the plugin paired and won't fall back to REST. The other tools (plumb_node, plumb_tokens, plumb_verify) work on both paths.

Released under the MIT License.