@atezer/figma-mcp-bridge 1.1.1

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.
Files changed (123) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +241 -0
  3. package/dist/browser/base.d.ts +50 -0
  4. package/dist/browser/base.d.ts.map +1 -0
  5. package/dist/browser/base.js +6 -0
  6. package/dist/browser/base.js.map +1 -0
  7. package/dist/browser/local.d.ts +81 -0
  8. package/dist/browser/local.d.ts.map +1 -0
  9. package/dist/browser/local.js +283 -0
  10. package/dist/browser/local.js.map +1 -0
  11. package/dist/cloudflare/browser/base.js +5 -0
  12. package/dist/cloudflare/browser/cloudflare.js +156 -0
  13. package/dist/cloudflare/browser-manager.js +157 -0
  14. package/dist/cloudflare/core/audit-log.js +62 -0
  15. package/dist/cloudflare/core/config.js +163 -0
  16. package/dist/cloudflare/core/console-monitor.js +427 -0
  17. package/dist/cloudflare/core/design-system-manifest.js +260 -0
  18. package/dist/cloudflare/core/enrichment/enrichment-service.js +272 -0
  19. package/dist/cloudflare/core/enrichment/index.js +7 -0
  20. package/dist/cloudflare/core/enrichment/relationship-mapper.js +351 -0
  21. package/dist/cloudflare/core/enrichment/style-resolver.js +326 -0
  22. package/dist/cloudflare/core/figma-api.js +273 -0
  23. package/dist/cloudflare/core/figma-desktop-connector.js +1029 -0
  24. package/dist/cloudflare/core/figma-reconstruction-spec.js +402 -0
  25. package/dist/cloudflare/core/figma-style-extractor.js +311 -0
  26. package/dist/cloudflare/core/figma-tools.js +2883 -0
  27. package/dist/cloudflare/core/logger.js +53 -0
  28. package/dist/cloudflare/core/plugin-bridge-connector.js +154 -0
  29. package/dist/cloudflare/core/plugin-bridge-server.js +174 -0
  30. package/dist/cloudflare/core/snippet-injector.js +96 -0
  31. package/dist/cloudflare/core/types/enriched.js +5 -0
  32. package/dist/cloudflare/core/types/index.js +4 -0
  33. package/dist/cloudflare/index.js +1061 -0
  34. package/dist/cloudflare/test-browser.js +88 -0
  35. package/dist/core/audit-log.d.ts +26 -0
  36. package/dist/core/audit-log.d.ts.map +1 -0
  37. package/dist/core/audit-log.js +63 -0
  38. package/dist/core/audit-log.js.map +1 -0
  39. package/dist/core/config.d.ts +17 -0
  40. package/dist/core/config.d.ts.map +1 -0
  41. package/dist/core/config.js +164 -0
  42. package/dist/core/config.js.map +1 -0
  43. package/dist/core/console-monitor.d.ts +82 -0
  44. package/dist/core/console-monitor.d.ts.map +1 -0
  45. package/dist/core/console-monitor.js +428 -0
  46. package/dist/core/console-monitor.js.map +1 -0
  47. package/dist/core/design-system-manifest.d.ts +272 -0
  48. package/dist/core/design-system-manifest.d.ts.map +1 -0
  49. package/dist/core/design-system-manifest.js +261 -0
  50. package/dist/core/design-system-manifest.js.map +1 -0
  51. package/dist/core/enrichment/enrichment-service.d.ts +52 -0
  52. package/dist/core/enrichment/enrichment-service.d.ts.map +1 -0
  53. package/dist/core/enrichment/enrichment-service.js +273 -0
  54. package/dist/core/enrichment/enrichment-service.js.map +1 -0
  55. package/dist/core/enrichment/index.d.ts +8 -0
  56. package/dist/core/enrichment/index.d.ts.map +1 -0
  57. package/dist/core/enrichment/index.js +8 -0
  58. package/dist/core/enrichment/index.js.map +1 -0
  59. package/dist/core/enrichment/relationship-mapper.d.ts +106 -0
  60. package/dist/core/enrichment/relationship-mapper.d.ts.map +1 -0
  61. package/dist/core/enrichment/relationship-mapper.js +352 -0
  62. package/dist/core/enrichment/relationship-mapper.js.map +1 -0
  63. package/dist/core/enrichment/style-resolver.d.ts +80 -0
  64. package/dist/core/enrichment/style-resolver.d.ts.map +1 -0
  65. package/dist/core/enrichment/style-resolver.js +327 -0
  66. package/dist/core/enrichment/style-resolver.js.map +1 -0
  67. package/dist/core/figma-api.d.ts +137 -0
  68. package/dist/core/figma-api.d.ts.map +1 -0
  69. package/dist/core/figma-api.js +274 -0
  70. package/dist/core/figma-api.js.map +1 -0
  71. package/dist/core/figma-desktop-connector.d.ts +238 -0
  72. package/dist/core/figma-desktop-connector.d.ts.map +1 -0
  73. package/dist/core/figma-desktop-connector.js +1030 -0
  74. package/dist/core/figma-desktop-connector.js.map +1 -0
  75. package/dist/core/figma-reconstruction-spec.d.ts +166 -0
  76. package/dist/core/figma-reconstruction-spec.d.ts.map +1 -0
  77. package/dist/core/figma-reconstruction-spec.js +403 -0
  78. package/dist/core/figma-reconstruction-spec.js.map +1 -0
  79. package/dist/core/figma-style-extractor.d.ts +76 -0
  80. package/dist/core/figma-style-extractor.d.ts.map +1 -0
  81. package/dist/core/figma-style-extractor.js +312 -0
  82. package/dist/core/figma-style-extractor.js.map +1 -0
  83. package/dist/core/figma-tools.d.ts +21 -0
  84. package/dist/core/figma-tools.d.ts.map +1 -0
  85. package/dist/core/figma-tools.js +2884 -0
  86. package/dist/core/figma-tools.js.map +1 -0
  87. package/dist/core/logger.d.ts +22 -0
  88. package/dist/core/logger.d.ts.map +1 -0
  89. package/dist/core/logger.js +54 -0
  90. package/dist/core/logger.js.map +1 -0
  91. package/dist/core/plugin-bridge-connector.d.ts +133 -0
  92. package/dist/core/plugin-bridge-connector.d.ts.map +1 -0
  93. package/dist/core/plugin-bridge-connector.js +155 -0
  94. package/dist/core/plugin-bridge-connector.js.map +1 -0
  95. package/dist/core/plugin-bridge-server.d.ts +42 -0
  96. package/dist/core/plugin-bridge-server.d.ts.map +1 -0
  97. package/dist/core/plugin-bridge-server.js +175 -0
  98. package/dist/core/plugin-bridge-server.js.map +1 -0
  99. package/dist/core/snippet-injector.d.ts +24 -0
  100. package/dist/core/snippet-injector.d.ts.map +1 -0
  101. package/dist/core/snippet-injector.js +97 -0
  102. package/dist/core/snippet-injector.js.map +1 -0
  103. package/dist/core/types/enriched.d.ts +213 -0
  104. package/dist/core/types/enriched.d.ts.map +1 -0
  105. package/dist/core/types/enriched.js +6 -0
  106. package/dist/core/types/enriched.js.map +1 -0
  107. package/dist/core/types/index.d.ts +116 -0
  108. package/dist/core/types/index.d.ts.map +1 -0
  109. package/dist/core/types/index.js +5 -0
  110. package/dist/core/types/index.js.map +1 -0
  111. package/dist/local-plugin-only.d.ts +13 -0
  112. package/dist/local-plugin-only.d.ts.map +1 -0
  113. package/dist/local-plugin-only.js +567 -0
  114. package/dist/local-plugin-only.js.map +1 -0
  115. package/dist/local.d.ts +73 -0
  116. package/dist/local.d.ts.map +1 -0
  117. package/dist/local.js +2466 -0
  118. package/dist/local.js.map +1 -0
  119. package/f-mcp-plugin/README.md +280 -0
  120. package/f-mcp-plugin/code.js +2222 -0
  121. package/f-mcp-plugin/manifest.json +14 -0
  122. package/f-mcp-plugin/ui.html +877 -0
  123. package/package.json +82 -0
