Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Layerbridge

NPM · LAYERBRIDGE

Read, edit and export the Figma file open in a local plugin. No REST API, no rate limits.

Available components

0 this week 75 Trust /100

Last scanned (21 hours ago)

Scores higher than 51% of npm servers

Category Design and Media

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security80
  • No malware found by supply-chain analysis.Pass
  • CVE check failed: a known high-severity CVE affects zod 3.25.76, a direct dependency. A fixed version is available. View diagnostics → Fail
  • No install/post-install scripts declared.Pass
  • 35 of 103 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability68
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 16209 tokens (~139/item across 116 items; 116 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management97
  • Stability observed for 29 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage93
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 78% of tool parameters carry a description.Partial
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 0 of 10 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "delete_style" implies "delete" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
  • An AI judge read all 116 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 4 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.

  • 3 Nov 26 −1
    • Security disclosure: unverified → fail ▼ functional
    • Stability: pass → 0.93 functional
  • 30 Oct 26 0
    • Security disclosure: fail → unverified ▼ functional
  • 24 Oct 26 −6
    • CVE-2023-54404 affects this package: high ▼ security
    • Known CVEs: pass → fail ▼ security
  • 22 Oct 26 +1
    • Stability: 0.97 → pass security
    • Security disclosure: unverified → fail ▼ functional
  • 21 Oct 26 0
    • Security disclosure: fail → unverified ▼ functional
  • 20 Oct 26 −1
    • Stability: pass → 0.93 functional
  • 17 Oct 26 +3
    • Stability: 0.80 → pass security
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 4 Nov 2026 · Analysed npm/layerbridge@0.3.0

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Vulnerabilities 1 finding
ID CVE Severity Vector Fix available
GHSA-mrhx-c7xc-m3w5 CVE-2023-54404 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yes

Background: What a vulnerability scan can and cannot prove →

Dependencies 103 packages
Packages resolved 103
Stale 35
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 116 exposed · ~16,209 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
add_component_property ~94

Add a component property to a component or component set.

NameTypeReqDescription
defaultValuestring|booleanyes–
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
namestringyes–
nodeIdstringyesFigma node ID, e.g. '4029:12345'
propertyTypestringyes–

No output schema declared.

No examples provided.

add_dev_resource ~86

Attach a dev resource link to a layer. Works in Dev Mode.

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
namestring––
nodeIdstringyesFigma node ID, e.g. '4029:12345'
urlstringyes–

No output schema declared.

No examples provided.

add_variable_mode ~65

Add a mode (e.g. Dark) to a variable collection.

NameTypeReqDescription
collectionIdstringyes–
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
namestringyes–

No output schema declared.

No examples provided.

apply_animation_style ~127

Apply a preset animation style to a node (Motion API beta). When multiple files are connected, specify fileKey.

NameTypeReqDescription
animationStyleDataobject–Optional values used to configure the applied animation style (e.g. duration, timelineOffset, axis, direction)
fileKeystring–The fileKey of the Figma file to query. Required when multiple files are connected. Use list_files to see connected files.
nodeIdstringyesThe node ID to apply the style to
styleIdstringyesThe ID of the animation style to apply

No output schema declared.

No examples provided.

apply_manual_keyframe_track ~149

Applies or replaces the manual Motion keyframe track for a property, paint, or effect field on a node. When multiple files are connected, specify fileKey.

NameTypeReqDescription
fieldobjectyesThe property, paint, or effect field to animate. Example: { type: 'PROPERTY', name: 'TRANSLATION_X' }
fileKeystring–The fileKey of the Figma file to query. Required when multiple files are connected. Use list_files to see connected files.
nodeIdstringyesThe node ID to apply the track to
trackobjectyesThe manual keyframe track to write. Contains keyframes, baseValue, etc.

No output schema declared.

No examples provided.

apply_style ~91

Apply a style to a layer as its fill, stroke, text, effect or grid style.

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
nodeIdstringyesFigma node ID, e.g. '4029:12345'
styleIdstringyes–
targetstring––

No output schema declared.

No examples provided.

batch_rename_nodes ~135

Rename many layers: regex find/replace, or a template with {name} {index} {type}. Target explicit nodeIds or every layer under rootId.

NameTypeReqDescription
caseSensitiveboolean––
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
findstring––
nodeIdsarray––
replacestring––
rootId––Figma node ID, e.g. '4029:12345'
startIndexinteger––
templatestring––

No output schema declared.

No examples provided.

bind_variable ~131

Bind a variable to a layer property (width, height, itemSpacing, paddingLeft, cornerRadius, opacity, visible, characters…) or to a fill/stroke colour (field 'fill' or 'stroke'). Omit variableId to unbind.

NameTypeReqDescription
fieldstringyes–
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
nodeIdstringyesFigma node ID, e.g. '4029:12345'
paintIndexinteger––
variableIdstring––

No output schema declared.

No examples provided.

check_accessibility ~440

Check a frame for WCAG 2.2 accessibility problems: text contrast (1.4.3 AA / 1.4.6 AAA), target size (2.5.8, or 2.5.5 at 44px) and very small text. Contrast is computed from the layers behind each text; when the background is an image, gradient, blur or blend it renders the containing layer as a PNG and samples the pixels behind the text, reporting the worst background colour (method: sampled). Returns a 0-100 score and issues sorted by severity, each with the node, colours, ratio, required ratio, informational APCA Lc, and the nearest colour variable or style that would pass. Optional: write JSON + Markdown reports to outputDir, and annotate failing layers in Figma (annotate: true changes the file; re-running replaces its own annotations). Cost: one scan, plus one export per containing layer that needs sampling (capped by maxExports).

NameTypeReqDescription
annotateboolean–Add a Figma annotation to each failing layer (changes the file; design editor only)
checksarray–Which checks to run (default all three)
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
levelstring–WCAG level (default AA)
maxExportsinteger–Most layers to render for pixel sampling (default 25)
maxIssuesinteger–Most issues in the reply (default 200; files list all)
minFontSizenumber–Warn below this font size in px (default 12)
minTargetnumber–Minimum target size in px (default 24 for AA per WCAG 2.5.8; 44 for AAA 2.5.5 and Apple's HIG)
nodeIdstringyesFigma node ID, e.g. '4029:12345'
outputDirstring–Write accessibility-<node>.json and .md here (inside the allowed output folders)

No output schema declared.

No examples provided.

combine_as_variants ~84

Combine two or more components into a component set (variants).

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
namestring––
nodeIdsarrayyes–
parentId––Figma node ID, e.g. '4029:12345'

No output schema declared.

No examples provided.

compare_to_image ~352

Compare a Figma node with the built page or component: exports the node as PNG, compares it with a local screenshot (image) or a screenshot Playwright takes of a local URL, and writes design, actual and diff PNGs. Returns the mismatch percentage and the largest mismatching regions in design coordinates, each with the layers most likely responsible. url needs the optional Playwright install.

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
fitstring–When sizes differ: crop compares the overlapping top-left area (default); resize scales the image to the design's size first
imagestring–Path to a PNG (or JPG, with the optional jpeg-js) of the built UI, inside the allowed folders
maxRegionsinteger–How many regions to return (default 5)
nodeIdstringyesFigma node ID, e.g. '4029:12345'
outputDirstring–Where to write the PNGs (default figma-compare), inside the allowed folders
scalenumber–Pixels per design unit for both images (default 1). Use 2 for a retina screenshot.
selectorstring–With url: screenshot only the first element matching this CSS selector
thresholdnumber–pixelmatch colour threshold, 0–1 (default 0.1; lower is stricter)
urlstring–A localhost or file URL to screenshot instead (needs Playwright)
viewportobject–With url: window size in CSS pixels (default: the node's size)

No output schema declared.

No examples provided.

create_code_block ~103

FigJam: add a code block with syntax highlighting.

NameTypeReqDescription
codestringyes–
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
languagestring––
xnumber–Left edge, in the parent's coordinates. Without x, y or parentId the item is centred in view.
ynumber–Top edge, in the parent's coordinates

No output schema declared.

No examples provided.

create_component ~80

Turn an existing layer into a main component.

NameTypeReqDescription
descriptionstring––
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
namestring––
nodeIdstringyesFigma node ID, e.g. '4029:12345'

No output schema declared.

No examples provided.

create_connector ~155

FigJam: connect two items (stickies, shapes, sections…) with a connector line that follows them when they move.

NameTypeReqDescription
endCapstring–Default is FigJam's arrow
endMagnetstring––
endNodeId–yes–
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
labelstring––
lineTypestring––
startCapstring–Default NONE
startMagnetstring–Which side it attaches to (default AUTO)
startNodeIdstringyesFigma node ID, e.g. '4029:12345'

No output schema declared.

No examples provided.

create_effect_style ~68

Create a local effect style (shadows / blurs). Shadow colours may be hex.

NameTypeReqDescription
effectsarrayyes–
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
namestringyes–

No output schema declared.

No examples provided.

create_frame ~173

Create a new frame, optionally inside a specified parent. You can set name, size, position, and a solid fill. When multiple files are connected, specify fileKey.

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file to query. Required when multiple files are connected. Use list_files to see connected files.
fillHexstring–Optional solid fill color as hex
fillOpacitynumber–Optional solid fill opacity from 0 to 1
heightnumber–Frame height
namestring–Optional frame name
parentIdstring–Optional parent node ID to append the frame into
widthnumber–Frame width
xnumber–Optional x position
ynumber–Optional y position

No output schema declared.

No examples provided.

create_from_svg ~95

Create editable vector layers from an SVG string.

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
namestring––
parentIdstring–Figma node ID, e.g. '4029:12345'
svgstringyes–
xnumber––
ynumber––

No output schema declared.

No examples provided.

create_grid_style ~66

Create a local layout-grid style using Figma's LayoutGrid objects.

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
layoutGridsarrayyes–
namestringyes–

No output schema declared.

No examples provided.

create_image ~222

Create an image-backed rectangle from a local file path, remote URL, or data URI. You can set its parent, position, size, corner radius, and fit mode. When multiple files are connected, specify fileKey.

NameTypeReqDescription
cornerRadiusnumber–Optional corner radius
fileKeystring–The fileKey of the Figma file to query. Required when multiple files are connected. Use list_files to see connected files.
heightnumber–Optional height
namestring–Optional image node name
parentIdstring–Optional parent node ID to append the image into
scaleModestring–How the image should fit its bounds: FILL (default) or FIT
sourcestringyesImage source. Accepts a local file path (absolute or relative to the MCP server cwd), an http/https URL, or a data URI.
widthnumber–Optional width
xnumber–Optional x position
ynumber–Optional y position

No output schema declared.

No examples provided.

create_instance ~125

Place an instance of a local component (componentId) or a published library component (componentKey).

NameTypeReqDescription
componentIdstring–Figma node ID, e.g. '4029:12345'
componentKeystring–Key of a published library component
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
parentId––Figma node ID, e.g. '4029:12345'
xnumber––
ynumber––

No output schema declared.

No examples provided.

create_page ~148

Create a new page in the Figma document, optionally naming it and switching the editor to it. Returns the new page's ID, which can be passed as parentId to create_frame / create_text / create_shape / create_image to author content on that page. When multiple files are connected, specify fileKey.

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file to query. Required when multiple files are connected. Use list_files to see connected files.
namestring–Optional page name (defaults to Figma's 'Page N')
setAsCurrentboolean–When true, switch the editor to the new page after creating it (default false)

No output schema declared.

No examples provided.

create_paint_style ~88

Create a local colour style from one hex colour or a stack of solid paints.

NameTypeReqDescription
descriptionstring––
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
hexstring––
namestringyes–
opacitynumber––
paintsarray––

No output schema declared.

No examples provided.

create_section ~103

Create a section, either at a given box or wrapped around existing layers (nodeIds).

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
heightnumber––
namestring––
nodeIdsarray––
paddingnumber––
widthnumber––
xnumber––
ynumber––

No output schema declared.

No examples provided.

create_shape ~254

Create a rectangle, ellipse, or line, optionally inside a specified parent. You can set its size, position, rotation, fill, and stroke. When multiple files are connected, specify fileKey.

NameTypeReqDescription
cornerRadiusnumber–Optional corner radius for supported shapes
fileKeystring–The fileKey of the Figma file to query. Required when multiple files are connected. Use list_files to see connected files.
fillHexstring–Optional fill color as hex
fillOpacitynumber–Optional fill opacity from 0 to 1
heightnumber–Optional height
namestring–Optional shape name
parentIdstring–Optional parent node ID to append the shape into
rotationnumber–Optional rotation in degrees
shapeTypestringyesShape type to create
strokeHexstring–Optional stroke color as hex
strokeOpacitynumber–Optional stroke opacity from 0 to 1
strokeWeightnumber–Optional stroke weight
widthnumber–Optional width
xnumber–Optional x position
ynumber–Optional y position

No output schema declared.

No examples provided.

create_shape_with_text ~177

FigJam: add a shape with text in it, e.g. a flowchart box or decision diamond.

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
fillstring–A FigJam colour name such as yellow, green or lightGray (get_board lists the ones in use), or a hex colour
heightnumber––
parentIdstring–A section to put it in
shapeTypestringyes–
textstringyes–
widthnumber––
xnumber–Left edge, in the parent's coordinates. Without x, y or parentId the item is centred in view.
ynumber–Top edge, in the parent's coordinates

No output schema declared.

No examples provided.

create_slide ~124

Figma Slides: add a slide, at the end of the deck or at a row and position. Use a row one past the last to start a new row.

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
indexinteger–Position within the row; needs row
namestring–Layer name. Figma Slides renames slides to their position number when the deck changes, so it rarely lasts; identify slides by id
rowinteger––

No output schema declared.

No examples provided.

create_sticky ~155

FigJam: add a sticky note.

NameTypeReqDescription
colorstring–A FigJam colour name such as yellow, green or lightGray (get_board lists the ones in use), or a hex colour
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
parentIdstring–A section to put it in
textstringyes–
wideboolean–A wide sticky instead of a square one
xnumber–Left edge, in the parent's coordinates. Without x, y or parentId the item is centred in view.
ynumber–Top edge, in the parent's coordinates

No output schema declared.

No examples provided.

create_table ~121

FigJam: add a table, optionally filled with text row by row.

NameTypeReqDescription
cellsarray–Text per row; missing cells stay empty
columnsintegeryes–
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
rowsintegeryes–
xnumber–Left edge, in the parent's coordinates. Without x, y or parentId the item is centred in view.
ynumber–Top edge, in the parent's coordinates

No output schema declared.

No examples provided.

create_text ~256

Create a new text node, optionally inside a specified parent. You can set its content, font, size, alignment, color, position, and bounds. When multiple files are connected, specify fileKey.

NameTypeReqDescription
charactersstring–Initial text content
fileKeystring–The fileKey of the Figma file to query. Required when multiple files are connected. Use list_files to see connected files.
fillHexstring–Optional text fill color as hex
fillOpacitynumber–Optional text fill opacity from 0 to 1
fontFamilystring–Font family, defaults to Inter
fontSizenumber–Optional font size
fontStylestring–Font style, defaults to Regular
heightnumber–Optional height
namestring–Optional text node name
parentIdstring–Optional parent node ID to append the text into
textAlignHorizontalstring–Optional horizontal alignment
textAutoResizestring–Optional text auto-resize mode
widthnumber–Optional width
xnumber–Optional x position
ynumber–Optional y position

No output schema declared.

No examples provided.

create_text_style ~118

Create a local text style. The font must be available to Figma.

NameTypeReqDescription
descriptionstring––
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
fontFamilystringyes–
fontSizenumberyes–
fontStylestring–e.g. Regular, Medium, Bold (default Regular)
letterSpacingnumber–Pixels
lineHeightnumber–Pixels
namestringyes–

No output schema declared.

No examples provided.

create_variable ~108

Create a variable in a collection, optionally with values per mode. Values: hex for COLOR, number for FLOAT, boolean, string, or { alias: variableId }. Modes may be named by id or name.

NameTypeReqDescription
collectionIdstringyes–
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
namestringyes–
valuesobject––
variableTypestringyes–

No output schema declared.

No examples provided.

create_variable_collection ~49

Create a local variable collection.

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
namestringyes–

No output schema declared.

No examples provided.

delete_dev_resource ~74

Remove a dev resource link from a layer.

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
nodeIdstringyesFigma node ID, e.g. '4029:12345'
urlstringyes–

No output schema declared.

No examples provided.

delete_nodes ~104

Delete one or more nodes. This is destructive and requires confirm: true. Page and document nodes cannot be deleted through this tool. When multiple files are connected, specify fileKey.

NameTypeReqDescription
confirmbooleanyesMust be true to confirm deletion
fileKeystring–The fileKey of the Figma file to query. Required when multiple files are connected. Use list_files to see connected files.
nodeIdsarrayyesList of node IDs to delete

No output schema declared.

No examples provided.

delete_page ~73

Delete a page and everything on it. Requires confirm: true.

NameTypeReqDescription
confirmbooleanyesMust be true — this cannot be undone from here
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
pageIdstringyes–

No output schema declared.

No examples provided.

delete_slide ~82

Figma Slides: delete a slide and everything on it.

NameTypeReqDescription
confirmbooleanyesMust be true — this cannot be undone from here
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
slideIdstringyesThe slide's node id, from get_slides

No output schema declared.

No examples provided.

delete_style ~70

Delete a local style. Requires confirm: true.

NameTypeReqDescription
confirmbooleanyesMust be true — this cannot be undone from here
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
styleIdstringyes–

No output schema declared.

No examples provided.

delete_variable ~69

Delete a variable. Requires confirm: true.

NameTypeReqDescription
confirmbooleanyesMust be true — this cannot be undone from here
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
variableIdstringyes–

No output schema declared.

No examples provided.

delete_variable_collection ~75

Delete a variable collection and everything in it. Requires confirm: true.

NameTypeReqDescription
collectionIdstringyes–
confirmbooleanyesMust be true — this cannot be undone from here
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.

No output schema declared.

No examples provided.

detach_instance ~50

Detach instances into plain frames.

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
nodeIdsarrayyes–

No output schema declared.

No examples provided.

duplicate_nodes ~84

Duplicate one or more nodes in place. The duplicates remain under the same parent as the originals. When multiple files are connected, specify fileKey.

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file to query. Required when multiple files are connected. Use list_files to see connected files.
nodeIdsarrayyesList of node IDs to duplicate

No output schema declared.

No examples provided.

export_assets ~663

Export every matching layer in a frame to a folder, e.g. all icon instances as SVG, exactly as Figma draws them on that screen, overrides included. Scans rootId with the filter (types, namePattern, size, stopAtMatch, default true) or takes explicit nodeIds; skips hidden layers; writes identical exports once; writes manifest.json with each node's bounds relative to rootId and its file. Stops early and says why if exports stall.

NameTypeReqDescription
clipboolean–Use the node's logical bounds instead of its render bounds
dedupeboolean–When two nodes export byte-identical files (ignoring generated SVG ids), write the file once and point the second at it in the manifest (default true)
fileKeystring–The fileKey of the Figma file to query. Required when multiple files are connected. Use list_files to see connected files.
fileNamestring–File name template without extension. Tokens: {name} {id} {index} {type} {x} {y} (x/y relative to rootId). Default '{name}__{id}'
formatstring–Default SVG
includeHiddenboolean–Also match layers the design hides (default false; they render nothing)
limitinteger–Maximum nodes to export (default 500)
manifestboolean–Write manifest.json listing every node, its bounds and its file (default true)
maxDepthinteger–Do not descend deeper than this
maxSizenumber–Match only nodes whose larger side is at most this many px
minSizenumber–Match only nodes whose larger side is at least this many px
namePatternstring–Case-insensitive regular expression the layer name must match
nodeIdsarray–Export exactly these nodes instead of scanning (rootId still sets relative positions)
outputDirstringyesDirectory to write into, relative to the MCP server's working directory (or inside FIGMA_BRIDGE_OUTPUT_ROOTS)
overwriteboolean–Replace files that already exist (default false — existing files are reported, not touched)
rootIdstring–Scan this node's subtree with the filter below and export every match
scalenumber–Raster scale (default 2)
stopAtMatchboolean–Do not look inside a node that matched — so an icon instance is returned whole, not also as its inner vectors
svgIdAttributeboolean–SVG only: write layer names as id attributes (Figma default false)
svgOutlineTextboolean–SVG only: outline text as paths (Figma default true). False keeps <text> elements.
svgSimplifyStrokeboolean–SVG only: simplify inside/outside strokes (Figma default true)
timeoutMsnumber–Milliseconds one export may take before it is reported as stuck (default 30000). A stuck export almost always means Figma's window is minimized or covered.
typesarray–Node types to match, e.g. ['INSTANCE','VECTOR','BOOLEAN_OPERATION','TEXT','FRAME']

No output schema declared.

No examples provided.

export_frames_to_pdf ~161

Export frames as one multi-page PDF, one page per frame in the order given, written to disk.

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file to query. Required when multiple files are connected. Use list_files to see connected files.
nodeIdsarrayyesFrames in page order
outputPathstringyesPDF file to write
overwriteboolean–Replace files that already exist (default false — existing files are reported, not touched)
timeoutMsnumber–Milliseconds one export may take before it is reported as stuck (default 30000). A stuck export almost always means Figma's window is minimized or covered.
titlestring–PDF document title

No output schema declared.

No examples provided.

export_image_fills ~126

Save the original images behind image fills in a subtree — the uploaded bitmaps, not a render — plus images.json listing which layers use each.

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file to query. Required when multiple files are connected. Use list_files to see connected files.
nodeIdstringyesLayer whose subtree's image fills are saved
outputDirstringyesDirectory to write the original images into
overwriteboolean–Replace files that already exist (default false — existing files are reported, not touched)

No output schema declared.

No examples provided.

export_tokens ~153

Export the file's local variables (every mode) and colour/text/effect styles as W3C design-tokens JSON, CSS custom properties, or both, written to disk.

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file to query. Required when multiple files are connected. Use list_files to see connected files.
formatstring–W3C design-tokens JSON (default), CSS custom properties, or both
outputPathstringyesFile to write (e.g. tokens.json or tokens.css); with format 'both' the extension is replaced
overwriteboolean–Replace files that already exist (default false — existing files are reported, not touched)

No output schema declared.

No examples provided.

find_replace_text ~116

Find and replace text in every text layer of a subtree (default: current page). dryRun previews.

NameTypeReqDescription
caseSensitiveboolean––
dryRunboolean––
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
findstringyes–
regexboolean––
replacestring––
rootIdstring–Figma node ID, e.g. '4029:12345'

No output schema declared.

No examples provided.

fix_design_system ~362

Apply lint_design_system's suggestions: bind solid fills/strokes to matching colour variables (or a paint style when the layer has one paint), bind auto-layout spacing/padding and corner radius to number variables with exactly the same value, and give unstyled text a text style whose font, size, line height and letter spacing match. Only binds when the variable resolves, in that layer's mode, to the same value (colours within maxDeltaE, default 2); re-checks each layer before changing it and reverts if Figma changed the result. dryRun defaults to true and returns the plan without changing anything; dryRun: false applies it and returns what changed and what was skipped and why. Changes the file when applied (design editor only).

NameTypeReqDescription
dryRunboolean–Default true: plan only. Pass false to change the file.
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
includeInstanceChildrenboolean–Also look inside instances (default false: their insides come from the main component, so lint that instead)
limitinteger–Most layers with findings to collect (default 5000)
maxDeltaEnumber–Largest colour change allowed when binding (CIEDE2000, default 2; 0 = exact only)
maxItemsinteger–Most changes/skips listed in the reply (default 300)
nodeIdstringyesFigma node ID, e.g. '4029:12345'
respectScopesboolean–Only bind variables whose scopes allow the property (default true)
rulesarray–Which fixes (default all four)

No output schema declared.

No examples provided.

focus_slide ~74

Figma Slides: make a slide the focused one, as when it is opened in single-slide view.

NameTypeReqDescription
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
slideIdstringyesThe slide's node id, from get_slides

No output schema declared.

No examples provided.

generate_component_docs ~246

Document a component or component set (an instance documents its main component): name, description, documentation links, property definitions with types, defaults and variant options, the variants, every variable (with its CSS custom property) and style used inside it, and optionally how many instances the file has. Returns markdown (default) or JSON; outputPath also writes it to a file, writeToCanvas also places a documentation frame beside the component (needs the design editor).

NameTypeReqDescription
countInstancesboolean–Count instances across the file (can be slow on big files; default false)
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
formatstring–"markdown" (default) or "json"
nodeIdstringyesFigma node ID, e.g. '4029:12345'
outputPathstring–Also write the result here (inside the allowed output folders)
overwriteboolean–Replace an existing file at outputPath (default false)
writeToCanvasboolean–Also create a documentation frame next to the component (default false)

No output schema declared.

No examples provided.

generate_diagram ~238

FigJam: draw a Mermaid flowchart as real FigJam shapes, connectors and sections, laid out automatically. Supports flowchart/graph with TD, TB, BT, LR or RL; node shapes [rect], (round), {diamond}, ((circle)), ([stadium]), [(database)], {{hexagon}}, [[subroutine]], [/parallelogram/]; edges -->, ---, -.->, ==> with |label| or -- label -->; subgraphs become sections; %% comments. Styling (classDef, style, click) is skipped and reported in warnings. Returns the id of every shape, connector and section, keyed by Mermaid id. Up to 300 nodes.

NameTypeReqDescription
directionstring–Overrides the direction in the Mermaid header
fileKeystring–The fileKey of the Figma file. Required when several files are connected; see list_files.
mermaidstringyesMermaid source, starting with e.g. "flowchart LR"
xnumber–Left edge of the diagram (default: centred in view)
ynumber–Top edge of the diagram

No output schema declared.

No examples provided.

Install

How do I install the Layerbridge MCP server?

Layerbridge runs locally as an npm package, launched with npx -y layerbridge. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · layerbridge

# add to Claude Code
claude mcp add muradyf-layerbridge -- npx -y layerbridge
Common questions

What is the Layerbridge MCP server?

Layerbridge is an MCP server listed in the public MCP registry as io.github.muradyf/layerbridge. Read, edit and export the Figma file open in a local plugin. No REST API, no rate limits. This page covers its npm package (layerbridge).

Is the Layerbridge MCP server safe to use?

Layerbridge scores 75 out of 100 on VerifyMCP. We recorded 1 known advisory against it as of 4 November 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Layerbridge MCP server expose?

Layerbridge exposes 116 tools: get_local_components, create_component, combine_as_variants, create_instance, swap_component, and 111 more. Their descriptions and schemas cost roughly 16,209 tokens of context every time the server is loaded.

Is the Layerbridge MCP server still maintained?

Layerbridge is still listed as active in the MCP registry. We last reached this channel on 4 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the Layerbridge MCP server under?

Layerbridge declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.