unframer 4.1.8 → 4.2.0

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 (162) hide show
  1. package/README.md +5 -5
  2. package/dist/babel-jsx.d.ts +9 -0
  3. package/dist/babel-jsx.d.ts.map +1 -1
  4. package/dist/babel-jsx.js +72 -0
  5. package/dist/babel-jsx.js.map +1 -1
  6. package/dist/cli.d.ts +2 -2
  7. package/dist/cli.d.ts.map +1 -1
  8. package/dist/cli.js +262 -42
  9. package/dist/cli.js.map +1 -1
  10. package/dist/css-core.d.ts +50 -0
  11. package/dist/css-core.d.ts.map +1 -0
  12. package/dist/css-core.js +231 -0
  13. package/dist/css-core.js.map +1 -0
  14. package/dist/css.d.ts +9 -43
  15. package/dist/css.d.ts.map +1 -1
  16. package/dist/css.js +9 -232
  17. package/dist/css.js.map +1 -1
  18. package/dist/exporter.d.ts +1 -1
  19. package/dist/exporter.d.ts.map +1 -1
  20. package/dist/exporter.js +72 -11
  21. package/dist/exporter.js.map +1 -1
  22. package/dist/exporter.test.js +78 -0
  23. package/dist/exporter.test.js.map +1 -1
  24. package/dist/framer-chunks/{SqliteDatabase-VAKIICSG-R7ZS6CHH.js → SqliteDatabase-VAKIICSG-OPV4MG3Y.js} +5 -4
  25. package/dist/framer-chunks/{chunk-2DZGP7C2.js → chunk-7ZLQTYXQ.js} +5 -24
  26. package/dist/framer-chunks/chunk-IKQSD2QC.js +10 -0
  27. package/dist/framer-chunks/default-blog-sqlite-7ZHEY3GT-TVGUYU6H.js +7 -0
  28. package/dist/framer-chunks/fontshare-4THNDPMZ-FLLTWCDO.js +7 -0
  29. package/dist/framer-chunks/fontshare-B2QLD7YB-5V3XZJAH.js +7 -0
  30. package/dist/framer-chunks/fontshare-O22OBJ3D-FIG3CRN3.js +7 -0
  31. package/dist/framer-chunks/framer-font-45AI7UCZ-CKGC4MJC.js +7 -0
  32. package/dist/framer-chunks/google-3FCAKCAC-AM34UPJK.js +7 -0
  33. package/dist/framer-chunks/google-3SZHWBC6-2VTQEQ7J.js +7 -0
  34. package/dist/framer-chunks/google-GXDJLGJB-JNEJGCGD.js +7 -0
  35. package/dist/framer-chunks/sqlite-wasm-FGP37EAY-NO5QVZDI.js +7 -0
  36. package/dist/framer-chunks/sqlite3-SISQ6ENZ-5WRKGWTY.js +7 -0
  37. package/dist/framer.d.ts +128 -0
  38. package/dist/framer.js +820 -428
  39. package/dist/plugin-mcp-dist/lib/framer.d.ts +1 -7
  40. package/dist/plugin-mcp-dist/lib/framer.d.ts.map +1 -1
  41. package/dist/plugin-mcp-dist/lib/framer.js +90 -23
  42. package/dist/plugin-mcp-dist/lib/framer.js.map +1 -1
  43. package/dist/plugin-mcp-dist/lib/framer.test.d.ts +2 -0
  44. package/dist/plugin-mcp-dist/lib/framer.test.d.ts.map +1 -0
  45. package/dist/plugin-mcp-dist/lib/framer.test.js +214 -0
  46. package/dist/plugin-mcp-dist/lib/framer.test.js.map +1 -0
  47. package/dist/plugin-mcp-dist/lib/mcp-handlers.d.ts.map +1 -1
  48. package/dist/plugin-mcp-dist/lib/mcp-handlers.js +69 -11
  49. package/dist/plugin-mcp-dist/lib/mcp-handlers.js.map +1 -1
  50. package/dist/plugin-mcp-dist/lib/mcp.test.js +340 -364
  51. package/dist/plugin-mcp-dist/lib/mcp.test.js.map +1 -1
  52. package/dist/plugin-mcp-dist/lib/plugin-websocket.d.ts.map +1 -1
  53. package/dist/plugin-mcp-dist/lib/plugin-websocket.js +0 -3
  54. package/dist/plugin-mcp-dist/lib/plugin-websocket.js.map +1 -1
  55. package/dist/plugin-mcp-dist/lib/react-export.d.ts.map +1 -1
  56. package/dist/plugin-mcp-dist/lib/react-export.js +79 -61
  57. package/dist/plugin-mcp-dist/lib/react-export.js.map +1 -1
  58. package/dist/plugin-mcp-dist/lib/schema.d.ts +8 -0
  59. package/dist/plugin-mcp-dist/lib/schema.d.ts.map +1 -1
  60. package/dist/plugin-mcp-dist/lib/schema.js +18 -1
  61. package/dist/plugin-mcp-dist/lib/schema.js.map +1 -1
  62. package/dist/plugin-mcp-dist/lib/store.d.ts +1 -1
  63. package/dist/plugin-mcp-dist/lib/store.d.ts.map +1 -1
  64. package/dist/plugin-mcp-dist/lib/tunnel-integration.test.d.ts +2 -0
  65. package/dist/plugin-mcp-dist/lib/tunnel-integration.test.d.ts.map +1 -0
  66. package/dist/plugin-mcp-dist/lib/tunnel-integration.test.js +147 -0
  67. package/dist/plugin-mcp-dist/lib/tunnel-integration.test.js.map +1 -0
  68. package/dist/plugin-mcp-dist/lib/tunnel.d.ts +46 -0
  69. package/dist/plugin-mcp-dist/lib/tunnel.d.ts.map +1 -0
  70. package/dist/plugin-mcp-dist/lib/tunnel.js +117 -0
  71. package/dist/plugin-mcp-dist/lib/tunnel.js.map +1 -0
  72. package/dist/plugin-mcp-dist/lib/upstream-socket.d.ts +13 -0
  73. package/dist/plugin-mcp-dist/lib/upstream-socket.d.ts.map +1 -0
  74. package/dist/plugin-mcp-dist/lib/upstream-socket.js +56 -0
  75. package/dist/plugin-mcp-dist/lib/upstream-socket.js.map +1 -0
  76. package/dist/plugin-mcp-dist/lib/upstream-socket.test.d.ts +2 -0
  77. package/dist/plugin-mcp-dist/lib/upstream-socket.test.d.ts.map +1 -0
  78. package/dist/plugin-mcp-dist/lib/upstream-socket.test.js +212 -0
  79. package/dist/plugin-mcp-dist/lib/upstream-socket.test.js.map +1 -0
  80. package/dist/plugin-mcp-dist/lib/utils.d.ts +1 -9
  81. package/dist/plugin-mcp-dist/lib/utils.d.ts.map +1 -1
  82. package/dist/plugin-mcp-dist/lib/utils.js +13 -9
  83. package/dist/plugin-mcp-dist/lib/utils.js.map +1 -1
  84. package/dist/react.d.ts +1 -1
  85. package/dist/react.d.ts.map +1 -1
  86. package/dist/react.js +7 -13
  87. package/dist/react.js.map +1 -1
  88. package/dist/version.d.ts +1 -1
  89. package/dist/version.js +1 -1
  90. package/package.json +7 -8
  91. package/src/babel-jsx.ts +99 -0
  92. package/src/cli.ts +295 -42
  93. package/src/css-core.ts +277 -0
  94. package/src/css.tsx +10 -276
  95. package/src/exporter.test.ts +82 -0
  96. package/src/exporter.ts +92 -11
  97. package/src/framer.d.ts +128 -0
  98. package/src/framer.js +820 -428
  99. package/src/plugin-mcp-dist/lib/framer.d.ts +2 -5
  100. package/src/plugin-mcp-dist/lib/framer.d.ts.map +1 -1
  101. package/src/plugin-mcp-dist/lib/framer.js +90 -23
  102. package/src/plugin-mcp-dist/lib/framer.js.map +1 -1
  103. package/src/plugin-mcp-dist/lib/framer.test.d.ts +2 -0
  104. package/src/plugin-mcp-dist/lib/framer.test.d.ts.map +1 -0
  105. package/src/plugin-mcp-dist/lib/framer.test.js +213 -0
  106. package/src/plugin-mcp-dist/lib/framer.test.js.map +1 -0
  107. package/src/plugin-mcp-dist/lib/mcp-handlers.d.ts +2 -2
  108. package/src/plugin-mcp-dist/lib/mcp-handlers.d.ts.map +1 -1
  109. package/src/plugin-mcp-dist/lib/mcp-handlers.js +69 -11
  110. package/src/plugin-mcp-dist/lib/mcp-handlers.js.map +1 -1
  111. package/src/plugin-mcp-dist/lib/mcp.test.js +340 -364
  112. package/src/plugin-mcp-dist/lib/mcp.test.js.map +1 -1
  113. package/src/plugin-mcp-dist/lib/plugin-websocket.d.ts.map +1 -1
  114. package/src/plugin-mcp-dist/lib/plugin-websocket.js +0 -3
  115. package/src/plugin-mcp-dist/lib/plugin-websocket.js.map +1 -1
  116. package/src/plugin-mcp-dist/lib/react-export.d.ts +1 -1
  117. package/src/plugin-mcp-dist/lib/react-export.d.ts.map +1 -1
  118. package/src/plugin-mcp-dist/lib/react-export.js +79 -61
  119. package/src/plugin-mcp-dist/lib/react-export.js.map +1 -1
  120. package/src/plugin-mcp-dist/lib/schema.d.ts +11 -3
  121. package/src/plugin-mcp-dist/lib/schema.d.ts.map +1 -1
  122. package/src/plugin-mcp-dist/lib/schema.js +18 -1
  123. package/src/plugin-mcp-dist/lib/schema.js.map +1 -1
  124. package/src/plugin-mcp-dist/lib/tunnel-integration.test.d.ts +2 -0
  125. package/src/plugin-mcp-dist/lib/tunnel-integration.test.d.ts.map +1 -0
  126. package/src/plugin-mcp-dist/lib/tunnel-integration.test.js +146 -0
  127. package/src/plugin-mcp-dist/lib/tunnel-integration.test.js.map +1 -0
  128. package/src/plugin-mcp-dist/lib/tunnel.d.ts +55 -0
  129. package/src/plugin-mcp-dist/lib/tunnel.d.ts.map +1 -0
  130. package/src/plugin-mcp-dist/lib/tunnel.js +116 -0
  131. package/src/plugin-mcp-dist/lib/tunnel.js.map +1 -0
  132. package/src/plugin-mcp-dist/lib/upstream-socket.d.ts +28 -0
  133. package/src/plugin-mcp-dist/lib/upstream-socket.d.ts.map +1 -0
  134. package/src/plugin-mcp-dist/lib/upstream-socket.js +55 -0
  135. package/src/plugin-mcp-dist/lib/upstream-socket.js.map +1 -0
  136. package/src/plugin-mcp-dist/lib/upstream-socket.test.d.ts +5 -0
  137. package/src/plugin-mcp-dist/lib/upstream-socket.test.d.ts.map +1 -0
  138. package/src/plugin-mcp-dist/lib/upstream-socket.test.js +211 -0
  139. package/src/plugin-mcp-dist/lib/upstream-socket.test.js.map +1 -0
  140. package/src/plugin-mcp-dist/lib/utils.d.ts +2 -2
  141. package/src/plugin-mcp-dist/lib/utils.d.ts.map +1 -1
  142. package/src/plugin-mcp-dist/lib/utils.js +13 -9
  143. package/src/plugin-mcp-dist/lib/utils.js.map +1 -1
  144. package/src/react.tsx +7 -19
  145. package/src/styles/framer.css +34 -64
  146. package/src/version.ts +1 -1
  147. package/dist/framer-chunks/default-blog-sqlite-7ZHEY3GT-27R5KAAW.js +0 -9
  148. package/dist/framer-chunks/fontshare-4THNDPMZ-BJQGNHXN.js +0 -27099
  149. package/dist/framer-chunks/fontshare-B2QLD7YB-4BZEAA37.js +0 -119
  150. package/dist/framer-chunks/fontshare-O22OBJ3D-ALBQLFE5.js +0 -825
  151. package/dist/framer-chunks/framer-font-45AI7UCZ-LU7DEIDM.js +0 -7
  152. package/dist/framer-chunks/google-3FCAKCAC-P5EL6KGL.js +0 -623876
  153. package/dist/framer-chunks/google-3SZHWBC6-OBXS3UIH.js +0 -1627
  154. package/dist/framer-chunks/google-GXDJLGJB-HHIXFE4M.js +0 -6885
  155. package/dist/framer-chunks/sqlite-wasm-FGP37EAY-HR6PIAJQ.js +0 -11479
  156. package/dist/framer-chunks/sqlite3-SISQ6ENZ-KMXYXSSV.js +0 -9
  157. package/dist/generated/api-client.d.ts +0 -21
  158. package/dist/generated/api-client.d.ts.map +0 -1
  159. package/dist/generated/api-client.js +0 -27
  160. package/dist/generated/api-client.js.map +0 -1
  161. package/src/generated/api-client.d.ts +0 -1238
  162. package/src/generated/api-client.js +0 -26
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/plugin-mcp-dist/lib/schema.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/plugin-mcp-dist/lib/schema.js"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export declare const useStore: import("zustand").UseBoundStore<import("zustand").StoreApi<unknown>>;
1
+ export declare const useStore: any;
2
2
  //# sourceMappingURL=store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/plugin-mcp-dist/lib/store.js"],"names":[],"mappings":"AACA,eAAO,MAAM,QAAQ,sEAMlB,CAAC"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/plugin-mcp-dist/lib/store.js"],"names":[],"mappings":"AACA,eAAO,MAAM,QAAQ,KAMlB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=tunnel-integration.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tunnel-integration.test.d.ts","sourceRoot":"","sources":["../../../src/plugin-mcp-dist/lib/tunnel-integration.test.js"],"names":[],"mappings":""}