@@ -0,0 +1,116 @@
1
+ /**
2
+ * Type definitions for F-MCP ATezer (Figma MCP Bridge)
3
+ */
4
+ /**
5
+ * Console log entry captured from Figma plugin
6
+ */
7
+ export interface ConsoleLogEntry {
8
+ timestamp: number;
9
+ level: 'log' | 'info' | 'warn' | 'error' | 'debug';
10
+ message: string;
11
+ args: any[];
12
+ stackTrace?: StackTrace;
13
+ source: 'plugin' | 'figma' | 'page' | 'unknown';
14
+ workerUrl?: string;
15
+ }
16
+ /**
17
+ * Stack trace information
18
+ */
19
+ export interface StackTrace {
20
+ callFrames: CallFrame[];
21
+ }
22
+ /**
23
+ * Individual stack frame
24
+ */
25
+ export interface CallFrame {
26
+ functionName: string;
27
+ url: string;
28
+ lineNumber: number;
29
+ columnNumber: number;
30
+ }
31
+ /**
32
+ * Screenshot metadata
33
+ */
34
+ export interface Screenshot {
35
+ id: string;
36
+ timestamp: number;
37
+ path: string;
38
+ format: 'png' | 'jpeg';
39
+ width: number;
40
+ height: number;
41
+ selector?: string;
42
+ base64?: string;
43
+ metadata?: ScreenshotMetadata;
44
+ }
45
+ /**
46
+ * Additional screenshot metadata
47
+ */
48
+ export interface ScreenshotMetadata {
49
+ pluginName?: string;
50
+ pluginId?: string;
51
+ figmaFileKey?: string;
52
+ }
53
+ /**
54
+ * Plugin context information
55
+ */
56
+ export interface PluginContext {
57
+ pluginId?: string;
58
+ pluginName?: string;
59
+ isRunning: boolean;
60
+ lastReloadTime?: number;
61
+ }
62
+ /**
63
+ * Server configuration
64
+ */
65
+ export interface ServerConfig {
66
+ mode: 'local' | 'cloudflare';
67
+ browser: BrowserConfig;
68
+ console: ConsoleConfig;
69
+ screenshots: ScreenshotConfig;
70
+ local?: LocalModeConfig;
71
+ }
72
+ /**
73
+ * Browser configuration
74
+ */
75
+ export interface BrowserConfig {
76
+ headless: boolean;
77
+ args: string[];
78
+ executablePath?: string;
79
+ }
80
+ /**
81
+ * Local mode configuration
82
+ */
83
+ export interface LocalModeConfig {
84
+ debugHost: string;
85
+ debugPort: number;
86
+ /** Plugin bridge WebSocket server port (no CDP needed when plugin connects) */
87
+ pluginBridgePort?: number;
88
+ /** Optional audit log file path (enterprise); one JSON object per line (NDJSON) */
89
+ auditLogPath?: string;
90
+ }
91
+ /**
92
+ * Console monitoring configuration
93
+ */
94
+ export interface ConsoleConfig {
95
+ bufferSize: number;
96
+ filterLevels: ConsoleLogEntry['level'][];
97
+ truncation: TruncationConfig;
98
+ }
99
+ /**
100
+ * Screenshot configuration
101
+ */
102
+ export interface ScreenshotConfig {
103
+ defaultFormat: 'png' | 'jpeg';
104
+ quality: number;
105
+ storePath: string;
106
+ }
107
+ /**
108
+ * Log truncation configuration
109
+ */
110
+ export interface TruncationConfig {
111
+ maxStringLength: number;
112
+ maxArrayLength: number;
113
+ maxObjectDepth: number;
114
+ removeDuplicates: boolean;
115
+ }
116
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,SAAS,EAAE,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,kBAAkB,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,OAAO,GAAG,YAAY,CAAC;IAC7B,OAAO,EAAE,aAAa,CAAC;IACvB,OAAO,EAAE,aAAa,CAAC;IACvB,WAAW,EAAE,gBAAgB,CAAC;IAC9B,KAAK,CAAC,EAAE,eAAe,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mFAAmF;IACnF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC;IACzC,UAAU,EAAE,gBAAgB,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,KAAK,GAAG,MAAM,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,OAAO,CAAC;CAC3B"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Type definitions for F-MCP ATezer (Figma MCP Bridge)
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1,13 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * F-MCP ATezer Bridge – Plugin-only MCP relay
4
+ *
5
+ * Minimal MCP server: NO Figma REST API, NO FIGMA_ACCESS_TOKEN, NO CDP.
6
+ * All data comes from the F-MCP ATezer Bridge plugin via WebSocket (port 5454).
7
+ * Claude connects to this process; plugin in Figma connects to the same process.
8
+ *
9
+ * Usage: node dist/local-plugin-only.js
10
+ * Claude config: "args": ["/path/to/figma-mcp-bridge/dist/local-plugin-only.js"]
11
+ */
12
+ export declare function main(): Promise<void>;
13
+ //# sourceMappingURL=local-plugin-only.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-plugin-only.d.ts","sourceRoot":"","sources":["../src/local-plugin-only.ts"],"names":[],"mappings":";AAEA;;;;;;;;;GASG;AA0CH,wBAAsB,IAAI,kBAorBzB"}