@gethopp/figma-mcp-bridge 0.0.21 → 0.0.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +71 -43
- package/dist/schema.d.ts +1411 -79
- package/dist/schema.js +277 -20
- package/dist/schema.js.map +1 -1
- package/dist/tools.js +80 -23
- package/dist/tools.js.map +1 -1
- package/package.json +2 -1
package/dist/tools.js
CHANGED
|
@@ -2,7 +2,7 @@ import { lookup } from "node:dns/promises";
|
|
|
2
2
|
import { mkdir, readFile, realpath, stat, writeFile } from "node:fs/promises";
|
|
3
3
|
import { isIP } from "node:net";
|
|
4
4
|
import path from "node:path";
|
|
5
|
-
import { createFrameInput, createImageInput, createPageInput, importHtmlLayersInput, createShapeShape, createTextShape, createShapeInput, createTextInput,
|
|
5
|
+
import { createFrameInput, createImageInput, createPageInput, importHtmlLayersInput, createShapeShape, createTextShape, createShapeInput, createShapeWithTextInput, createShapeWithTextShape, createSectionShape, createTextInput, setNodePropertiesShape, setGradientFillInput, setSolidFillInput, setSolidFillShape, setTextContentShape, setEffectsShape, setEffectsInput, setStrokePropertiesInput, setAutoLayoutInput, setSelectionInput, scrollAndZoomIntoViewInput, groupNodesInput, ungroupNodeInput, setTextPropertiesShape, setTextPropertiesInput, createConnectorBase, fitToContentInput, distributeInput, alignToGridInput, placeBelowInput, placeRightOfInput, duplicateWithOffsetInput, toolInputSchemas, } from "./schema.js";
|
|
6
6
|
import { Follower } from "./follower.js";
|
|
7
7
|
const MAX_IMAGE_BYTES = 32 * 1024 * 1024;
|
|
8
8
|
const IMAGE_FETCH_TIMEOUT_MS = 15_000;
|
|
@@ -14,7 +14,7 @@ const MAX_IMAGE_REDIRECTS = 5;
|
|
|
14
14
|
* @param port - The port used for follower-to-leader HTTP calls.
|
|
15
15
|
*/
|
|
16
16
|
export function registerTools(server, node, port) {
|
|
17
|
-
server.tool("list_files", "List all currently connected Figma files. Returns fileKey and fileName for each. Use the fileKey to target a specific file in other tools.", async () => {
|
|
17
|
+
server.tool("list_files", "List all currently connected Figma/FigJam files. Returns fileKey and fileName for each. Use the fileKey to target a specific file in other tools.", async () => {
|
|
18
18
|
try {
|
|
19
19
|
let files = node.listConnectedFiles();
|
|
20
20
|
if (files === undefined) {
|
|
@@ -38,22 +38,29 @@ export function registerTools(server, node, port) {
|
|
|
38
38
|
};
|
|
39
39
|
}
|
|
40
40
|
});
|
|
41
|
-
server.tool("get_document", "Get the current Figma page document tree. When multiple files are connected, specify fileKey.", toolInputSchemas.get_document.shape, async ({ fileKey }) => {
|
|
41
|
+
server.tool("get_document", "Get the current Figma/FigJam page document tree. When multiple files are connected, specify fileKey.", toolInputSchemas.get_document.shape, async ({ fileKey }) => {
|
|
42
42
|
return renderResponse(() => node.send("get_document", undefined, fileKey));
|
|
43
43
|
});
|
|
44
|
-
server.tool("get_selection", "Get the currently selected nodes in Figma. When multiple files are connected, specify fileKey.", toolInputSchemas.get_selection.shape, async ({ fileKey }) => {
|
|
44
|
+
server.tool("get_selection", "Get the currently selected nodes in Figma/FigJam. When multiple files are connected, specify fileKey.", toolInputSchemas.get_selection.shape, async ({ fileKey }) => {
|
|
45
45
|
return renderResponse(() => node.send("get_selection", undefined, fileKey));
|
|
46
46
|
});
|
|
47
|
-
server.tool("
|
|
48
|
-
|
|
47
|
+
server.tool("get_layout_tree", "Read absolute node transforms and layout bounds for a capture root. Separate screenshot calls are non-atomic.", toolInputSchemas.get_layout_tree.shape, async ({ rootId, maxNodes, fileKey }) => renderResponse(() => node.sendWithParams("get_layout_tree", [rootId], { maxNodes }, fileKey)));
|
|
48
|
+
server.tool("get_node", "Get a specific Figma/FigJam node by ID. Accepts top-level IDs like '4029:12345' and instance-child IDs like 'I12740:17806;12740:17793'. Never use hyphens. Pass includePrototype: true to also get the prototype interactions on the node and its descendants. When multiple files are connected, specify fileKey.", toolInputSchemas.get_node.shape, async ({ nodeId, fileKey, ...params }) => {
|
|
49
|
+
return renderResponse(() => node.sendWithParams("get_node", [nodeId], params, fileKey));
|
|
50
|
+
});
|
|
51
|
+
server.tool("get_prototype_connections", "Read-only. List the prototype interactions on a node and all its descendants, including instance sublayers. Each reaction is Figma's own trigger and actions (navigate/swap/overlay/scroll-to/change-to, back, close, URL, set variable/mode, conditional blocks, media), with each destination resolved to its name, screen, and page, and variables and modes resolved to names. Also returns the page's flow starting points. Not available in FigJam. When multiple files are connected, specify fileKey.", toolInputSchemas.get_prototype_connections.shape, async ({ nodeId, fileKey, ...params }) => {
|
|
52
|
+
return renderResponse(() => node.sendWithParams("get_prototype_connections", nodeId ? [nodeId] : undefined, params, fileKey));
|
|
53
|
+
});
|
|
54
|
+
server.tool("trace_prototype_flow", "Read-only. Follow prototype navigation breadth-first from a screen: returns the screens reached (with depth and the node that reached them) and every interaction edge with its source node, trigger, action, enclosing conditional branches, and destination screen. Screens reached again are marked as revisits; unresolvable destinations are listed. Not available in FigJam. When multiple files are connected, specify fileKey.", toolInputSchemas.trace_prototype_flow.shape, async ({ nodeId, fileKey, ...params }) => {
|
|
55
|
+
return renderResponse(() => node.sendWithParams("trace_prototype_flow", [nodeId], params, fileKey));
|
|
49
56
|
});
|
|
50
57
|
server.tool("get_styles", "Get all local styles in the document. When multiple files are connected, specify fileKey.", toolInputSchemas.get_styles.shape, async ({ fileKey }) => {
|
|
51
58
|
return renderResponse(() => node.send("get_styles", undefined, fileKey));
|
|
52
59
|
});
|
|
53
|
-
server.tool("get_metadata", "Get metadata about the current Figma document including file name, pages, and current page info. When multiple files are connected, specify fileKey.", toolInputSchemas.get_metadata.shape, async ({ fileKey }) => {
|
|
60
|
+
server.tool("get_metadata", "Get metadata about the current Figma/FigJam document including file name, pages, and current page info. When multiple files are connected, specify fileKey.", toolInputSchemas.get_metadata.shape, async ({ fileKey }) => {
|
|
54
61
|
return renderResponse(() => node.send("get_metadata", undefined, fileKey));
|
|
55
62
|
});
|
|
56
|
-
server.tool("get_design_context", "Get the design context for the current selection or page. Returns a summarized tree structure optimized for understanding the current design context. When multiple files are connected, specify fileKey.", toolInputSchemas.get_design_context.shape, async ({ depth, fileKey }) => {
|
|
63
|
+
server.tool("get_design_context", "Get the design context for the current selection or page. Returns a summarized tree structure optimized for understanding the current design context. Works in both Figma and FigJam. When multiple files are connected, specify fileKey.", toolInputSchemas.get_design_context.shape, async ({ depth, fileKey }) => {
|
|
57
64
|
const params = {};
|
|
58
65
|
if (depth !== undefined && depth > 0) {
|
|
59
66
|
params.depth = depth;
|
|
@@ -63,7 +70,7 @@ export function registerTools(server, node, port) {
|
|
|
63
70
|
server.tool("get_variable_defs", "Get all local variable definitions including variable collections, modes, and variable values. Variables are Figma's system for design tokens (colors, numbers, strings, booleans). When multiple files are connected, specify fileKey.", toolInputSchemas.get_variable_defs.shape, async ({ fileKey }) => {
|
|
64
71
|
return renderResponse(() => node.send("get_variable_defs", undefined, fileKey));
|
|
65
72
|
});
|
|
66
|
-
server.tool("get_screenshot", "Export a screenshot of the selected nodes or specific nodes by ID. Returns base64-encoded image data. When multiple files are connected, specify fileKey.", toolInputSchemas.get_screenshot.shape, async ({ nodeIds, format, scale, clip, fileKey }) => {
|
|
73
|
+
server.tool("get_screenshot", "Export a screenshot of the selected nodes or specific nodes by ID. Returns base64-encoded image data. Works in both Figma and FigJam. When multiple files are connected, specify fileKey.", toolInputSchemas.get_screenshot.shape, async ({ nodeIds, format, scale, clip, fileKey }) => {
|
|
67
74
|
const params = {};
|
|
68
75
|
if (format)
|
|
69
76
|
params.format = format;
|
|
@@ -76,26 +83,27 @@ export function registerTools(server, node, port) {
|
|
|
76
83
|
server.tool("set_node_visibility", "Show or hide specific Figma nodes. Returns previous visibility for each node so you can restore them after. Useful for isolating a single layer before exporting: hide all siblings, export the frame, then restore visibility.", toolInputSchemas.set_node_visibility.shape, async ({ items, fileKey }) => {
|
|
77
84
|
return renderResponse(() => node.sendWithParams("set_node_visibility", undefined, { items }, fileKey));
|
|
78
85
|
});
|
|
79
|
-
server.tool("set_text_content", "Update the contents of a
|
|
86
|
+
server.tool("set_text_content", "Update the contents of a text node. Works on TEXT nodes plus FigJam STICKY and SHAPE_WITH_TEXT nodes (their text sublayer). The plugin loads the node's fonts before applying the new text. Accepts either text or characters. When multiple files are connected, specify fileKey.", setTextContentShape.shape, async (args) => {
|
|
80
87
|
const parsed = parseToolInput(toolInputSchemas.set_text_content, args);
|
|
81
88
|
if (!parsed.success)
|
|
82
89
|
return parsed.error;
|
|
83
90
|
const { nodeId, text, fileKey } = parsed.data;
|
|
84
91
|
return renderResponse(() => node.sendWithParams("set_text_content", [nodeId], { text }, fileKey));
|
|
85
92
|
});
|
|
86
|
-
server.tool("set_text_properties", "Patch common text properties such as font family/style, size,
|
|
93
|
+
server.tool("set_text_properties", "Patch common text properties such as font family/style, size, line height, letter spacing, and fill color, plus alignment, auto-resize, and bounds on TEXT nodes. Also targets FigJam STICKY and SHAPE_WITH_TEXT text sublayers (alignment/auto-resize are TEXT-only). When multiple files are connected, specify fileKey.", setTextPropertiesShape.shape, async (args) => {
|
|
87
94
|
const parsed = parseToolInput(setTextPropertiesInput, args);
|
|
88
95
|
if (!parsed.success)
|
|
89
96
|
return parsed.error;
|
|
90
97
|
const { nodeId, fileKey, ...properties } = parsed.data;
|
|
91
98
|
return renderResponse(() => node.sendWithParams("set_text_properties", [nodeId], properties, fileKey));
|
|
92
99
|
});
|
|
93
|
-
server.tool("set_node_properties", "Patch common node properties such as name, position, size, visibility, opacity, and corner radius. Only supported properties for the target node type may be changed. Use set_solid_fill or set_gradient_fill to change paints. When multiple files are connected, specify fileKey.",
|
|
100
|
+
server.tool("set_node_properties", "Patch common node properties such as name, position, size, visibility, opacity, and corner radius. Accepts either a single nodeId or a nodeIds array to apply the same changes to multiple nodes in one call. Only supported properties for the target node type may be changed. Use set_solid_fill or set_gradient_fill to change paints. Works in both Figma and FigJam. When multiple files are connected, specify fileKey.", setNodePropertiesShape.shape, async (args) => {
|
|
94
101
|
const parsed = parseToolInput(toolInputSchemas.set_node_properties, args);
|
|
95
102
|
if (!parsed.success)
|
|
96
103
|
return parsed.error;
|
|
97
|
-
const { nodeId, fileKey, ...properties } = parsed.data;
|
|
98
|
-
|
|
104
|
+
const { nodeId, nodeIds, fileKey, ...properties } = parsed.data;
|
|
105
|
+
const ids = nodeIds ?? (nodeId !== undefined ? [nodeId] : []);
|
|
106
|
+
return renderResponse(() => node.sendWithParams("set_node_properties", ids, properties, fileKey));
|
|
99
107
|
});
|
|
100
108
|
server.tool("set_solid_fill", "Replace a node's fill (or stroke) with a single solid paint. Provide a hex color and optional paint opacity — fillHex/fillOpacity are accepted as aliases. Use set_gradient_fill for gradient paints.", setSolidFillShape.shape, async (args) => {
|
|
101
109
|
const parsed = parseToolInput(setSolidFillInput, args);
|
|
@@ -121,7 +129,7 @@ export function registerTools(server, node, port) {
|
|
|
121
129
|
const { nodeId, fileKey, ...params } = parsed.data;
|
|
122
130
|
return renderResponse(() => node.sendWithParams("set_stroke_properties", [nodeId], params, fileKey));
|
|
123
131
|
});
|
|
124
|
-
server.tool("set_auto_layout", "Configure auto-layout on a frame: direction, gap, padding, alignment, sizing modes, wrap. Set layoutMode='NONE' to disable auto-layout on the frame.", setAutoLayoutInput.shape, async (args) => {
|
|
132
|
+
server.tool("set_auto_layout", "Configure auto-layout on a frame: direction, gap, padding, alignment, sizing modes, wrap. Set layoutMode='NONE' to disable auto-layout on the frame. Not supported on SECTION nodes (Figma's API has no section auto-layout).", setAutoLayoutInput.shape, async (args) => {
|
|
125
133
|
const parsed = parseToolInput(toolInputSchemas.set_auto_layout, args);
|
|
126
134
|
if (!parsed.success)
|
|
127
135
|
return parsed.error;
|
|
@@ -142,21 +150,35 @@ export function registerTools(server, node, port) {
|
|
|
142
150
|
const { fileKey, ...params } = parsed.data;
|
|
143
151
|
return renderResponse(() => node.sendWithParams("create_frame", undefined, params, fileKey));
|
|
144
152
|
});
|
|
145
|
-
server.tool("
|
|
153
|
+
server.tool("create_section", "Create a new section — a named container with its own background, resizable independently of its contents. Works in Figma and FigJam. When multiple files are connected, specify fileKey.", createSectionShape.shape, async (args) => {
|
|
154
|
+
const parsed = parseToolInput(toolInputSchemas.create_section, args);
|
|
155
|
+
if (!parsed.success)
|
|
156
|
+
return parsed.error;
|
|
157
|
+
const { fileKey, ...params } = parsed.data;
|
|
158
|
+
return renderResponse(() => node.sendWithParams("create_section", undefined, params, fileKey));
|
|
159
|
+
});
|
|
160
|
+
server.tool("create_text", "Create a new text node, optionally inside a specified parent. You can set its content, font, size, alignment, color, position, and bounds. Works in both Figma and FigJam. When multiple files are connected, specify fileKey.", createTextShape.shape, async (args) => {
|
|
146
161
|
const parsed = parseToolInput(createTextInput, args);
|
|
147
162
|
if (!parsed.success)
|
|
148
163
|
return parsed.error;
|
|
149
164
|
const { fileKey, ...params } = parsed.data;
|
|
150
165
|
return renderResponse(() => node.sendWithParams("create_text", undefined, params, fileKey));
|
|
151
166
|
});
|
|
152
|
-
server.tool("create_shape", "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.", createShapeShape.shape, async (args) => {
|
|
167
|
+
server.tool("create_shape", "Create a rectangle, ellipse, or line, optionally inside a specified parent. You can set its size, position, rotation, fill, and stroke. Works in both Figma and FigJam. When multiple files are connected, specify fileKey.", createShapeShape.shape, async (args) => {
|
|
153
168
|
const parsed = parseToolInput(createShapeInput, args);
|
|
154
169
|
if (!parsed.success)
|
|
155
170
|
return parsed.error;
|
|
156
171
|
const { fileKey, ...params } = parsed.data;
|
|
157
172
|
return renderResponse(() => node.sendWithParams("create_shape", undefined, params, fileKey));
|
|
158
173
|
});
|
|
159
|
-
server.tool("
|
|
174
|
+
server.tool("create_shape_with_text", "Create a FigJam shape that carries its own text label (SHAPE_WITH_TEXT), e.g. ROUNDED_RECTANGLE, DIAMOND, or ENG_DATABASE. You can set its shape type, text (and text fill via textFillHex), fill, stroke, position, and size. Only available in FigJam. When multiple files are connected, specify fileKey.", createShapeWithTextShape.shape, async (args) => {
|
|
175
|
+
const parsed = parseToolInput(createShapeWithTextInput, args);
|
|
176
|
+
if (!parsed.success)
|
|
177
|
+
return parsed.error;
|
|
178
|
+
const { fileKey, ...params } = parsed.data;
|
|
179
|
+
return renderResponse(() => node.sendWithParams("create_shape_with_text", undefined, params, fileKey));
|
|
180
|
+
});
|
|
181
|
+
server.tool("create_image", "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. Works in both Figma and FigJam. When multiple files are connected, specify fileKey.", createImageInput.shape, async ({ source, fileKey, ...params }) => {
|
|
160
182
|
try {
|
|
161
183
|
const imageBase64 = await loadImageSourceAsBase64(source, process.cwd());
|
|
162
184
|
return await renderResponse(() => node.sendWithParams("create_image", undefined, { ...params, imageBase64 }, fileKey));
|
|
@@ -190,10 +212,45 @@ export function registerTools(server, node, port) {
|
|
|
190
212
|
};
|
|
191
213
|
}
|
|
192
214
|
});
|
|
193
|
-
server.tool("
|
|
215
|
+
server.tool("create_sticky", "Create a new sticky note in FigJam. You can set its text content, position, and whether it uses the wide shape (isWideWidth). Only available in FigJam. When multiple files are connected, specify fileKey.", toolInputSchemas.create_sticky.shape, async (args) => {
|
|
216
|
+
const parsed = parseToolInput(toolInputSchemas.create_sticky, args);
|
|
217
|
+
if (!parsed.success)
|
|
218
|
+
return parsed.error;
|
|
219
|
+
const { fileKey, ...params } = parsed.data;
|
|
220
|
+
return renderResponse(() => node.sendWithParams("create_sticky", undefined, params, fileKey));
|
|
221
|
+
});
|
|
222
|
+
server.tool("create_connector", "Create a connector between two nodes in FigJam. You can specify start/end node IDs or absolute positions, plus the attachment side on each node (startAnchor/endAnchor: top, bottom, left, right, auto). Only available in FigJam. When multiple files are connected, specify fileKey.", createConnectorBase.shape, async (args) => {
|
|
223
|
+
const parsed = parseToolInput(toolInputSchemas.create_connector, args);
|
|
224
|
+
if (!parsed.success)
|
|
225
|
+
return parsed.error;
|
|
226
|
+
const { fileKey, ...params } = parsed.data;
|
|
227
|
+
return renderResponse(() => node.sendWithParams("create_connector", undefined, params, fileKey));
|
|
228
|
+
});
|
|
229
|
+
server.tool("duplicate_nodes", "Duplicate one or more nodes in place. The duplicates remain under the same parent as the originals. Works in both Figma and FigJam. When multiple files are connected, specify fileKey.", toolInputSchemas.duplicate_nodes.shape, async ({ nodeIds, fileKey }) => {
|
|
194
230
|
return renderResponse(() => node.sendWithParams("duplicate_nodes", nodeIds, undefined, fileKey));
|
|
195
231
|
});
|
|
196
|
-
server.tool("
|
|
232
|
+
server.tool("duplicate_with_offset", "Duplicate nodes and move each duplicate by a fixed offset in one call. Returns the mapping from source node IDs to duplicate node IDs. Works in both Figma and FigJam. When multiple files are connected, specify fileKey.", duplicateWithOffsetInput.shape, async ({ nodeIds, offsetX, offsetY, fileKey }) => {
|
|
233
|
+
return renderResponse(() => node.sendWithParams("duplicate_with_offset", nodeIds, { offsetX, offsetY }, fileKey));
|
|
234
|
+
});
|
|
235
|
+
server.tool("fit_to_content", "Resize a SECTION so it tightly wraps its children with optional padding: children are shifted so their bounding box starts at the padding, then the section is resized to bbox + 2×padding. SECTION nodes only — Figma's API has no equivalent for other containers. Works in Figma and FigJam. When multiple files are connected, specify fileKey.", fitToContentInput.shape, async ({ nodeId, padding, fileKey }) => {
|
|
236
|
+
return renderResponse(() => node.sendWithParams("fit_to_content", [nodeId], { padding }, fileKey));
|
|
237
|
+
});
|
|
238
|
+
server.tool("distribute_horizontally", "Space three or more nodes with equal horizontal gaps, keeping the leftmost and rightmost nodes fixed. Works in both Figma and FigJam. When multiple files are connected, specify fileKey.", distributeInput.shape, async ({ nodeIds, fileKey }) => {
|
|
239
|
+
return renderResponse(() => node.sendWithParams("distribute_horizontally", nodeIds, undefined, fileKey));
|
|
240
|
+
});
|
|
241
|
+
server.tool("distribute_vertically", "Space three or more nodes with equal vertical gaps, keeping the topmost and bottommost nodes fixed. Works in both Figma and FigJam. When multiple files are connected, specify fileKey.", distributeInput.shape, async ({ nodeIds, fileKey }) => {
|
|
242
|
+
return renderResponse(() => node.sendWithParams("distribute_vertically", nodeIds, undefined, fileKey));
|
|
243
|
+
});
|
|
244
|
+
server.tool("align_to_grid", "Snap each node's x/y position to a grid of the given size. Works in both Figma and FigJam. When multiple files are connected, specify fileKey.", alignToGridInput.shape, async ({ nodeIds, gridSize, fileKey }) => {
|
|
245
|
+
return renderResponse(() => node.sendWithParams("align_to_grid", nodeIds, { gridSize }, fileKey));
|
|
246
|
+
});
|
|
247
|
+
server.tool("place_below", "Move a node directly below a reference node with an optional gap and start/center alignment across the reference's width. Works in both Figma and FigJam. When multiple files are connected, specify fileKey.", placeBelowInput.shape, async ({ nodeId, relativeToId, gap, align, fileKey }) => {
|
|
248
|
+
return renderResponse(() => node.sendWithParams("place_below", [nodeId], { relativeToId, gap, align }, fileKey));
|
|
249
|
+
});
|
|
250
|
+
server.tool("place_right_of", "Move a node directly to the right of a reference node with an optional gap and start/center alignment across the reference's height. Works in both Figma and FigJam. When multiple files are connected, specify fileKey.", placeRightOfInput.shape, async ({ nodeId, relativeToId, gap, align, fileKey }) => {
|
|
251
|
+
return renderResponse(() => node.sendWithParams("place_right_of", [nodeId], { relativeToId, gap, align }, fileKey));
|
|
252
|
+
});
|
|
253
|
+
server.tool("reparent_nodes", "Move one or more nodes into a different parent container. Works in both Figma and FigJam. When multiple files are connected, specify fileKey.", toolInputSchemas.reparent_nodes.shape, async ({ nodeIds, parentId, fileKey }) => {
|
|
197
254
|
return renderResponse(() => node.sendWithParams("reparent_nodes", nodeIds, { parentId }, fileKey));
|
|
198
255
|
});
|
|
199
256
|
server.tool("group_nodes", "Wrap a list of nodes in a new group. Nodes must share a common parent (or supply parentId explicitly). Returns the new group's node ID.", groupNodesInput.shape, async ({ nodeIds, fileKey, ...params }) => {
|
|
@@ -202,13 +259,13 @@ export function registerTools(server, node, port) {
|
|
|
202
259
|
server.tool("ungroup_node", "Ungroup a group or frame — its children move up to its parent and the wrapper is removed. Returns the IDs of the orphaned children in their new parent.", ungroupNodeInput.shape, async ({ nodeId, fileKey }) => {
|
|
203
260
|
return renderResponse(() => node.sendWithParams("ungroup_node", [nodeId], undefined, fileKey));
|
|
204
261
|
});
|
|
205
|
-
server.tool("set_selection", "Set the current page selection to a list of node IDs. Pass an empty array to clear the selection. Works in
|
|
262
|
+
server.tool("set_selection", "Set the current page selection to a list of node IDs. Pass an empty array to clear the selection. Works in Figma design editor, Dev Mode, and FigJam.", setSelectionInput.shape, async ({ nodeIds, fileKey }) => {
|
|
206
263
|
return renderResponse(() => node.sendWithParams("set_selection", nodeIds, undefined, fileKey));
|
|
207
264
|
});
|
|
208
|
-
server.tool("scroll_and_zoom_into_view", "Scroll and zoom the Figma viewport so the given nodes are framed in view. Works in
|
|
265
|
+
server.tool("scroll_and_zoom_into_view", "Scroll and zoom the Figma/FigJam viewport so the given nodes are framed in view. Works in Figma design editor, Dev Mode, and FigJam.", scrollAndZoomIntoViewInput.shape, async ({ nodeIds, fileKey }) => {
|
|
209
266
|
return renderResponse(() => node.sendWithParams("scroll_and_zoom_into_view", nodeIds, undefined, fileKey));
|
|
210
267
|
});
|
|
211
|
-
server.tool("delete_nodes", "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.", toolInputSchemas.delete_nodes.shape, async ({ nodeIds, confirm, fileKey }) => {
|
|
268
|
+
server.tool("delete_nodes", "Delete one or more nodes. This is destructive and requires confirm: true. Page and document nodes cannot be deleted through this tool. Works in both Figma and FigJam. When multiple files are connected, specify fileKey.", toolInputSchemas.delete_nodes.shape, async ({ nodeIds, confirm, fileKey }) => {
|
|
212
269
|
return renderResponse(() => node.sendWithParams("delete_nodes", nodeIds, { confirm }, fileKey));
|
|
213
270
|
});
|
|
214
271
|
server.tool("get_motion_styles", "List all available animation presets in Figma (Motion API beta). When multiple files are connected, specify fileKey.", toolInputSchemas.get_motion_styles.shape, async ({ fileKey }) => {
|
package/dist/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gethopp/figma-mcp-bridge",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.23",
|
|
4
4
|
"description": "MCP server that bridges Figma plugin data to AI tools without hitting API rate limits",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
},
|
|
33
33
|
"license": "MIT",
|
|
34
34
|
"dependencies": {
|
|
35
|
+
"@figma/plugin-typings": "^1.140.0",
|
|
35
36
|
"@modelcontextprotocol/sdk": "^1.26.0",
|
|
36
37
|
"ws": "^8.18.0",
|
|
37
38
|
"zod": "^3.24.0"
|