axhub-mcp-bridge 1.0.35 → 1.0.37
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/dist/constant/index.d.ts +1 -1
- package/dist/constant/index.js +4 -2
- package/dist/constant/index.js.map +1 -1
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp/mcp-server-stdio.js +7 -3
- package/dist/mcp/mcp-server-stdio.js.map +1 -1
- package/dist/mcp/register-tools.js +8 -0
- package/dist/mcp/register-tools.js.map +1 -1
- package/dist/native-messaging-host.d.ts +38 -1
- package/dist/native-messaging-host.js +272 -9
- package/dist/native-messaging-host.js.map +1 -1
- package/dist/scripts/constant.js +2 -2
- package/dist/server/index.d.ts +30 -0
- package/dist/server/index.js +199 -12
- package/dist/server/index.js.map +1 -1
- package/dist/server/websocket-bridge.d.ts +92 -0
- package/dist/server/websocket-bridge.js +311 -0
- package/dist/server/websocket-bridge.js.map +1 -0
- package/dist/shared.d.ts +19 -1
- package/dist/shared.js +177 -0
- package/dist/shared.js.map +1 -1
- package/dist/utils/logger.d.ts +12 -0
- package/dist/utils/logger.js +85 -0
- package/dist/utils/logger.js.map +1 -0
- package/package.json +10 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native-messaging-host.js","sourceRoot":"","sources":["../src/native-messaging-host.ts"],"names":[],"mappings":";;;AAAA,qCAAwC;AAExC,+BAAoC;AACpC,qCAA6C;AAC7C,yCAAsC;AAQtC,MAAa,mBAAmB;IAAhC;QACU,qBAAgB,GAAkB,IAAI,CAAC;QACvC,oBAAe,GAAgC,IAAI,GAAG,EAAE,CAAC;IA0PnE,CAAC;IAxPQ,SAAS,CAAC,cAAsB;QACrC,IAAI,CAAC,gBAAgB,GAAG,cAAc,CAAC;IACzC,CAAC;IAED,+CAA+C;IACxC,KAAK;QACV,IAAI,CAAC;YACH,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC9B,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAEO,oBAAoB;QAC1B,IAAI,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC7B,IAAI,cAAc,GAAG,CAAC,CAAC,CAAC;QAExB,eAAK,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,IAAI,KAAK,CAAC;YACV,OAAO,CAAC,KAAK,GAAG,eAAK,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;gBACvC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;gBAExC,IAAI,cAAc,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;oBAChD,cAAc,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;oBACxC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC3B,CAAC;gBAED,IAAI,cAAc,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,MAAM,IAAI,cAAc,EAAE,CAAC;oBAC7D,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;oBACtD,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;oBAEtC,IAAI,CAAC;wBACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;wBACrD,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;oBAC9B,CAAC;oBAAC,OAAO,KAAU,EAAE,CAAC;wBACpB,IAAI,CAAC,SAAS,CAAC,4BAA4B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC9D,CAAC;oBACD,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,yBAAyB;gBAChD,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,eAAK,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;YACnB,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,eAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACrB,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,OAAY;;QACtC,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC5C,IAAI,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAC;YACzC,OAAO;QACT,CAAC;QAED,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,OAAO,CAAC,mBAAmB,CAAC;YAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAEpD,IAAI,OAAO,EAAE,CAAC;gBACZ,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAChC,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;oBAClB,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC3C,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACnC,CAAC;gBACD,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,cAAc;YAChB,CAAC;YACD,OAAO;QACT,CAAC;QAED,wCAAwC;QACxC,IAAI,CAAC;YACH,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;gBACrB,KAAK,0BAAiB,CAAC,KAAK;oBAC1B,MAAM,IAAI,CAAC,WAAW,CAAC,CAAA,MAAA,OAAO,CAAC,OAAO,0CAAE,IAAI,KAAI,IAAI,CAAC,CAAC;oBACtD,MAAM;gBACR,KAAK,0BAAiB,CAAC,IAAI;oBACzB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;oBACxB,MAAM;gBACR,+FAA+F;gBAC/F,KAAK,qBAAqB;oBACxB,IAAI,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC;oBAChD,MAAM;gBACR;oBACE,kDAAkD;oBAClD,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;wBACjC,IAAI,CAAC,SAAS,CACZ,iDAAiD,OAAO,CAAC,IAAI,IAAI,SAAS,EAAE,CAC7E,CAAC;oBACJ,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,CAAC,uCAAuC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACI,6BAA6B,CAClC,cAAmB,EACnB,cAAsB,cAAc,EACpC,YAAoB,mBAAQ,CAAC,uBAAuB;QAEpD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,SAAS,GAAG,IAAA,SAAM,GAAE,CAAC,CAAC,6BAA6B;YAEzD,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;gBAChC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,gCAAgC;gBACxE,MAAM,CAAC,IAAI,KAAK,CAAC,2BAA2B,SAAS,IAAI,CAAC,CAAC,CAAC;YAC9D,CAAC,EAAE,SAAS,CAAC,CAAC;YAEd,0DAA0D;YAC1D,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;YAEpE,wCAAwC;YACxC,IAAI,CAAC,WAAW,CAAC;gBACf,IAAI,EAAE,WAAW,EAAE,6CAA6C;gBAChE,OAAO,EAAE,cAAc;gBACvB,SAAS,EAAE,SAAS,EAAE,+BAA+B;aACtD,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,WAAW,CAAC,IAAY;QACpC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,IAAI,CAAC,SAAS,CAAC,yCAAyC,CAAC,CAAC;YAC1D,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC;gBACpC,IAAI,CAAC,WAAW,CAAC;oBACf,IAAI,EAAE,0BAAiB,CAAC,KAAK;oBAC7B,OAAO,EAAE,EAAE,OAAO,EAAE,2BAA2B,EAAE;iBAClD,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAE9C,IAAI,CAAC,WAAW,CAAC;gBACf,IAAI,EAAE,0BAAiB,CAAC,cAAc;gBACtC,OAAO,EAAE,EAAE,IAAI,EAAE;aAClB,CAAC,CAAC;QAEL,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,CAAC,2BAA2B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,UAAU;QACtB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,IAAI,CAAC,SAAS,CAAC,yCAAyC,CAAC,CAAC;YAC1D,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,wCAAwC;YACxC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC;gBACrC,IAAI,CAAC,WAAW,CAAC;oBACf,IAAI,EAAE,0BAAiB,CAAC,KAAK;oBAC7B,OAAO,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE;iBAC9C,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;YACnC,2FAA2F;YAE3F,IAAI,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,0BAAiB,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,sCAAsC;QACtG,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,CAAC,0BAA0B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED;;OAEG;IACI,WAAW,CAAC,OAAY;QAC7B,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAC9C,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACjD,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACrC,YAAY,CAAC,aAAa,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACpD,sBAAsB;YACtB,gBAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE;gBACjE,IAAI,GAAG,EAAE,CAAC;oBACR,sEAAsE;gBACxE,CAAC;qBAAM,CAAC;oBACN,8CAA8C;gBAChD,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,kDAAkD;YAClD,mEAAmE;YACnE,4GAA4G;QAC9G,CAAC;IACH,CAAC;IAED;;OAEG;IACK,SAAS,CAAC,YAAoB;QACpC,IAAI,CAAC,WAAW,CAAC;YACf,IAAI,EAAE,0BAAiB,CAAC,sBAAsB,EAAE,yBAAyB;YACzE,OAAO,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE;SACnC,CAAC,CAAC;IACL,CAAC;IAID;;OAEG;IACK,OAAO;QACb,8BAA8B;QAC9B,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACvC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAChC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC,CAAC;QACpF,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAE7B,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC;YAC7D,IAAI,CAAC,gBAAgB;iBAClB,IAAI,EAAE;iBACN,IAAI,CAAC,GAAG,EAAE;gBACT,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC,CAAC;iBACD,KAAK,CAAC,GAAG,EAAE;gBACV,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;QACP,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;CACF;AA5PD,kDA4PC;AAED,MAAM,2BAA2B,GAAG,IAAI,mBAAmB,EAAE,CAAC;AAC9D,kBAAe,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"native-messaging-host.js","sourceRoot":"","sources":["../src/native-messaging-host.ts"],"names":[],"mappings":"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"}
|
package/dist/scripts/constant.js
CHANGED
|
@@ -6,7 +6,7 @@ exports.EXTENSION_CONFIG = exports.DESCRIPTION = exports.HOST_NAME = exports.EXT
|
|
|
6
6
|
exports.getExtensionConfig = getExtensionConfig;
|
|
7
7
|
// Chrome Development configuration
|
|
8
8
|
const CHROME_DEV_CONFIG = {
|
|
9
|
-
extensionId: '
|
|
9
|
+
extensionId: 'nmldkdjegamknfhmkookipmcmfjdgoni',
|
|
10
10
|
hostName: 'com.axhubdev.nativehost',
|
|
11
11
|
description: 'Node.js Host for Browser Bridge Extension (Chrome Dev)',
|
|
12
12
|
browser: 'chrome',
|
|
@@ -20,7 +20,7 @@ const CHROME_PROD_CONFIG = {
|
|
|
20
20
|
};
|
|
21
21
|
// Edge Development configuration (using same IDs as Chrome for now)
|
|
22
22
|
const EDGE_DEV_CONFIG = {
|
|
23
|
-
extensionId: '
|
|
23
|
+
extensionId: 'nmldkdjegamknfhmkookipmcmfjdgoni',
|
|
24
24
|
hostName: 'com.axhubdev.nativehost',
|
|
25
25
|
description: 'Node.js Host for Browser Bridge Extension (Edge Dev)',
|
|
26
26
|
browser: 'edge',
|
package/dist/server/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import { NativeMessagingHost } from '../native-messaging-host';
|
|
|
3
3
|
export declare class Server {
|
|
4
4
|
private fastify;
|
|
5
5
|
isRunning: boolean;
|
|
6
|
+
private websocketRunning;
|
|
6
7
|
private nativeHost;
|
|
7
8
|
private transportsMap;
|
|
8
9
|
constructor();
|
|
@@ -16,9 +17,38 @@ export declare class Server {
|
|
|
16
17
|
setNativeHost(nativeHost: NativeMessagingHost): void;
|
|
17
18
|
private setupPlugins;
|
|
18
19
|
private setupRoutes;
|
|
20
|
+
private setupWebSocketRoutes;
|
|
19
21
|
start(port: number | undefined, nativeHost: NativeMessagingHost): Promise<void>;
|
|
20
22
|
stop(): Promise<void>;
|
|
21
23
|
getInstance(): FastifyInstance;
|
|
24
|
+
/**
|
|
25
|
+
* Start WebSocket server independently
|
|
26
|
+
*/
|
|
27
|
+
startWebSocket(): {
|
|
28
|
+
success: boolean;
|
|
29
|
+
error?: string;
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Stop WebSocket server independently
|
|
33
|
+
*/
|
|
34
|
+
stopWebSocket(): {
|
|
35
|
+
success: boolean;
|
|
36
|
+
error?: string;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Get WebSocket server status
|
|
40
|
+
*/
|
|
41
|
+
getWebSocketStatus(): {
|
|
42
|
+
running: boolean;
|
|
43
|
+
stats?: any;
|
|
44
|
+
};
|
|
45
|
+
/**
|
|
46
|
+
* Send message to Figma clients via WebSocket
|
|
47
|
+
*/
|
|
48
|
+
sendToFigma(message: any): {
|
|
49
|
+
success: boolean;
|
|
50
|
+
error?: string;
|
|
51
|
+
};
|
|
22
52
|
}
|
|
23
53
|
declare const serverInstance: Server;
|
|
24
54
|
export default serverInstance;
|
package/dist/server/index.js
CHANGED
|
@@ -12,14 +12,18 @@ const streamableHttp_js_1 = require("@modelcontextprotocol/sdk/server/streamable
|
|
|
12
12
|
const node_crypto_1 = require("node:crypto");
|
|
13
13
|
const types_js_1 = require("@modelcontextprotocol/sdk/types.js");
|
|
14
14
|
const mcp_server_1 = require("../mcp/mcp-server");
|
|
15
|
+
const logger_1 = __importDefault(require("../utils/logger"));
|
|
16
|
+
const websocket_bridge_1 = __importDefault(require("./websocket-bridge"));
|
|
15
17
|
class Server {
|
|
16
18
|
constructor() {
|
|
17
19
|
this.isRunning = false; // Changed to public or provide a getter
|
|
20
|
+
this.websocketRunning = false; // WebSocket server status
|
|
18
21
|
this.nativeHost = null;
|
|
19
22
|
this.transportsMap = new Map();
|
|
20
23
|
this.fastify = (0, fastify_1.default)({ logger: constant_1.SERVER_CONFIG.LOGGER_ENABLED });
|
|
21
24
|
this.setupPlugins();
|
|
22
25
|
this.setupRoutes();
|
|
26
|
+
this.setupWebSocketRoutes();
|
|
23
27
|
}
|
|
24
28
|
/**
|
|
25
29
|
* Initialize Fastify instance with plugins and routes
|
|
@@ -28,12 +32,24 @@ class Server {
|
|
|
28
32
|
this.fastify = (0, fastify_1.default)({ logger: constant_1.SERVER_CONFIG.LOGGER_ENABLED });
|
|
29
33
|
this.setupPlugins();
|
|
30
34
|
this.setupRoutes();
|
|
35
|
+
this.setupWebSocketRoutes();
|
|
31
36
|
}
|
|
32
37
|
/**
|
|
33
38
|
* Associate NativeMessagingHost instance
|
|
34
39
|
*/
|
|
35
40
|
setNativeHost(nativeHost) {
|
|
36
41
|
this.nativeHost = nativeHost;
|
|
42
|
+
// Register callback to forward Figma messages to Extension via Native Messaging
|
|
43
|
+
websocket_bridge_1.default.onFigmaMessage((message) => {
|
|
44
|
+
nativeHost.handleFigmaMessage(message);
|
|
45
|
+
});
|
|
46
|
+
// Register callbacks for client connection/disconnection events
|
|
47
|
+
websocket_bridge_1.default.onClientConnect((clientId, stats) => {
|
|
48
|
+
nativeHost.handleClientConnect(clientId, stats);
|
|
49
|
+
});
|
|
50
|
+
websocket_bridge_1.default.onClientDisconnect((clientId, stats) => {
|
|
51
|
+
nativeHost.handleClientDisconnect(clientId, stats);
|
|
52
|
+
});
|
|
37
53
|
}
|
|
38
54
|
async setupPlugins() {
|
|
39
55
|
await this.fastify.register(cors_1.default, {
|
|
@@ -117,22 +133,32 @@ class Server {
|
|
|
117
133
|
});
|
|
118
134
|
// POST /mcp: Handle client-to-server messages
|
|
119
135
|
this.fastify.post('/mcp', async (request, reply) => {
|
|
136
|
+
var _a, _b;
|
|
137
|
+
logger_1.default.log('[MCP POST] Received request:', {
|
|
138
|
+
sessionId: request.headers['mcp-session-id'],
|
|
139
|
+
method: (_a = request.body) === null || _a === void 0 ? void 0 : _a.method,
|
|
140
|
+
id: (_b = request.body) === null || _b === void 0 ? void 0 : _b.id,
|
|
141
|
+
});
|
|
120
142
|
const sessionId = request.headers['mcp-session-id'];
|
|
121
143
|
let transport = this.transportsMap.get(sessionId || '');
|
|
122
144
|
if (transport) {
|
|
145
|
+
logger_1.default.log('[MCP POST] Using existing transport for session:', sessionId);
|
|
123
146
|
}
|
|
124
147
|
else if (!sessionId && (0, types_js_1.isInitializeRequest)(request.body)) {
|
|
148
|
+
logger_1.default.log('[MCP POST] Creating new transport for initialize request');
|
|
125
149
|
const newSessionId = (0, node_crypto_1.randomUUID)(); // Generate session ID
|
|
126
150
|
transport = new streamableHttp_js_1.StreamableHTTPServerTransport({
|
|
127
151
|
sessionIdGenerator: () => newSessionId, // Use pre-generated ID
|
|
128
152
|
onsessioninitialized: (initializedSessionId) => {
|
|
129
153
|
// Ensure transport instance exists and session ID matches
|
|
154
|
+
logger_1.default.log('[MCP POST] Session initialized:', initializedSessionId);
|
|
130
155
|
if (transport && initializedSessionId === newSessionId) {
|
|
131
156
|
this.transportsMap.set(initializedSessionId, transport);
|
|
132
157
|
}
|
|
133
158
|
},
|
|
134
159
|
});
|
|
135
160
|
transport.onclose = () => {
|
|
161
|
+
logger_1.default.log('[MCP POST] Transport closed for session:', transport === null || transport === void 0 ? void 0 : transport.sessionId);
|
|
136
162
|
if ((transport === null || transport === void 0 ? void 0 : transport.sessionId) && this.transportsMap.get(transport.sessionId)) {
|
|
137
163
|
this.transportsMap.delete(transport.sessionId);
|
|
138
164
|
}
|
|
@@ -140,13 +166,33 @@ class Server {
|
|
|
140
166
|
await (0, mcp_server_1.getMcpServer)().connect(transport);
|
|
141
167
|
}
|
|
142
168
|
else {
|
|
143
|
-
|
|
144
|
-
|
|
169
|
+
// Session validation bypassed for testing - create new transport anyway
|
|
170
|
+
logger_1.default.log('[MCP POST] No valid session, creating new transport (bypass mode)');
|
|
171
|
+
const newSessionId = (0, node_crypto_1.randomUUID)();
|
|
172
|
+
transport = new streamableHttp_js_1.StreamableHTTPServerTransport({
|
|
173
|
+
sessionIdGenerator: () => newSessionId,
|
|
174
|
+
onsessioninitialized: (initializedSessionId) => {
|
|
175
|
+
logger_1.default.log('[MCP POST] Session initialized (bypass):', initializedSessionId);
|
|
176
|
+
if (transport && initializedSessionId === newSessionId) {
|
|
177
|
+
this.transportsMap.set(initializedSessionId, transport);
|
|
178
|
+
}
|
|
179
|
+
},
|
|
180
|
+
});
|
|
181
|
+
transport.onclose = () => {
|
|
182
|
+
logger_1.default.log('[MCP POST] Transport closed (bypass):', transport === null || transport === void 0 ? void 0 : transport.sessionId);
|
|
183
|
+
if ((transport === null || transport === void 0 ? void 0 : transport.sessionId) && this.transportsMap.get(transport.sessionId)) {
|
|
184
|
+
this.transportsMap.delete(transport.sessionId);
|
|
185
|
+
}
|
|
186
|
+
};
|
|
187
|
+
await (0, mcp_server_1.getMcpServer)().connect(transport);
|
|
145
188
|
}
|
|
146
189
|
try {
|
|
190
|
+
logger_1.default.log('[MCP POST] Calling transport.handleRequest...');
|
|
147
191
|
await transport.handleRequest(request.raw, reply.raw, request.body);
|
|
192
|
+
logger_1.default.log('[MCP POST] transport.handleRequest completed');
|
|
148
193
|
}
|
|
149
194
|
catch (error) {
|
|
195
|
+
logger_1.default.error('[MCP POST] Error in transport.handleRequest:', error);
|
|
150
196
|
if (!reply.sent) {
|
|
151
197
|
reply
|
|
152
198
|
.code(constant_1.HTTP_STATUS.INTERNAL_SERVER_ERROR)
|
|
@@ -163,27 +209,41 @@ class Server {
|
|
|
163
209
|
reply.code(constant_1.HTTP_STATUS.BAD_REQUEST).send({ error: constant_1.ERROR_MESSAGES.INVALID_SSE_SESSION });
|
|
164
210
|
return;
|
|
165
211
|
}
|
|
212
|
+
// Track if we've already handled the stream closure
|
|
213
|
+
let streamClosed = false;
|
|
166
214
|
reply.raw.setHeader('Content-Type', 'text/event-stream');
|
|
167
215
|
reply.raw.setHeader('Cache-Control', 'no-cache');
|
|
168
216
|
reply.raw.setHeader('Connection', 'keep-alive');
|
|
169
217
|
reply.raw.flushHeaders(); // Ensure headers are sent immediately
|
|
218
|
+
// Set up socket close handler BEFORE calling transport.handleRequest
|
|
219
|
+
const handleClose = () => {
|
|
220
|
+
if (!streamClosed) {
|
|
221
|
+
streamClosed = true;
|
|
222
|
+
request.log.info(`SSE client disconnected for session: ${sessionId}`);
|
|
223
|
+
// Don't try to end the stream here, let transport handle it
|
|
224
|
+
}
|
|
225
|
+
};
|
|
226
|
+
request.socket.once('close', handleClose);
|
|
227
|
+
reply.raw.once('close', handleClose);
|
|
170
228
|
try {
|
|
229
|
+
// Hijack the reply to prevent Fastify from managing it
|
|
230
|
+
reply.hijack();
|
|
171
231
|
// transport.handleRequest will take over the response stream
|
|
172
232
|
await transport.handleRequest(request.raw, reply.raw);
|
|
173
|
-
if (!reply.sent) {
|
|
174
|
-
// If transport didn't send anything (unlikely for SSE initial handshake)
|
|
175
|
-
reply.hijack(); // Prevent Fastify from automatically sending response
|
|
176
|
-
}
|
|
177
233
|
}
|
|
178
234
|
catch (error) {
|
|
179
|
-
if
|
|
180
|
-
|
|
235
|
+
// Only try to end the stream if it hasn't been closed yet
|
|
236
|
+
if (!streamClosed && !reply.raw.writableEnded && !reply.raw.destroyed) {
|
|
237
|
+
streamClosed = true;
|
|
238
|
+
try {
|
|
239
|
+
reply.raw.end();
|
|
240
|
+
}
|
|
241
|
+
catch (endError) {
|
|
242
|
+
// Ignore errors when ending an already-closed stream
|
|
243
|
+
request.log.debug(`Error ending stream: ${endError}`);
|
|
244
|
+
}
|
|
181
245
|
}
|
|
182
246
|
}
|
|
183
|
-
request.socket.on('close', () => {
|
|
184
|
-
request.log.info(`SSE client disconnected for session: ${sessionId}`);
|
|
185
|
-
// transport's onclose should handle its own cleanup
|
|
186
|
-
});
|
|
187
247
|
});
|
|
188
248
|
this.fastify.delete('/mcp', async (request, reply) => {
|
|
189
249
|
const sessionId = request.headers['mcp-session-id'];
|
|
@@ -210,26 +270,61 @@ class Server {
|
|
|
210
270
|
}
|
|
211
271
|
});
|
|
212
272
|
}
|
|
273
|
+
setupWebSocketRoutes() {
|
|
274
|
+
// WebSocket stats endpoint
|
|
275
|
+
this.fastify.get('/ws/stats', async (request, reply) => {
|
|
276
|
+
try {
|
|
277
|
+
const stats = websocket_bridge_1.default.getStats();
|
|
278
|
+
return reply.status(constant_1.HTTP_STATUS.OK).send({
|
|
279
|
+
status: 'success',
|
|
280
|
+
data: stats
|
|
281
|
+
});
|
|
282
|
+
}
|
|
283
|
+
catch (error) {
|
|
284
|
+
return reply.status(constant_1.HTTP_STATUS.INTERNAL_SERVER_ERROR).send({
|
|
285
|
+
status: 'error',
|
|
286
|
+
message: error.message
|
|
287
|
+
});
|
|
288
|
+
}
|
|
289
|
+
});
|
|
290
|
+
// WebSocket health check
|
|
291
|
+
this.fastify.get('/ws/health', async (request, reply) => {
|
|
292
|
+
return reply.status(constant_1.HTTP_STATUS.OK).send({
|
|
293
|
+
status: 'ok',
|
|
294
|
+
websocket: 'available'
|
|
295
|
+
});
|
|
296
|
+
});
|
|
297
|
+
}
|
|
213
298
|
async start(port = constant_1.NATIVE_SERVER_PORT, nativeHost) {
|
|
299
|
+
logger_1.default.log('[SERVER START] Called with port:', port);
|
|
214
300
|
if (!this.nativeHost) {
|
|
215
301
|
this.nativeHost = nativeHost; // Ensure nativeHost is set
|
|
302
|
+
logger_1.default.log('[SERVER START] NativeHost set');
|
|
216
303
|
}
|
|
217
304
|
else if (this.nativeHost !== nativeHost) {
|
|
218
305
|
this.nativeHost = nativeHost; // Update to the passed instance
|
|
306
|
+
logger_1.default.log('[SERVER START] NativeHost updated');
|
|
219
307
|
}
|
|
220
308
|
if (this.isRunning) {
|
|
309
|
+
logger_1.default.warn('[SERVER START] Server is already running, skipping start');
|
|
221
310
|
return;
|
|
222
311
|
}
|
|
223
312
|
try {
|
|
224
313
|
// Ensure Fastify instance is ready before starting
|
|
225
314
|
if (!this.fastify) {
|
|
315
|
+
logger_1.default.log('[SERVER START] Initializing Fastify instance...');
|
|
226
316
|
this.initializeFastify();
|
|
227
317
|
}
|
|
318
|
+
logger_1.default.log('[SERVER START] Starting Fastify server on', { port, host: constant_1.SERVER_CONFIG.HOST });
|
|
228
319
|
await this.fastify.listen({ port, host: constant_1.SERVER_CONFIG.HOST });
|
|
320
|
+
// WebSocket will be started by native-messaging-host after HTTP server starts
|
|
321
|
+
// This allows both to start together when START command is received
|
|
229
322
|
this.isRunning = true; // Update running status
|
|
323
|
+
logger_1.default.log('[SERVER START] Fastify server started successfully');
|
|
230
324
|
// No need to return, Promise resolves void by default
|
|
231
325
|
}
|
|
232
326
|
catch (err) {
|
|
327
|
+
logger_1.default.error('[SERVER START] Failed to start Fastify server:', { message: err.message, stack: err.stack });
|
|
233
328
|
this.isRunning = false; // Startup failed, reset status
|
|
234
329
|
// Throw error instead of exiting directly, let caller (possibly NativeHost) handle
|
|
235
330
|
throw err; // or return Promise.reject(err);
|
|
@@ -241,6 +336,17 @@ class Server {
|
|
|
241
336
|
return;
|
|
242
337
|
}
|
|
243
338
|
try {
|
|
339
|
+
// Destroy WebSocket bridge if it's running
|
|
340
|
+
if (this.websocketRunning) {
|
|
341
|
+
try {
|
|
342
|
+
websocket_bridge_1.default.destroy();
|
|
343
|
+
this.websocketRunning = false;
|
|
344
|
+
}
|
|
345
|
+
catch (wsError) {
|
|
346
|
+
logger_1.default.warn('[SERVER STOP] Error destroying WebSocket bridge:', wsError);
|
|
347
|
+
// Continue with HTTP server stop even if WebSocket destroy fails
|
|
348
|
+
}
|
|
349
|
+
}
|
|
244
350
|
await this.fastify.close();
|
|
245
351
|
this.isRunning = false; // Update running status
|
|
246
352
|
// Recreate Fastify instance to allow restart
|
|
@@ -250,12 +356,93 @@ class Server {
|
|
|
250
356
|
catch (err) {
|
|
251
357
|
// Even if closing fails, mark as not running, but log the error
|
|
252
358
|
this.isRunning = false;
|
|
359
|
+
this.websocketRunning = false; // Also reset WebSocket status
|
|
253
360
|
throw err; // Throw error
|
|
254
361
|
}
|
|
255
362
|
}
|
|
256
363
|
getInstance() {
|
|
257
364
|
return this.fastify;
|
|
258
365
|
}
|
|
366
|
+
/**
|
|
367
|
+
* Start WebSocket server independently
|
|
368
|
+
*/
|
|
369
|
+
startWebSocket() {
|
|
370
|
+
if (!this.isRunning) {
|
|
371
|
+
return { success: false, error: 'HTTP server not running' };
|
|
372
|
+
}
|
|
373
|
+
if (this.websocketRunning) {
|
|
374
|
+
return { success: false, error: 'WebSocket server already running' };
|
|
375
|
+
}
|
|
376
|
+
try {
|
|
377
|
+
websocket_bridge_1.default.initialize(this.fastify.server);
|
|
378
|
+
this.websocketRunning = true;
|
|
379
|
+
logger_1.default.log('[SERVER] WebSocket server started');
|
|
380
|
+
return { success: true };
|
|
381
|
+
}
|
|
382
|
+
catch (error) {
|
|
383
|
+
logger_1.default.error('[SERVER] Failed to start WebSocket server:', error);
|
|
384
|
+
return { success: false, error: error.message };
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
/**
|
|
388
|
+
* Stop WebSocket server independently
|
|
389
|
+
*/
|
|
390
|
+
stopWebSocket() {
|
|
391
|
+
if (!this.websocketRunning) {
|
|
392
|
+
return { success: false, error: 'WebSocket server not running' };
|
|
393
|
+
}
|
|
394
|
+
try {
|
|
395
|
+
websocket_bridge_1.default.destroy();
|
|
396
|
+
this.websocketRunning = false;
|
|
397
|
+
logger_1.default.log('[SERVER] WebSocket server stopped');
|
|
398
|
+
return { success: true };
|
|
399
|
+
}
|
|
400
|
+
catch (error) {
|
|
401
|
+
logger_1.default.error('[SERVER] Failed to stop WebSocket server:', error);
|
|
402
|
+
return { success: false, error: error.message };
|
|
403
|
+
}
|
|
404
|
+
}
|
|
405
|
+
/**
|
|
406
|
+
* Get WebSocket server status
|
|
407
|
+
*/
|
|
408
|
+
getWebSocketStatus() {
|
|
409
|
+
if (!this.websocketRunning) {
|
|
410
|
+
return { running: false };
|
|
411
|
+
}
|
|
412
|
+
try {
|
|
413
|
+
const stats = websocket_bridge_1.default.getStats();
|
|
414
|
+
return { running: true, stats };
|
|
415
|
+
}
|
|
416
|
+
catch (error) {
|
|
417
|
+
return { running: false };
|
|
418
|
+
}
|
|
419
|
+
}
|
|
420
|
+
/**
|
|
421
|
+
* Send message to Figma clients via WebSocket
|
|
422
|
+
*/
|
|
423
|
+
sendToFigma(message) {
|
|
424
|
+
if (!this.websocketRunning) {
|
|
425
|
+
return { success: false, error: 'WebSocket server not running' };
|
|
426
|
+
}
|
|
427
|
+
try {
|
|
428
|
+
// Ensure message is in MessageEnvelope format
|
|
429
|
+
const envelope = {
|
|
430
|
+
type: message.type || 'unknown',
|
|
431
|
+
payload: message.payload !== undefined ? message.payload : message,
|
|
432
|
+
};
|
|
433
|
+
logger_1.default.log('[SERVER] Sending message to Figma', {
|
|
434
|
+
type: envelope.type,
|
|
435
|
+
hasPayload: envelope.payload !== undefined,
|
|
436
|
+
clientCount: websocket_bridge_1.default.getStats().total
|
|
437
|
+
});
|
|
438
|
+
const sent = websocket_bridge_1.default.sendToClientType('figma', envelope);
|
|
439
|
+
return { success: sent > 0 };
|
|
440
|
+
}
|
|
441
|
+
catch (error) {
|
|
442
|
+
logger_1.default.error('[SERVER] Failed to send message to Figma', { error: error.message });
|
|
443
|
+
return { success: false, error: error.message };
|
|
444
|
+
}
|
|
445
|
+
}
|
|
259
446
|
}
|
|
260
447
|
exports.Server = Server;
|
|
261
448
|
const serverInstance = new Server();
|
package/dist/server/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
export interface MessageEnvelope {
|
|
2
|
+
type: string;
|
|
3
|
+
payload?: unknown;
|
|
4
|
+
___requestId?: string;
|
|
5
|
+
target?: 'figma' | 'broadcast';
|
|
6
|
+
}
|
|
7
|
+
export declare class WebSocketBridge {
|
|
8
|
+
private wss;
|
|
9
|
+
private clients;
|
|
10
|
+
private heartbeatInterval;
|
|
11
|
+
private onFigmaMessageCallback;
|
|
12
|
+
private onClientConnectCallback;
|
|
13
|
+
private onClientDisconnectCallback;
|
|
14
|
+
constructor();
|
|
15
|
+
/**
|
|
16
|
+
* Initialize WebSocket server on existing HTTP server
|
|
17
|
+
*/
|
|
18
|
+
initialize(server: any): void;
|
|
19
|
+
/**
|
|
20
|
+
* Handle new WebSocket connection
|
|
21
|
+
* All WebSocket connections are from Figma plugin
|
|
22
|
+
*/
|
|
23
|
+
private handleConnection;
|
|
24
|
+
/**
|
|
25
|
+
* Handle incoming message from client
|
|
26
|
+
*/
|
|
27
|
+
private handleMessage;
|
|
28
|
+
/**
|
|
29
|
+
* Register callback for Figma messages
|
|
30
|
+
* This allows native-messaging-host to receive messages from Figma plugin
|
|
31
|
+
*/
|
|
32
|
+
onFigmaMessage(callback: (message: MessageEnvelope) => void): void;
|
|
33
|
+
/**
|
|
34
|
+
* Register callback for client connection events
|
|
35
|
+
*/
|
|
36
|
+
onClientConnect(callback: (clientId: string, stats: {
|
|
37
|
+
total: number;
|
|
38
|
+
figma: number;
|
|
39
|
+
}) => void): void;
|
|
40
|
+
/**
|
|
41
|
+
* Register callback for client disconnection events
|
|
42
|
+
*/
|
|
43
|
+
onClientDisconnect(callback: (clientId: string, stats: {
|
|
44
|
+
total: number;
|
|
45
|
+
figma: number;
|
|
46
|
+
}) => void): void;
|
|
47
|
+
/**
|
|
48
|
+
* Route message from Figma plugin
|
|
49
|
+
* Messages from Figma should be forwarded to Extension via Native Messaging
|
|
50
|
+
*/
|
|
51
|
+
private routeMessage;
|
|
52
|
+
/**
|
|
53
|
+
* Broadcast message to all clients except sender
|
|
54
|
+
*/
|
|
55
|
+
private broadcastMessage;
|
|
56
|
+
/**
|
|
57
|
+
* Send message to specific client
|
|
58
|
+
*/
|
|
59
|
+
private sendToClient;
|
|
60
|
+
/**
|
|
61
|
+
* Start heartbeat to detect dead connections
|
|
62
|
+
*/
|
|
63
|
+
private startHeartbeat;
|
|
64
|
+
/**
|
|
65
|
+
* Stop heartbeat
|
|
66
|
+
*/
|
|
67
|
+
private stopHeartbeat;
|
|
68
|
+
/**
|
|
69
|
+
* Generate unique client ID
|
|
70
|
+
*/
|
|
71
|
+
private generateClientId;
|
|
72
|
+
/**
|
|
73
|
+
* Get connection stats
|
|
74
|
+
* All WebSocket clients are Figma plugins
|
|
75
|
+
*/
|
|
76
|
+
getStats(): {
|
|
77
|
+
total: number;
|
|
78
|
+
figma: number;
|
|
79
|
+
details?: any[];
|
|
80
|
+
};
|
|
81
|
+
/**
|
|
82
|
+
* Send message to all Figma clients
|
|
83
|
+
* All WebSocket clients are Figma plugins
|
|
84
|
+
*/
|
|
85
|
+
sendToClientType(type: 'figma', message: MessageEnvelope): number;
|
|
86
|
+
/**
|
|
87
|
+
* Cleanup
|
|
88
|
+
*/
|
|
89
|
+
destroy(): void;
|
|
90
|
+
}
|
|
91
|
+
declare const websocketBridge: WebSocketBridge;
|
|
92
|
+
export default websocketBridge;
|