@@ -0,0 +1,147 @@
1
+ /**
2
+ * Integration tests for the MCP v2 worker deployed to preview.
3
+ *
4
+ * Run after deploying to preview: pnpm test -t "tunnel integration"
5
+ *
6
+ * The e2e test runs for both transport modes (streamable-http on /mcp and legacy SSE on /sse)
7
+ * in a single test run via a root-level for loop.
8
+ *
9
+ * - Tunnel tests: upstream replacement (4009), HTTP routing
10
+ * - E2e tests: full MCP SDK client pipeline for each transport mode
11
+ */
12
+ import { describe, test, expect } from 'vitest';
13
+ import WebSocket from 'ws';
14
+ import { Client } from '@modelcontextprotocol/sdk/client/index.js';
15
+ import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js';
16
+ import { SSEClientTransport } from '@modelcontextprotocol/sdk/client/sse.js';
17
+ const WS_URL = 'wss://mcp.preview.unframer.co/_tunnel';
18
+ const HTTP_URL = 'https://mcp.preview.unframer.co';
19
+ // Real session credentials for preview (validated by getValidatedSession → website API → KV cache)
20
+ const MCP_ID = '598f176d590e612e9b6bcaebb54abb0a8763c6f54ba5b9c136690ff9ad2400cc';
21
+ const MCP_SECRET = 'FpGeQQcnvd9CpFvZwEdONuAjEX7c6AwJ';
22
+ const getTunnelId = () => `test-${Date.now()}-${Math.random().toString(36).slice(2)}`;
23
+ function connectWs(url) {
24
+ return new Promise((resolve, reject) => {
25
+ const ws = new WebSocket(url);
26
+ ws.on('open', () => {
27
+ resolve(ws);
28
+ });
29
+ ws.on('error', reject);
30
+ });
31
+ }
32
+ describe('tunnel integration', () => {
33
+ test('connecting upstream twice replaces the first with 4009', async () => {
34
+ const tunnelId = getTunnelId();
35
+ const upstream1 = await connectWs(`${WS_URL}/upstream?id=${tunnelId}`);
36
+ const upstream1ClosePromise = new Promise((resolve) => {
37
+ upstream1.on('close', (code, reason) => {
38
+ resolve({ code, reason: reason.toString() });
39
+ });
40
+ });
41
+ const upstream2 = await connectWs(`${WS_URL}/upstream?id=${tunnelId}`);
42
+ const closeEvent = await upstream1ClosePromise;
43
+ expect(closeEvent.code).toBe(4009);
44
+ expect(closeEvent.reason).toBe('Upstream already connected');
45
+ expect(upstream2.readyState).toBe(WebSocket.OPEN);
46
+ upstream2.close();
47
+ }, 15000);
48
+ test('HTTP endpoints return expected responses', async () => {
49
+ // 404 for unknown paths
50
+ const res404 = await fetch(`${HTTP_URL}/unknown`);
51
+ expect(res404.status).toBe(404);
52
+ // 401 for /mcp without auth
53
+ const resMcp = await fetch(`${HTTP_URL}/mcp`, { method: 'POST' });
54
+ expect(resMcp.status).toBe(401);
55
+ // 401 for /sse without auth
56
+ const resSse = await fetch(`${HTTP_URL}/sse`);
57
+ expect(resSse.status).toBe(401);
58
+ // 428 for htmlForUserWithoutFramerUserId
59
+ const resHtml = await fetch(`${HTTP_URL}/htmlForUserWithoutFramerUserId`);
60
+ expect(resHtml.status).toBe(428);
61
+ const htmlContent = await resHtml.text();
62
+ expect(htmlContent).toContain('Framer MCP Plugin Not Open');
63
+ }, 15000);
64
+ });
65
+ /**
66
+ * E2e tests run for each transport mode. Both exercise the same pipeline:
67
+ * MCP client → Worker → McpTunnel DO → upstream plugin WS → response
68
+ *
69
+ * The only difference is the client transport:
70
+ * - streamable-http: POST /mcp (StreamableHTTPClientTransport)
71
+ * - sse: GET /sse + POST /sse/message (SSEClientTransport, legacy protocol)
72
+ */
73
+ const transportModes = ['streamable-http', 'sse'];
74
+ for (const mode of transportModes) {
75
+ describe(`e2e [${mode}]`, () => {
76
+ test('MCP SDK client → worker → DO → upstream plugin WS → response', async () => {
77
+ // 1. Connect a fake plugin as upstream WebSocket (mimics plugin-websocket.ts)
78
+ const upstream = await connectWs(`wss://preview.unframer.co/_tunnel/upstream?id=${MCP_ID}`);
79
+ // Send initial ready message (like plugin-websocket.ts does on open)
80
+ upstream.send(JSON.stringify({ type: 'ready' }));
81
+ // Set up the fake plugin handler
82
+ const receivedToolCalls = [];
83
+ upstream.on('message', (data) => {
84
+ const raw = data.toString();
85
+ let msg;
86
+ try {
87
+ msg = JSON.parse(raw);
88
+ }
89
+ catch {
90
+ return;
91
+ }
92
+ if (!msg.payload?.type) {
93
+ return;
94
+ }
95
+ if (msg.payload.type === 'ready' || msg.payload.type === 'close') {
96
+ if (msg.payload.type === 'ready') {
97
+ upstream.send(JSON.stringify({ type: 'ready' }));
98
+ }
99
+ return;
100
+ }
101
+ receivedToolCalls.push(msg.payload.type);
102
+ const response = {
103
+ id: msg.id,
104
+ payload: {
105
+ ...msg.payload,
106
+ output: `mock output for ${msg.payload.type}`,
107
+ },
108
+ };
109
+ upstream.send(JSON.stringify(response));
110
+ });
111
+ // Small delay to ensure upstream WebSocket is fully accepted by the DO
112
+ await new Promise((r) => { setTimeout(r, 1000); });
113
+ // 2. Create MCP SDK client with the appropriate transport
114
+ const transport = (() => {
115
+ if (mode === 'sse') {
116
+ const sseUrl = new URL(`${HTTP_URL}/sse?id=${MCP_ID}&secret=${MCP_SECRET}`);
117
+ return new SSEClientTransport(sseUrl);
118
+ }
119
+ const mcpUrl = new URL(`${HTTP_URL}/mcp?id=${MCP_ID}&secret=${MCP_SECRET}`);
120
+ return new StreamableHTTPClientTransport(mcpUrl);
121
+ })();
122
+ const client = new Client({ name: 'integration-test', version: '1.0.0' });
123
+ await client.connect(transport);
124
+ // 3. List tools — handled entirely inside the DO (no upstream roundtrip needed)
125
+ const { tools } = await client.listTools();
126
+ expect(tools.length).toBeGreaterThan(0);
127
+ const toolNames = tools.map((t) => { return t.name; });
128
+ expect(toolNames).toContain('getProjectXml');
129
+ expect(toolNames).toContain('getNodeXml');
130
+ // 4. Call a tool — full pipeline through the DO to upstream plugin WS
131
+ const result = await client.callTool({ name: 'getProjectXml', arguments: {} });
132
+ const textContent = result.content;
133
+ expect(textContent[0].text).toContain('mock output for getProjectXml');
134
+ expect(receivedToolCalls).toContain('getProjectXml');
135
+ // 5. Call another tool to verify the pipeline works repeatedly
136
+ const result2 = await client.callTool({ name: 'getNodeXml', arguments: { nodeId: 'test-node-123' } });
137
+ const textContent2 = result2.content;
138
+ expect(textContent2[0].text).toContain('mock output for getNodeXml');
139
+ expect(receivedToolCalls).toContain('getNodeXml');
140
+ // Cleanup
141
+ await client.close();
142
+ upstream.close();
143
+ }, 30000);
144
+ });
145
+ }
146
+ //# sourceMappingURL=tunnel-integration.test.js.map
147
+ //# sourceMappingURL=tunnel-integration.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tunnel-integration.test.js","sourceRoot":"","sources":["../../../src/plugin-mcp-dist/lib/tunnel-integration.test.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Vendored upstream-only tunnel DO for Cloudflare Workers with WebSocket hibernation.
3
+ *
4
+ * Extracted from cloudflare-tunnel library — keeps only what McpTunnel uses:
5
+ * - Upstream WebSocket acceptance with hibernation tags
6
+ * - Upstream replacement (close old with 4009)
7
+ * - Ping auto-response (avoids waking DO)
8
+ * - handleTunnelFetch router
9
+ * - addCors helper
10
+ *
11
+ * Dropped: downstream relay, multiplexer, wildcard subscribers, standalone worker export.
12
+ */
13
+ /**
14
+ * Route /_tunnel/* requests to a Tunnel Durable Object.
15
+ * Use in the worker's fetch handler to add tunnel support.
16
+ */
17
+ export declare function handleTunnelFetch({ req, doNamespace }: {
18
+ doNamespace: any;
19
+ req: any;
20
+ }): any;
21
+ /**
22
+ * Upstream-only Tunnel Durable Object.
23
+ *
24
+ * Accepts upstream WebSocket connections with hibernation. Each upstream is
25
+ * tagged as `up:${id}` so it can be looked up by id. Only one upstream per id
26
+ * is allowed — connecting a second closes the first with code 4009.
27
+ *
28
+ * Ping messages are auto-responded without waking the DO:
29
+ * - 'ping' → 'pong'
30
+ * - '{"type":"ping"}' → '{"type":"pong"}'
31
+ */
32
+ export declare class Tunnel {
33
+ ctx: any;
34
+ env: any;
35
+ constructor(state: any, env: any);
36
+ fetch(req: any): Promise<Response>;
37
+ webSocketMessage(_ws: any, _message: any): Promise<void>;
38
+ webSocketClose(_ws: any, _code: any, _reason: any, _wasClean: any): Promise<void>;
39
+ webSocketError(_ws: any, _error: any): Promise<void>;
40
+ closeUpstreamsForId(id: any, { code, reason }: {
41
+ code: any;
42
+ reason: any;
43
+ }): void;
44
+ }
45
+ export declare const addCors: (r: any) => Response;
46
+ //# sourceMappingURL=tunnel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tunnel.d.ts","sourceRoot":"","sources":["../../../src/plugin-mcp-dist/lib/tunnel.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,GAAG,EAAE,WAAW,EAAG;;;CAAA,OAatD;AACD;;;;;;;;;;GAUG;AACH,qBAAa,MAAM;IACf,GAAG,MAAC;IACJ,GAAG,MAAC;IACJ,YAAY,KAAK,KAAA,EAAE,GAAG,KAAA,EAMrB;IACK,KAAK,CAAC,GAAG,KAAA,qBAgCd;IACK,gBAAgB,CAAC,GAAG,KAAA,EAAE,QAAQ,KAAA,iBAEnC;IACK,cAAc,CAAC,GAAG,KAAA,EAAE,KAAK,KAAA,EAAE,OAAO,KAAA,EAAE,SAAS,KAAA,iBAElD;IACK,cAAc,CAAC,GAAG,KAAA,EAAE,MAAM,KAAA,iBAE/B;IACD,mBAAmB,CAAC,EAAE,KAAA,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;;;KAAA,QAQvC;CACJ;AACD,eAAO,MAAM,OAAO,sBAWnB,CAAC"}
@@ -0,0 +1,117 @@
1
+ /**
2
+ * Vendored upstream-only tunnel DO for Cloudflare Workers with WebSocket hibernation.
3
+ *
4
+ * Extracted from cloudflare-tunnel library — keeps only what McpTunnel uses:
5
+ * - Upstream WebSocket acceptance with hibernation tags
6
+ * - Upstream replacement (close old with 4009)
7
+ * - Ping auto-response (avoids waking DO)
8
+ * - handleTunnelFetch router
9
+ * - addCors helper
10
+ *
11
+ * Dropped: downstream relay, multiplexer, wildcard subscribers, standalone worker export.
12
+ */
13
+ /**
14
+ * Route /_tunnel/* requests to a Tunnel Durable Object.
15
+ * Use in the worker's fetch handler to add tunnel support.
16
+ */
17
+ export function handleTunnelFetch({ req, doNamespace, }) {
18
+ const url = new URL(req.url);
19
+ if (!url.pathname.startsWith('/_tunnel/')) {
20
+ return null;
21
+ }
22
+ url.pathname = url.pathname.replace('/_tunnel', '');
23
+ const ids = url.searchParams.getAll('id');
24
+ const doName = ids[0] ?? 'default';
25
+ const doId = doNamespace.idFromName(doName);
26
+ return doNamespace
27
+ .get(doId)
28
+ .fetch(new Request(url.toString(), req))
29
+ .then(addCors);
30
+ }
31
+ /**
32
+ * Upstream-only Tunnel Durable Object.
33
+ *
34
+ * Accepts upstream WebSocket connections with hibernation. Each upstream is
35
+ * tagged as `up:${id}` so it can be looked up by id. Only one upstream per id
36
+ * is allowed — connecting a second closes the first with code 4009.
37
+ *
38
+ * Ping messages are auto-responded without waking the DO:
39
+ * - 'ping' → 'pong'
40
+ * - '{"type":"ping"}' → '{"type":"pong"}'
41
+ */
42
+ export class Tunnel {
43
+ ctx;
44
+ env;
45
+ constructor(state, env) {
46
+ this.ctx = state;
47
+ this.env = env;
48
+ // Only one auto-response pair can be active (second call replaces first).
49
+ // Plugin sends {"type":"ping"} every 5s — must match exactly.
50
+ this.ctx.setWebSocketAutoResponse(new WebSocketRequestResponsePair('{"type":"ping"}', '{"type":"pong"}'));
51
+ }
52
+ async fetch(req) {
53
+ if (req.headers.get('Upgrade') !== 'websocket') {
54
+ return addCors(new Response('Upgrade required', { status: 400 }));
55
+ }
56
+ const url = new URL(req.url);
57
+ const ids = url.searchParams.getAll('id');
58
+ const id = ids[0];
59
+ if (!url.pathname.startsWith('/upstream') || !id) {
60
+ return addCors(new Response('Only upstream connections with id are supported', { status: 400 }));
61
+ }
62
+ this.closeUpstreamsForId(id, { code: 4009, reason: 'Upstream already connected' });
63
+ const connectionOrdinal = this.ctx
64
+ .getWebSockets(`up:${id}`)
65
+ .map((socket) => {
66
+ const attachment = socket.deserializeAttachment();
67
+ return attachment?.connectionOrdinal || 0;
68
+ })
69
+ .reduce((maxOrdinal, ordinal) => {
70
+ return Math.max(maxOrdinal, ordinal);
71
+ }, 0) + 1;
72
+ const pair = new WebSocketPair();
73
+ const [client, server] = Object.values(pair);
74
+ this.ctx.acceptWebSocket(server, [`up:${id}`]);
75
+ server.serializeAttachment({
76
+ role: 'up',
77
+ ids: [id],
78
+ connectionId: crypto.randomUUID(),
79
+ connectionOrdinal,
80
+ connectedAt: Date.now(),
81
+ readyAcked: false,
82
+ });
83
+ return addCors(new Response(null, { status: 101, webSocket: client }));
84
+ }
85
+ async webSocketMessage(_ws, _message) {
86
+ // No relay — McpTunnel overrides this entirely
87
+ }
88
+ async webSocketClose(_ws, _code, _reason, _wasClean) {
89
+ // No downstream notification — McpTunnel overrides this
90
+ }
91
+ async webSocketError(_ws, _error) {
92
+ // No downstream notification — McpTunnel overrides this
93
+ }
94
+ closeUpstreamsForId(id, { code, reason }) {
95
+ const ups = this.ctx.getWebSockets(`up:${id}`);
96
+ for (const up of ups) {
97
+ try {
98
+ up.close(code, reason);
99
+ }
100
+ catch { }
101
+ }
102
+ }
103
+ }
104
+ export const addCors = (r) => {
105
+ const newHeaders = new Headers(r.headers);
106
+ newHeaders.set('Access-Control-Allow-Origin', '*');
107
+ newHeaders.set('Access-Control-Allow-Headers', '*');
108
+ newHeaders.set('Access-Control-Allow-Methods', 'GET,POST,OPTIONS');
109
+ return new Response(r.body, {
110
+ status: r.status,
111
+ statusText: r.statusText,
112
+ headers: newHeaders,
113
+ webSocket: r.webSocket,
114
+ });
115
+ };
116
+ //# sourceMappingURL=tunnel.js.map
117
+ //# sourceMappingURL=tunnel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tunnel.js","sourceRoot":"","sources":["../../../src/plugin-mcp-dist/lib/tunnel.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export declare function getAttachmentConnectionId(attachment: any): any;
2
+ export declare function getAttachmentConnectionOrdinal(attachment: any): any;
3
+ export declare function getAttachmentConnectedAt(attachment: any): any;
4
+ export declare function isAttachmentReadyForRequests(attachment: any): boolean;
5
+ export declare function isSocketUsable(socket: any): boolean;
6
+ export declare function pickActiveUpstreamSocket({ sockets }: {
7
+ sockets: any;
8
+ }): any;
9
+ export declare function matchesPendingRequestSocket({ attachment, pendingRequest }: {
10
+ attachment: any;
11
+ pendingRequest: any;
12
+ }): boolean;
13
+ //# sourceMappingURL=upstream-socket.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upstream-socket.d.ts","sourceRoot":"","sources":["../../../src/plugin-mcp-dist/lib/upstream-socket.js"],"names":[],"mappings":"AAKA,wBAAgB,yBAAyB,CAAC,UAAU,KAAA,OAEnD;AACD,wBAAgB,8BAA8B,CAAC,UAAU,KAAA,OAExD;AACD,wBAAgB,wBAAwB,CAAC,UAAU,KAAA,OAElD;AACD,wBAAgB,4BAA4B,CAAC,UAAU,KAAA,WAEtD;AACD,wBAAgB,cAAc,CAAC,MAAM,KAAA,WAKpC;AACD,wBAAgB,wBAAwB,CAAC,EAAE,OAAO,EAAG;;CAAA,OAiBpD;AACD,wBAAgB,2BAA2B,CAAC,EAAE,UAAU,EAAE,cAAc,EAAG;;;CAAA,WAY1E"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Helper functions for picking the active upstream plugin socket and matching
3
+ * in-flight requests to the socket that sent them.
4
+ */
5
+ const WS_OPEN = 1;
6
+ export function getAttachmentConnectionId(attachment) {
7
+ return attachment?.connectionId || '';
8
+ }
9
+ export function getAttachmentConnectionOrdinal(attachment) {
10
+ return attachment?.connectionOrdinal || 0;
11
+ }
12
+ export function getAttachmentConnectedAt(attachment) {
13
+ return attachment?.connectedAt || 0;
14
+ }
15
+ export function isAttachmentReadyForRequests(attachment) {
16
+ return attachment?.readyAcked !== false;
17
+ }
18
+ export function isSocketUsable(socket) {
19
+ if (typeof socket.readyState === 'undefined') {
20
+ return true;
21
+ }
22
+ return socket.readyState === WS_OPEN;
23
+ }
24
+ export function pickActiveUpstreamSocket({ sockets, }) {
25
+ return sockets
26
+ .filter((socket) => {
27
+ return isSocketUsable(socket);
28
+ })
29
+ .filter((socket) => {
30
+ return isAttachmentReadyForRequests(socket.deserializeAttachment());
31
+ })
32
+ .sort((left, right) => {
33
+ const rightOrdinal = getAttachmentConnectionOrdinal(right.deserializeAttachment());
34
+ const leftOrdinal = getAttachmentConnectionOrdinal(left.deserializeAttachment());
35
+ if (rightOrdinal !== leftOrdinal) {
36
+ return rightOrdinal - leftOrdinal;
37
+ }
38
+ return (getAttachmentConnectedAt(right.deserializeAttachment()) -
39
+ getAttachmentConnectedAt(left.deserializeAttachment()));
40
+ })[0];
41
+ }
42
+ export function matchesPendingRequestSocket({ attachment, pendingRequest, }) {
43
+ const attachmentConnectionId = getAttachmentConnectionId(attachment);
44
+ if (attachmentConnectionId && pendingRequest.upstreamConnectionId) {
45
+ return attachmentConnectionId === pendingRequest.upstreamConnectionId;
46
+ }
47
+ const attachmentConnectionOrdinal = getAttachmentConnectionOrdinal(attachment);
48
+ if (attachmentConnectionOrdinal && pendingRequest.upstreamConnectionOrdinal) {
49
+ return attachmentConnectionOrdinal === pendingRequest.upstreamConnectionOrdinal;
50
+ }
51
+ const attachmentConnectedAt = getAttachmentConnectedAt(attachment);
52
+ const pendingConnectedAt = pendingRequest.upstreamConnectedAt || 0;
53
+ return attachmentConnectedAt === pendingConnectedAt;
54
+ }
55
+ //# sourceMappingURL=upstream-socket.js.map
56
+ //# sourceMappingURL=upstream-socket.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upstream-socket.js","sourceRoot":"","sources":["../../../src/plugin-mcp-dist/lib/upstream-socket.js"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,OAAO,GAAG,CAAC,CAAC;AAClB,MAAM,UAAU,yBAAyB,CAAC,UAAU,EAAE;IAClD,OAAO,UAAU,EAAE,YAAY,IAAI,EAAE,CAAC;AAAA,CACzC;AACD,MAAM,UAAU,8BAA8B,CAAC,UAAU,EAAE;IACvD,OAAO,UAAU,EAAE,iBAAiB,IAAI,CAAC,CAAC;AAAA,CAC7C;AACD,MAAM,UAAU,wBAAwB,CAAC,UAAU,EAAE;IACjD,OAAO,UAAU,EAAE,WAAW,IAAI,CAAC,CAAC;AAAA,CACvC;AACD,MAAM,UAAU,4BAA4B,CAAC,UAAU,EAAE;IACrD,OAAO,UAAU,EAAE,UAAU,KAAK,KAAK,CAAC;AAAA,CAC3C;AACD,MAAM,UAAU,cAAc,CAAC,MAAM,EAAE;IACnC,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,WAAW,EAAE,CAAC;QAC3C,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,MAAM,CAAC,UAAU,KAAK,OAAO,CAAC;AAAA,CACxC;AACD,MAAM,UAAU,wBAAwB,CAAC,EAAE,OAAO,GAAG,EAAE;IACnD,OAAO,OAAO;SACT,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;QACpB,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;IAAA,CACjC,CAAC;SACG,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;QACpB,OAAO,4BAA4B,CAAC,MAAM,CAAC,qBAAqB,EAAE,CAAC,CAAC;IAAA,CACvE,CAAC;SACG,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACvB,MAAM,YAAY,GAAG,8BAA8B,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC;QACnF,MAAM,WAAW,GAAG,8BAA8B,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC;QACjF,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;YAC/B,OAAO,YAAY,GAAG,WAAW,CAAC;QACtC,CAAC;QACD,OAAO,CAAC,wBAAwB,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC;YAC3D,wBAAwB,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;IAAA,CAC/D,CAAC,CAAC,CAAC,CAAC,CAAC;AAAA,CACT;AACD,MAAM,UAAU,2BAA2B,CAAC,EAAE,UAAU,EAAE,cAAc,GAAG,EAAE;IACzE,MAAM,sBAAsB,GAAG,yBAAyB,CAAC,UAAU,CAAC,CAAC;IACrE,IAAI,sBAAsB,IAAI,cAAc,CAAC,oBAAoB,EAAE,CAAC;QAChE,OAAO,sBAAsB,KAAK,cAAc,CAAC,oBAAoB,CAAC;IAC1E,CAAC;IACD,MAAM,2BAA2B,GAAG,8BAA8B,CAAC,UAAU,CAAC,CAAC;IAC/E,IAAI,2BAA2B,IAAI,cAAc,CAAC,yBAAyB,EAAE,CAAC;QAC1E,OAAO,2BAA2B,KAAK,cAAc,CAAC,yBAAyB,CAAC;IACpF,CAAC;IACD,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,UAAU,CAAC,CAAC;IACnE,MAAM,kBAAkB,GAAG,cAAc,CAAC,mBAAmB,IAAI,CAAC,CAAC;IACnE,OAAO,qBAAqB,KAAK,kBAAkB,CAAC;AAAA,CACvD;AACD,2CAA2C"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=upstream-socket.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upstream-socket.test.d.ts","sourceRoot":"","sources":["../../../src/plugin-mcp-dist/lib/upstream-socket.test.js"],"names":[],"mappings":""}