@atezer/figma-mcp-bridge 1.7.28 → 1.7.30
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/CHANGELOG.md +75 -0
- package/README.md +1 -1
- package/dist/core/plugin-bridge-connector.d.ts +6 -0
- package/dist/core/plugin-bridge-connector.d.ts.map +1 -1
- package/dist/core/plugin-bridge-connector.js +13 -0
- package/dist/core/plugin-bridge-connector.js.map +1 -1
- package/dist/core/plugin-bridge-server.d.ts +51 -4
- package/dist/core/plugin-bridge-server.d.ts.map +1 -1
- package/dist/core/plugin-bridge-server.js +389 -143
- package/dist/core/plugin-bridge-server.js.map +1 -1
- package/dist/core/version.d.ts +1 -1
- package/dist/core/version.js +1 -1
- package/dist/local-plugin-only.d.ts.map +1 -1
- package/dist/local-plugin-only.js +232 -36
- package/dist/local-plugin-only.js.map +1 -1
- package/package.json +1 -1
- package/skills/figma-canvas-ops/SKILL.md +7 -4
- package/skills/fmcp-project-rules/SKILL.md +9 -5
- package/skills/generate-figma-screen/SKILL.md +24 -15
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-bridge-server.js","sourceRoot":"","sources":["../../src/core/plugin-bridge-server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plugin-bridge-server.js","sourceRoot":"","sources":["../../src/core/plugin-bridge-server.ts"],"names":[],"mappings":"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"}
|
package/dist/core/version.d.ts
CHANGED
package/dist/core/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-plugin-only.d.ts","sourceRoot":"","sources":["../src/local-plugin-only.ts"],"names":[],"mappings":";AAEA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"local-plugin-only.d.ts","sourceRoot":"","sources":["../src/local-plugin-only.ts"],"names":[],"mappings":";AAEA;;;;;;;;;GASG;AAoLH,wBAAsB,IAAI,kBA82DzB"}
|
|
@@ -98,6 +98,42 @@ function getErrorHint(category) {
|
|
|
98
98
|
default: return "Hata mesajini kontrol et.";
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
|
+
/** Analyze figma_execute code for common mistakes. Returns advisory warnings (never blocks execution). */
|
|
102
|
+
function analyzeCodeForWarnings(code) {
|
|
103
|
+
const warnings = [];
|
|
104
|
+
// 1. FILL before appendChild — must set FILL *after* node is in auto-layout parent
|
|
105
|
+
if (/layoutSizing(?:Horizontal|Vertical)\s*=\s*['"]FILL['"]/i.test(code)) {
|
|
106
|
+
const fillIdx = code.search(/layoutSizing(?:Horizontal|Vertical)\s*=\s*['"]FILL['"]/i);
|
|
107
|
+
const appendIdx = code.indexOf("appendChild");
|
|
108
|
+
if (appendIdx === -1 || fillIdx < appendIdx) {
|
|
109
|
+
warnings.push("layoutSizingHorizontal/Vertical = 'FILL' appendChild'dan ONCE ayarlanmis. " +
|
|
110
|
+
"Oncesinde hata verir. FILL'i appendChild SONRASINA tasi.");
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
// 2. Sync API usage — should use Async versions
|
|
114
|
+
const syncApis = [
|
|
115
|
+
{ sync: "getLocalPaintStyles(", async: "getLocalPaintStylesAsync(" },
|
|
116
|
+
{ sync: "getLocalTextStyles(", async: "getLocalTextStylesAsync(" },
|
|
117
|
+
{ sync: "getLocalEffectStyles(", async: "getLocalEffectStylesAsync(" },
|
|
118
|
+
{ sync: "getLocalGridStyles(", async: "getLocalGridStylesAsync(" },
|
|
119
|
+
];
|
|
120
|
+
for (const api of syncApis) {
|
|
121
|
+
if (code.includes(api.sync) && !code.includes(api.async)) {
|
|
122
|
+
warnings.push(`Sync API '${api.sync.slice(0, -1)}' tespit edildi. 'await ${api.async.slice(0, -1)}' kullanin — dynamic-page modunda sync API'ler calismaz.`);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
// 3. Font not loaded before text modification
|
|
126
|
+
if ((/\.characters\s*=/.test(code) || code.includes(".insertCharacters") || code.includes(".deleteCharacters")) &&
|
|
127
|
+
!code.includes("loadFontAsync")) {
|
|
128
|
+
warnings.push("Text icerik degisikligi (characters) tespit edildi, ancak loadFontAsync cagrisi yok. " +
|
|
129
|
+
"Metin degistirmeden once 'await figma.loadFontAsync(node.fontName)' ekleyin.");
|
|
130
|
+
}
|
|
131
|
+
// 4. Sync page assignment — does not work
|
|
132
|
+
if (/figma\.currentPage\s*=/.test(code) && !code.includes("setCurrentPageAsync")) {
|
|
133
|
+
warnings.push("'figma.currentPage = ...' calismaz. 'await figma.setCurrentPageAsync(page)' kullanin.");
|
|
134
|
+
}
|
|
135
|
+
return warnings;
|
|
136
|
+
}
|
|
101
137
|
/** Wrap a tool handler with try-catch to prevent unhandled rejections. */
|
|
102
138
|
function safeToolHandler(handler) {
|
|
103
139
|
return async (params) => {
|
|
@@ -328,7 +364,13 @@ export async function main() {
|
|
|
328
364
|
}));
|
|
329
365
|
// ---- figma_execute ----
|
|
330
366
|
server.registerTool("figma_execute", {
|
|
331
|
-
description: "Run JavaScript in the Figma plugin context. Full Plugin API available. Use fileKey or figmaUrl to target a specific file."
|
|
367
|
+
description: "Run JavaScript in the Figma plugin context. Full Plugin API available. Use fileKey or figmaUrl to target a specific file. " +
|
|
368
|
+
"Common mistakes are detected and returned as _warnings: " +
|
|
369
|
+
"(1) layoutSizingHorizontal/Vertical='FILL' must be set AFTER appendChild, " +
|
|
370
|
+
"(2) use getLocalPaintStylesAsync not getLocalPaintStyles, " +
|
|
371
|
+
"(3) call loadFontAsync before .characters=, " +
|
|
372
|
+
"(4) use setCurrentPageAsync not figma.currentPage=. " +
|
|
373
|
+
"For component instances: use setProperties({...}), NOT findAll(TEXT).",
|
|
332
374
|
inputSchema: {
|
|
333
375
|
figmaUrl: z.string().optional().describe("Figma or FigJam file URL for routing."),
|
|
334
376
|
fileKey: z.string().optional().describe("Target a specific connected file."),
|
|
@@ -345,6 +387,9 @@ export async function main() {
|
|
|
345
387
|
}
|
|
346
388
|
const clampedTimeout = Math.max(3000, Math.min(timeout ?? 15000, 120000));
|
|
347
389
|
invalidateCache();
|
|
390
|
+
// Run static analysis BEFORE execution so warnings are available in ALL response paths
|
|
391
|
+
const codeWarnings = analyzeCodeForWarnings(code);
|
|
392
|
+
const warningsField = codeWarnings.length > 0 ? { _warnings: codeWarnings } : {};
|
|
348
393
|
const startTime = Date.now();
|
|
349
394
|
try {
|
|
350
395
|
const conn = getConnector(bridge, resolveFileKey(figmaUrl, fileKey));
|
|
@@ -366,6 +411,7 @@ export async function main() {
|
|
|
366
411
|
errorCategory: category,
|
|
367
412
|
_metrics: { durationMs, timeoutMs: clampedTimeout },
|
|
368
413
|
hint,
|
|
414
|
+
...warningsField,
|
|
369
415
|
}) }],
|
|
370
416
|
isError: true,
|
|
371
417
|
};
|
|
@@ -373,7 +419,7 @@ export async function main() {
|
|
|
373
419
|
let enriched;
|
|
374
420
|
try {
|
|
375
421
|
enriched = typeof result === "object" && result !== null
|
|
376
|
-
? { ...result, _metrics: { durationMs, timeoutMs: clampedTimeout } }
|
|
422
|
+
? { ...result, _metrics: { durationMs, timeoutMs: clampedTimeout }, ...warningsField }
|
|
377
423
|
: result;
|
|
378
424
|
}
|
|
379
425
|
catch {
|
|
@@ -399,6 +445,7 @@ export async function main() {
|
|
|
399
445
|
error: msg,
|
|
400
446
|
_metrics: { durationMs, timeoutMs: clampedTimeout },
|
|
401
447
|
hint,
|
|
448
|
+
...warningsField,
|
|
402
449
|
}) }],
|
|
403
450
|
isError: true,
|
|
404
451
|
};
|
|
@@ -581,7 +628,9 @@ export async function main() {
|
|
|
581
628
|
}));
|
|
582
629
|
// ---- Node operations (short list) ----
|
|
583
630
|
server.registerTool("figma_instantiate_component", {
|
|
584
|
-
description: "Create a component instance. Use componentKey from figma_search_components or
|
|
631
|
+
description: "Create a component instance. Use componentKey from figma_search_components, figma_search_assets, or REST API. " +
|
|
632
|
+
"Supports library components (importComponentByKeyAsync) and local components (by nodeId). " +
|
|
633
|
+
"After creation: use overrides with setProperties({...}) for component properties — do NOT use findAll(TEXT) to modify instance text.",
|
|
585
634
|
inputSchema: {
|
|
586
635
|
componentKey: z.string(),
|
|
587
636
|
options: z
|
|
@@ -1001,9 +1050,14 @@ export async function main() {
|
|
|
1001
1050
|
else {
|
|
1002
1051
|
msg = PLUGIN_NOT_CONNECTED;
|
|
1003
1052
|
}
|
|
1004
|
-
const
|
|
1005
|
-
|
|
1006
|
-
|
|
1053
|
+
const autoIncremented = bridge.getPreferredPort() !== currentPort;
|
|
1054
|
+
const portHint = !listening
|
|
1055
|
+
? `All ports (5454-5470) are in use. Free a port or restart a stale instance.`
|
|
1056
|
+
: autoIncremented
|
|
1057
|
+
? `Bridge auto-incremented to port ${currentPort} (preferred ${bridge.getPreferredPort()} was occupied). Plugin discovers automatically.`
|
|
1058
|
+
: clientCount === 0
|
|
1059
|
+
? `Bridge port: ${currentPort}. Configure Figma plugin to Port: ${currentPort} or use auto-scan.`
|
|
1060
|
+
: undefined;
|
|
1007
1061
|
return {
|
|
1008
1062
|
content: [{
|
|
1009
1063
|
type: "text",
|
|
@@ -1013,6 +1067,7 @@ export async function main() {
|
|
|
1013
1067
|
connectedClients: clientCount,
|
|
1014
1068
|
connectedFiles,
|
|
1015
1069
|
bridgePort: currentPort,
|
|
1070
|
+
...(autoIncremented && { preferredPort: bridge.getPreferredPort(), autoIncremented }),
|
|
1016
1071
|
message: msg,
|
|
1017
1072
|
...(startError && { startError }),
|
|
1018
1073
|
...(portHint && { portHint }),
|
|
@@ -1065,14 +1120,16 @@ export async function main() {
|
|
|
1065
1120
|
}
|
|
1066
1121
|
});
|
|
1067
1122
|
server.registerTool("figma_create_text", {
|
|
1068
|
-
description: "Create a new text node on the current page. Returns the created node ID."
|
|
1123
|
+
description: "Create a new text node on the current page. Returns the created node ID. " +
|
|
1124
|
+
"IMPORTANT: fontFamily defaults to 'Inter' — if using a design system (e.g. SUI uses SHBGrotesk), specify the DS font. " +
|
|
1125
|
+
"For DS text with proper token binding, prefer figma_execute with importStyleByKeyAsync + setTextStyleIdAsync instead.",
|
|
1069
1126
|
inputSchema: {
|
|
1070
1127
|
text: z.string().describe("Text content"),
|
|
1071
1128
|
x: z.number().optional().default(0),
|
|
1072
1129
|
y: z.number().optional().default(0),
|
|
1073
1130
|
name: z.string().optional().describe("Node name (default: text content)"),
|
|
1074
1131
|
fontSize: z.number().optional().default(16),
|
|
1075
|
-
fontFamily: z.string().optional().default("Inter"),
|
|
1132
|
+
fontFamily: z.string().optional().default("Inter").describe("Font family — defaults to Inter. Specify DS font if using a design system (e.g. SHBGrotesk for SUI)."),
|
|
1076
1133
|
fontStyle: z.string().optional().default("Regular"),
|
|
1077
1134
|
fillColor: z.string().optional().describe("Text color hex e.g. '#000000'"),
|
|
1078
1135
|
parentId: z.string().optional().describe("Parent node ID"),
|
|
@@ -1220,36 +1277,171 @@ export async function main() {
|
|
|
1220
1277
|
});
|
|
1221
1278
|
// ---- figma_search_assets (team library search via plugin) ----
|
|
1222
1279
|
server.registerTool("figma_search_assets", {
|
|
1223
|
-
description: "Search for
|
|
1224
|
-
"
|
|
1280
|
+
description: "Search for team library variable collections (with import keys) and file-local components/component sets. " +
|
|
1281
|
+
"Variables come from enabled team libraries via figma.teamLibrary API. " +
|
|
1282
|
+
"Components are file-local only — for remote library component discovery, use figma_rest_api GET /v1/files/{fileKey}/components. " +
|
|
1283
|
+
"Pass assetTypes to filter: ['variables'], ['components'], or both (default).",
|
|
1225
1284
|
inputSchema: {
|
|
1285
|
+
figmaUrl: z.string().optional().describe("Figma or FigJam file URL for routing."),
|
|
1286
|
+
fileKey: z.string().optional().describe("Target a specific connected file."),
|
|
1226
1287
|
query: z.string().optional().describe("Search query to filter by name"),
|
|
1288
|
+
assetTypes: z.array(z.string()).optional().describe("Asset types to search: 'variables', 'components'. Default: both."),
|
|
1289
|
+
limit: z.number().min(1).max(80).optional().describe("Max results per asset type (default 25, max 80)"),
|
|
1290
|
+
currentPageOnly: z.boolean().optional().describe("For components: search current page only (default true)"),
|
|
1227
1291
|
},
|
|
1228
1292
|
annotations: { readOnlyHint: true },
|
|
1229
|
-
}, async ({ query }) => {
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1293
|
+
}, safeToolHandler(async ({ figmaUrl, fileKey, query, assetTypes, limit, currentPageOnly }) => {
|
|
1294
|
+
const conn = getConnector(bridge, resolveFileKey(figmaUrl, fileKey));
|
|
1295
|
+
const result = await conn.searchLibraryAssets({
|
|
1296
|
+
query: query || undefined,
|
|
1297
|
+
assetTypes: assetTypes?.length ? assetTypes : undefined,
|
|
1298
|
+
limit: limit ?? undefined,
|
|
1299
|
+
currentPageOnly,
|
|
1300
|
+
});
|
|
1301
|
+
const data = result;
|
|
1302
|
+
return { content: [{ type: "text", text: JSON.stringify({ success: true, ...data }) }] };
|
|
1303
|
+
}));
|
|
1304
|
+
// ---- figma_get_library_variables (team library variable discovery with import keys) ----
|
|
1305
|
+
server.registerTool("figma_get_library_variables", {
|
|
1306
|
+
description: "List variables from team library collections with import keys. " +
|
|
1307
|
+
"Uses figma.teamLibrary API — works in the TARGET file, no need to connect the DS source file. " +
|
|
1308
|
+
"Returns variable name, key (for importVariableByKeyAsync), resolvedType, collection, and library name. " +
|
|
1309
|
+
"Use the returned keys with figma_bind_variable or figma.variables.importVariableByKeyAsync() in figma_execute.",
|
|
1310
|
+
inputSchema: {
|
|
1311
|
+
figmaUrl: z.string().optional().describe("Figma file URL for routing."),
|
|
1312
|
+
fileKey: z.string().optional().describe("Target a specific connected file."),
|
|
1313
|
+
query: z.string().optional().describe("Filter variables by name (case-insensitive contains)"),
|
|
1314
|
+
collectionName: z.string().optional().describe("Filter by collection name (exact match)"),
|
|
1315
|
+
libraryName: z.string().optional().describe("Filter by library name (exact match, e.g. '❖ SUI')"),
|
|
1316
|
+
limit: z.number().min(1).max(500).optional().describe("Max results (default 100)"),
|
|
1317
|
+
},
|
|
1318
|
+
annotations: { readOnlyHint: true },
|
|
1319
|
+
}, safeToolHandler(async ({ figmaUrl, fileKey, query, collectionName, libraryName, limit }) => {
|
|
1320
|
+
const conn = getConnector(bridge, resolveFileKey(figmaUrl, fileKey));
|
|
1321
|
+
const maxResults = limit ?? 100;
|
|
1322
|
+
const q = query ? query.toLowerCase() : "";
|
|
1323
|
+
const code = `
|
|
1324
|
+
if (!figma.teamLibrary) return { success: false, error: "teamLibrary API not available" };
|
|
1325
|
+
var cols = await figma.teamLibrary.getAvailableLibraryVariableCollectionsAsync();
|
|
1326
|
+
var filtered = cols;
|
|
1327
|
+
${collectionName ? `filtered = filtered.filter(function(c) { return c.name === ${JSON.stringify(collectionName)}; });` : ""}
|
|
1328
|
+
${libraryName ? `filtered = filtered.filter(function(c) { return c.libraryName === ${JSON.stringify(libraryName)}; });` : ""}
|
|
1329
|
+
var results = [];
|
|
1330
|
+
for (var ci = 0; ci < filtered.length && results.length < ${maxResults}; ci++) {
|
|
1331
|
+
var col = filtered[ci];
|
|
1332
|
+
var vars = await figma.teamLibrary.getVariablesInLibraryCollectionAsync(col.key);
|
|
1333
|
+
for (var vi = 0; vi < vars.length && results.length < ${maxResults}; vi++) {
|
|
1334
|
+
var v = vars[vi];
|
|
1335
|
+
var nm = (v.name || "").toLowerCase();
|
|
1336
|
+
if (!${JSON.stringify(q)} || nm.indexOf(${JSON.stringify(q)}) >= 0) {
|
|
1337
|
+
results.push({ name: v.name, key: v.key, resolvedType: v.resolvedType, collection: col.name, library: col.libraryName });
|
|
1338
|
+
}
|
|
1339
|
+
}
|
|
1340
|
+
}
|
|
1341
|
+
return { success: true, count: results.length, variables: results };
|
|
1342
|
+
`;
|
|
1343
|
+
const result = await conn.executeCodeViaUI(code, 30000);
|
|
1344
|
+
return { content: [{ type: "text", text: JSON.stringify(result) }] };
|
|
1345
|
+
}));
|
|
1346
|
+
// ---- figma_bind_variable (import variable and bind to node property) ----
|
|
1347
|
+
server.registerTool("figma_bind_variable", {
|
|
1348
|
+
description: "Import a library variable by key and bind it to a node property. " +
|
|
1349
|
+
"For colors: binds to fills or strokes via setBoundVariableForPaint. " +
|
|
1350
|
+
"For spacing/sizing: binds via setBoundVariable (paddingLeft, itemSpacing, cornerRadius, etc.). " +
|
|
1351
|
+
"Get variableKey from figma_get_library_variables. " +
|
|
1352
|
+
"The node's fill/spacing will dynamically update when the DS token changes.",
|
|
1353
|
+
inputSchema: {
|
|
1354
|
+
figmaUrl: z.string().optional().describe("Figma file URL for routing."),
|
|
1355
|
+
fileKey: z.string().optional().describe("Target a specific connected file."),
|
|
1356
|
+
nodeId: z.string().describe("Target node ID"),
|
|
1357
|
+
variableKey: z.string().describe("Variable import key from figma_get_library_variables"),
|
|
1358
|
+
property: z.enum([
|
|
1359
|
+
"fills", "strokes",
|
|
1360
|
+
"paddingLeft", "paddingRight", "paddingTop", "paddingBottom",
|
|
1361
|
+
"itemSpacing", "counterAxisSpacing",
|
|
1362
|
+
"topLeftRadius", "topRightRadius", "bottomLeftRadius", "bottomRightRadius", "cornerRadius",
|
|
1363
|
+
"strokeWeight", "opacity",
|
|
1364
|
+
"width", "height", "minWidth", "minHeight", "maxWidth", "maxHeight",
|
|
1365
|
+
]).describe("Node property to bind the variable to"),
|
|
1366
|
+
paintIndex: z.number().optional().default(0).describe("For fills/strokes: which paint index (default 0)"),
|
|
1367
|
+
},
|
|
1368
|
+
annotations: { destructiveHint: true },
|
|
1369
|
+
}, safeToolHandler(async ({ figmaUrl, fileKey, nodeId, variableKey, property, paintIndex }) => {
|
|
1370
|
+
invalidateCache();
|
|
1371
|
+
const conn = getConnector(bridge, resolveFileKey(figmaUrl, fileKey));
|
|
1372
|
+
const idx = paintIndex ?? 0;
|
|
1373
|
+
const code = `
|
|
1374
|
+
var variable = await figma.variables.importVariableByKeyAsync(${JSON.stringify(variableKey)});
|
|
1375
|
+
var node = await figma.getNodeByIdAsync(${JSON.stringify(nodeId)});
|
|
1376
|
+
if (!node) throw new Error("Node not found: " + ${JSON.stringify(nodeId)});
|
|
1377
|
+
var prop = ${JSON.stringify(property)};
|
|
1378
|
+
if (prop === "fills" || prop === "strokes") {
|
|
1379
|
+
var paints = [];
|
|
1380
|
+
for (var i = 0; i < node[prop].length; i++) paints.push(node[prop][i]);
|
|
1381
|
+
if (!paints[${idx}]) throw new Error("No paint at index ${idx} on " + prop);
|
|
1382
|
+
var boundPaint = figma.variables.setBoundVariableForPaint(paints[${idx}], "color", variable);
|
|
1383
|
+
paints[${idx}] = boundPaint;
|
|
1384
|
+
node[prop] = paints;
|
|
1385
|
+
} else {
|
|
1386
|
+
node.setBoundVariable(prop, variable);
|
|
1387
|
+
}
|
|
1388
|
+
return { success: true, nodeId: ${JSON.stringify(nodeId)}, property: prop, variableName: variable.name, variableId: variable.id };
|
|
1389
|
+
`;
|
|
1390
|
+
const result = await conn.executeCodeViaUI(code, 10000);
|
|
1391
|
+
return { content: [{ type: "text", text: JSON.stringify(result) }] };
|
|
1392
|
+
}));
|
|
1393
|
+
// ---- figma_import_style (import text/paint/effect style from library) ----
|
|
1394
|
+
server.registerTool("figma_import_style", {
|
|
1395
|
+
description: "Import a text, paint, or effect style from a team library by key, and optionally apply it to a node. " +
|
|
1396
|
+
"IMPORTANT: This API only imports PUBLISHED LIBRARY styles, NOT local file styles. " +
|
|
1397
|
+
"For local styles, use 'node.fillStyleId = style.id' (or textStyleId/effectStyleId) directly via figma_execute. " +
|
|
1398
|
+
"Get library style keys from .claude/libraries/ cache or REST API: figma_rest_api GET /v1/files/{fileKey}/styles. " +
|
|
1399
|
+
"For TEXT styles: applies via setTextStyleIdAsync (includes font, size, weight). " +
|
|
1400
|
+
"For PAINT styles: applies via fillStyleId. For EFFECT styles: applies via effectStyleId.",
|
|
1401
|
+
inputSchema: {
|
|
1402
|
+
figmaUrl: z.string().optional().describe("Figma file URL for routing."),
|
|
1403
|
+
fileKey: z.string().optional().describe("Target a specific connected file."),
|
|
1404
|
+
styleKey: z.string().describe("Library style key (must be from a PUBLISHED team library, not a local style)"),
|
|
1405
|
+
nodeId: z.string().optional().describe("Node ID to apply the style to (optional — omit to just import)"),
|
|
1406
|
+
},
|
|
1407
|
+
annotations: { destructiveHint: true },
|
|
1408
|
+
}, safeToolHandler(async ({ figmaUrl, fileKey, styleKey, nodeId }) => {
|
|
1409
|
+
invalidateCache();
|
|
1410
|
+
const conn = getConnector(bridge, resolveFileKey(figmaUrl, fileKey));
|
|
1411
|
+
const code = `
|
|
1412
|
+
var style;
|
|
1413
|
+
try {
|
|
1414
|
+
style = await figma.importStyleByKeyAsync(${JSON.stringify(styleKey)});
|
|
1415
|
+
} catch (e) {
|
|
1416
|
+
var origMsg = e && e.message ? e.message : String(e);
|
|
1417
|
+
throw new Error(
|
|
1418
|
+
"importStyleByKeyAsync failed for key '" + ${JSON.stringify(styleKey)} + "'. " +
|
|
1419
|
+
"This API only works with PUBLISHED LIBRARY styles. " +
|
|
1420
|
+
"Local file styles cannot be imported this way — use 'node.fillStyleId/textStyleId/effectStyleId = <localStyleId>' directly via figma_execute. " +
|
|
1421
|
+
"To find library style keys, use REST API: GET /v1/files/{fileKey}/styles. " +
|
|
1422
|
+
"Original error: " + origMsg
|
|
1423
|
+
);
|
|
1424
|
+
}
|
|
1425
|
+
var applied = false;
|
|
1426
|
+
${nodeId ? `
|
|
1427
|
+
var node = await figma.getNodeByIdAsync(${JSON.stringify(nodeId)});
|
|
1428
|
+
if (!node) throw new Error("Node not found: " + ${JSON.stringify(nodeId)});
|
|
1429
|
+
if (style.type === "TEXT" && node.type === "TEXT") {
|
|
1430
|
+
await node.setTextStyleIdAsync(style.id);
|
|
1431
|
+
applied = true;
|
|
1432
|
+
} else if (style.type === "PAINT") {
|
|
1433
|
+
node.fillStyleId = style.id;
|
|
1434
|
+
applied = true;
|
|
1435
|
+
} else if (style.type === "EFFECT") {
|
|
1436
|
+
node.effectStyleId = style.id;
|
|
1437
|
+
applied = true;
|
|
1438
|
+
}
|
|
1439
|
+
` : ""}
|
|
1440
|
+
return { success: true, styleId: style.id, styleName: style.name, styleType: style.type, applied: applied };
|
|
1441
|
+
`;
|
|
1442
|
+
const result = await conn.executeCodeViaUI(code, 10000);
|
|
1443
|
+
return { content: [{ type: "text", text: JSON.stringify(result) }] };
|
|
1444
|
+
}));
|
|
1253
1445
|
// ---- figma_plugin_diagnostics ----
|
|
1254
1446
|
server.registerTool("figma_plugin_diagnostics", {
|
|
1255
1447
|
description: "Get diagnostic info about plugin connection health: uptime, connected clients, " +
|
|
@@ -1264,7 +1456,9 @@ export async function main() {
|
|
|
1264
1456
|
content: [{
|
|
1265
1457
|
type: "text",
|
|
1266
1458
|
text: JSON.stringify({
|
|
1267
|
-
|
|
1459
|
+
preferredPort: bridge.getPreferredPort(),
|
|
1460
|
+
actualPort: bridge.getPort(),
|
|
1461
|
+
autoIncremented: bridge.getPreferredPort() !== bridge.getPort(),
|
|
1268
1462
|
bridgeListening: bridge.isListening(),
|
|
1269
1463
|
connectedClients: bridge.connectedClientCount(),
|
|
1270
1464
|
connectedFiles: clients.map((c) => ({ fileKey: c.fileKey, fileName: c.fileName })),
|
|
@@ -1600,7 +1794,9 @@ export async function main() {
|
|
|
1600
1794
|
process.on("SIGTERM", shutdown);
|
|
1601
1795
|
const transport = new StdioServerTransport();
|
|
1602
1796
|
await server.connect(transport);
|
|
1603
|
-
|
|
1797
|
+
const actualPort = bridge.getPort();
|
|
1798
|
+
const autoInc = bridge.getPreferredPort() !== actualPort;
|
|
1799
|
+
logger.info({ port: actualPort, preferredPort: bridge.getPreferredPort(), autoIncremented: autoInc }, "F-MCP ATezer Bridge (plugin-only) MCP server running on stdio; WebSocket on port %s%s", actualPort, autoInc ? ` (auto-incremented from ${bridge.getPreferredPort()})` : "");
|
|
1604
1800
|
}
|
|
1605
1801
|
main().catch((err) => {
|
|
1606
1802
|
logger.error({ err }, "Fatal");
|