@cgaspard/webappmcp 0.1.5 → 0.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 (40) hide show
  1. package/README.md +43 -9
  2. package/dist/browser.js +159 -22
  3. package/dist/browser.js.map +1 -1
  4. package/dist/browser.min.js +1 -1
  5. package/dist/browser.min.js.map +1 -1
  6. package/dist/client/index.d.ts +4 -0
  7. package/dist/client/index.d.ts.map +1 -1
  8. package/dist/client/index.js +159 -22
  9. package/dist/client/index.js.map +1 -1
  10. package/dist/index.d.ts +1 -1
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.esm.js.map +1 -1
  13. package/dist/index.js.map +1 -1
  14. package/dist/middleware/index.d.ts +49 -0
  15. package/dist/middleware/index.d.ts.map +1 -1
  16. package/dist/middleware/index.js +382 -46
  17. package/dist/middleware/index.js.map +1 -1
  18. package/dist/middleware/mcp-sse-server.d.ts +5 -0
  19. package/dist/middleware/mcp-sse-server.d.ts.map +1 -1
  20. package/dist/middleware/mcp-sse-server.js +77 -54
  21. package/dist/middleware/mcp-sse-server.js.map +1 -1
  22. package/dist/middleware/tools/capture.js +3 -3
  23. package/dist/middleware/tools/capture.js.map +1 -1
  24. package/dist/middleware/tools/dom.js +4 -4
  25. package/dist/middleware/tools/dom.js.map +1 -1
  26. package/dist/middleware/tools/execute.js +1 -1
  27. package/dist/middleware/tools/execute.js.map +1 -1
  28. package/dist/middleware/tools/interaction.js +4 -4
  29. package/dist/middleware/tools/interaction.js.map +1 -1
  30. package/dist/middleware/tools/routing.d.ts +3 -0
  31. package/dist/middleware/tools/routing.d.ts.map +1 -0
  32. package/dist/middleware/tools/routing.js +76 -0
  33. package/dist/middleware/tools/routing.js.map +1 -0
  34. package/dist/middleware/tools/state.d.ts.map +1 -1
  35. package/dist/middleware/tools/state.js +72 -4
  36. package/dist/middleware/tools/state.js.map +1 -1
  37. package/dist/server/tools/state.d.ts.map +1 -1
  38. package/dist/server/tools/state.js +20 -0
  39. package/dist/server/tools/state.js.map +1 -1
  40. package/package.json +3 -2
@@ -1,4 +1,37 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
2
35
  Object.defineProperty(exports, "__esModule", { value: true });
3
36
  exports.IntegratedMCPServer = void 0;
4
37
  exports.webappMCP = webappMCP;
@@ -8,18 +41,28 @@ const uuid_1 = require("uuid");
8
41
  const mcp_server_js_1 = require("./mcp-server.js");
9
42
  const mcp_sse_server_js_1 = require("./mcp-sse-server.js");
10
43
  const mcp_socket_server_js_1 = require("./mcp-socket-server.js");
44
+ const fs = __importStar(require("fs/promises"));
45
+ const path = __importStar(require("path"));
46
+ const os = __importStar(require("os"));
11
47
  function webappMCP(config = {}) {
12
48
  const { wsPort = 4835, wsHost = '0.0.0.0', // Bind to all interfaces by default
49
+ appPort = parseInt(process.env.PORT || '3000'), // Express app port
13
50
  transport = 'sse', // Default to sse transport
14
51
  socketPath = process.env.MCP_SOCKET_PATH || '/tmp/webapp-mcp.sock', authentication = { enabled: false }, permissions = {
15
52
  read: true,
16
53
  write: true,
17
54
  screenshot: true,
18
55
  state: true,
56
+ serverExec: process.env.NODE_ENV !== 'production', // Disabled in production by default
19
57
  }, cors: corsOptions = {
20
58
  origin: '*',
21
59
  credentials: true,
22
60
  }, mcpEndpointPath = '/mcp/sse', debug = false, // Default to no debug logging
61
+ plugins = [], // Default to no plugins
62
+ screenshotDir = '.webappmcp/screenshots', // Default screenshot directory
63
+ captureServerLogs = true, // Default to capturing server logs
64
+ serverLogLimit = 1000, // Default limit for server logs
65
+ serverTools = process.env.NODE_ENV !== 'production', // Disabled in production by default
23
66
  } = config;
24
67
  // Logger helper that respects debug setting
25
68
  const log = (...args) => {
@@ -34,6 +77,49 @@ function webappMCP(config = {}) {
34
77
  const clients = new Map();
35
78
  let wss = null;
36
79
  let mcpSSEServer = null;
80
+ // Server console log storage
81
+ const serverLogs = [];
82
+ // Setup server console interception if enabled
83
+ if (captureServerLogs) {
84
+ const originalConsole = {
85
+ log: console.log,
86
+ info: console.info,
87
+ warn: console.warn,
88
+ error: console.error,
89
+ };
90
+ const interceptor = (level, originalMethod) => {
91
+ return (...args) => {
92
+ // Don't capture our own webappmcp logs to avoid infinite loops
93
+ const isOwnLog = args.length > 0 && args[0] === '[webappmcp]';
94
+ if (!isOwnLog) {
95
+ serverLogs.push({
96
+ level,
97
+ timestamp: new Date().toISOString(),
98
+ args: args.map((arg) => {
99
+ try {
100
+ return typeof arg === 'object' ? JSON.stringify(arg) : String(arg);
101
+ }
102
+ catch {
103
+ return String(arg);
104
+ }
105
+ }),
106
+ });
107
+ // Maintain circular buffer
108
+ if (serverLogs.length > serverLogLimit) {
109
+ serverLogs.shift();
110
+ }
111
+ }
112
+ // Call original method
113
+ originalMethod.apply(console, args);
114
+ };
115
+ };
116
+ console.log = interceptor('log', originalConsole.log);
117
+ console.info = interceptor('info', originalConsole.info);
118
+ console.warn = interceptor('warn', originalConsole.warn);
119
+ console.error = interceptor('error', originalConsole.error);
120
+ }
121
+ // Store reference to execute tools
122
+ let executeToolFunction = null;
37
123
  // Create WebSocket server immediately, not in middleware
38
124
  const server = (0, http_1.createServer)();
39
125
  wss = new ws_1.WebSocketServer({ server });
@@ -85,6 +171,24 @@ function webappMCP(config = {}) {
85
171
  clientId,
86
172
  permissions,
87
173
  }));
174
+ // Send plugin extensions to the client
175
+ for (const plugin of plugins) {
176
+ if (plugin.clientExtensions) {
177
+ for (const extension of plugin.clientExtensions) {
178
+ if (extension.timing === 'onConnect' || !extension.timing) {
179
+ log(`Sending client extension from plugin ${plugin.name} to client ${clientId}`);
180
+ ws.send(JSON.stringify({
181
+ type: 'plugin_extension',
182
+ extension: {
183
+ pluginName: plugin.name,
184
+ code: extension.code,
185
+ dependencies: extension.dependencies,
186
+ },
187
+ }));
188
+ }
189
+ }
190
+ }
191
+ }
88
192
  });
89
193
  // Start the WebSocket server if not already listening
90
194
  if (!isListening) {
@@ -125,6 +229,14 @@ function webappMCP(config = {}) {
125
229
  }));
126
230
  },
127
231
  executeTool: executeToolFunction || undefined,
232
+ plugins: plugins,
233
+ getServerLogs: captureServerLogs ? (level, limit) => {
234
+ let logs = serverLogs;
235
+ if (level && level !== 'all') {
236
+ logs = logs.filter((log) => log.level === level);
237
+ }
238
+ return logs.slice(-(limit || 100));
239
+ } : undefined,
128
240
  });
129
241
  try {
130
242
  log('Calling mcpSSEServer.initialize()...');
@@ -133,6 +245,17 @@ function webappMCP(config = {}) {
133
245
  log(`✅ SSE endpoint registered at: ${mcpEndpointPath}`);
134
246
  log(`✅ MCPSSEServer instance created: ${mcpSSEServer ? 'Yes' : 'No'}`);
135
247
  log('✅ Ready to accept MCP connections');
248
+ // Display the MCP URL with configured port
249
+ const displayHost = wsHost === '0.0.0.0' ? 'localhost' : wsHost;
250
+ console.log('\n' + '='.repeat(60));
251
+ console.log('🚀 MCP Server SSE Interface Ready!');
252
+ console.log('='.repeat(60));
253
+ console.log(`📡 Add this URL to your AI tool's MCP configuration:`);
254
+ console.log(` http://${displayHost}:${appPort}${mcpEndpointPath}`);
255
+ console.log('');
256
+ console.log(` Note: If your Express app runs on a different port,`);
257
+ console.log(` update the URL or set appPort in the config.`);
258
+ console.log('='.repeat(60) + '\n');
136
259
  }
137
260
  catch (error) {
138
261
  logError('❌ Failed to initialize MCP SSE server:', error);
@@ -175,54 +298,259 @@ function webappMCP(config = {}) {
175
298
  }
176
299
  });
177
300
  }
178
- // Store reference to execute tools
179
- let executeToolFunction = null;
180
301
  // Always set up tool execution for integrated MCP servers
181
- {
182
- executeToolFunction = async (toolName, args, clientId) => {
183
- let targetClient;
184
- if (clientId) {
185
- // Use specific client if provided
186
- targetClient = clients.get(clientId);
187
- if (!targetClient) {
188
- throw new Error(`Client ${clientId} not found`);
189
- }
190
- }
191
- else {
192
- // Find first browser client (not MCP server)
193
- targetClient = Array.from(clients.values()).find(client => client.url && client.url !== 'mcp-server');
194
- if (!targetClient) {
195
- throw new Error('No browser client connected. Please open the webapp in a browser.');
196
- }
197
- }
302
+ executeToolFunction = async (toolName, args, clientId) => {
303
+ // Handle server-side tools first (no client connection needed)
304
+ if (['console_get_server_logs', 'server_execute_js', 'server_get_system_info', 'server_get_env'].includes(toolName)) {
198
305
  return new Promise((resolve, reject) => {
199
- const requestId = (0, uuid_1.v4)();
306
+ // These tools are handled directly in the server-side logic below
200
307
  const timeout = setTimeout(() => {
201
308
  reject(new Error('Tool execution timeout'));
202
309
  }, 30000);
203
- const messageHandler = (data) => {
204
- const message = JSON.parse(data.toString());
205
- if (message.requestId === requestId) {
206
- clearTimeout(timeout);
207
- targetClient.ws.off('message', messageHandler);
208
- if (message.error) {
209
- reject(new Error(message.error));
310
+ // Handle server-side tools that don't require client connection
311
+ if (toolName === 'console_get_server_logs') {
312
+ clearTimeout(timeout);
313
+ const { level = 'all', limit = 100 } = args;
314
+ let logs = serverLogs;
315
+ if (level !== 'all') {
316
+ logs = logs.filter((log) => log.level === level);
317
+ }
318
+ resolve({ logs: logs.slice(-limit) });
319
+ return;
320
+ }
321
+ // Handle server_execute_js tool
322
+ if (toolName === 'server_execute_js') {
323
+ clearTimeout(timeout);
324
+ if (!serverTools || !permissions.serverExec) {
325
+ reject(new Error('Server-side JavaScript execution is disabled. Enable serverTools and permissions.serverExec in config.'));
326
+ return;
327
+ }
328
+ const { code, timeout: execTimeout = 5000 } = args;
329
+ try {
330
+ // Create a sandboxed context with limited globals
331
+ const vm = require('vm');
332
+ const sandbox = {
333
+ console,
334
+ process: {
335
+ version: process.version,
336
+ platform: process.platform,
337
+ arch: process.arch,
338
+ uptime: process.uptime,
339
+ memoryUsage: process.memoryUsage,
340
+ cpuUsage: process.cpuUsage,
341
+ },
342
+ require: (module) => {
343
+ // Only allow specific safe modules
344
+ const allowedModules = ['os', 'path', 'url', 'querystring', 'util'];
345
+ if (allowedModules.includes(module)) {
346
+ return require(module);
347
+ }
348
+ throw new Error(`Module '${module}' is not allowed`);
349
+ },
350
+ __dirname: process.cwd(),
351
+ Date,
352
+ Math,
353
+ JSON,
354
+ parseInt,
355
+ parseFloat,
356
+ Buffer,
357
+ };
358
+ const script = new vm.Script(code);
359
+ const result = script.runInNewContext(sandbox, {
360
+ timeout: execTimeout,
361
+ displayErrors: true,
362
+ });
363
+ resolve({ result: result !== undefined ? result : 'Code executed successfully', executionTime: Date.now() });
364
+ }
365
+ catch (error) {
366
+ reject(new Error(`Execution error: ${error instanceof Error ? error.message : 'Unknown error'}`));
367
+ }
368
+ return;
369
+ }
370
+ // Handle server_get_system_info tool
371
+ if (toolName === 'server_get_system_info') {
372
+ clearTimeout(timeout);
373
+ if (!serverTools) {
374
+ reject(new Error('Server tools are disabled. Enable serverTools in config.'));
375
+ return;
376
+ }
377
+ const memUsage = process.memoryUsage();
378
+ const cpuUsage = process.cpuUsage();
379
+ resolve({
380
+ process: {
381
+ pid: process.pid,
382
+ version: process.version,
383
+ platform: process.platform,
384
+ arch: process.arch,
385
+ uptime: process.uptime(),
386
+ cwd: process.cwd(),
387
+ },
388
+ memory: {
389
+ rss: `${(memUsage.rss / 1024 / 1024).toFixed(2)} MB`,
390
+ heapTotal: `${(memUsage.heapTotal / 1024 / 1024).toFixed(2)} MB`,
391
+ heapUsed: `${(memUsage.heapUsed / 1024 / 1024).toFixed(2)} MB`,
392
+ external: `${(memUsage.external / 1024 / 1024).toFixed(2)} MB`,
393
+ },
394
+ cpu: {
395
+ user: `${(cpuUsage.user / 1000000).toFixed(2)}s`,
396
+ system: `${(cpuUsage.system / 1000000).toFixed(2)}s`,
397
+ },
398
+ os: {
399
+ hostname: os.hostname(),
400
+ type: os.type(),
401
+ release: os.release(),
402
+ totalMemory: `${(os.totalmem() / 1024 / 1024 / 1024).toFixed(2)} GB`,
403
+ freeMemory: `${(os.freemem() / 1024 / 1024 / 1024).toFixed(2)} GB`,
404
+ loadAverage: os.loadavg(),
405
+ cpus: os.cpus().length,
406
+ },
407
+ });
408
+ return;
409
+ }
410
+ // Handle server_get_env tool
411
+ if (toolName === 'server_get_env') {
412
+ clearTimeout(timeout);
413
+ if (!serverTools) {
414
+ reject(new Error('Server tools are disabled. Enable serverTools in config.'));
415
+ return;
416
+ }
417
+ const { filter = [], showAll = false } = args;
418
+ // Sensitive patterns to mask
419
+ const sensitivePatterns = [
420
+ /key/i, /secret/i, /password/i, /token/i, /auth/i,
421
+ /credential/i, /private/i, /api/i
422
+ ];
423
+ const maskValue = (key, value) => {
424
+ if (sensitivePatterns.some(pattern => pattern.test(key))) {
425
+ return value.substring(0, 3) + '*'.repeat(Math.max(0, value.length - 3));
426
+ }
427
+ return value;
428
+ };
429
+ let envVars = {};
430
+ if (filter.length > 0) {
431
+ // Return only requested variables
432
+ filter.forEach((key) => {
433
+ if (process.env[key] !== undefined) {
434
+ envVars[key] = maskValue(key, process.env[key]);
435
+ }
436
+ });
437
+ }
438
+ else if (showAll) {
439
+ // Return all non-sensitive variables
440
+ Object.entries(process.env).forEach(([key, value]) => {
441
+ if (value !== undefined) {
442
+ envVars[key] = maskValue(key, value);
443
+ }
444
+ });
445
+ }
446
+ else {
447
+ // Return a safe subset
448
+ const safeKeys = ['NODE_ENV', 'PORT', 'HOST', 'NODE_VERSION', 'npm_package_name', 'npm_package_version'];
449
+ safeKeys.forEach(key => {
450
+ if (process.env[key] !== undefined) {
451
+ envVars[key] = process.env[key];
452
+ }
453
+ });
454
+ }
455
+ resolve({ env: envVars });
456
+ return;
457
+ }
458
+ });
459
+ }
460
+ // For client-side tools, proceed with browser client connection logic
461
+ let targetClient;
462
+ if (clientId) {
463
+ // Use specific client if provided
464
+ targetClient = clients.get(clientId);
465
+ if (!targetClient) {
466
+ throw new Error(`Client ${clientId} not found`);
467
+ }
468
+ }
469
+ else {
470
+ // Find first browser client (not MCP server)
471
+ targetClient = Array.from(clients.values()).find(client => client.url && client.url !== 'mcp-server');
472
+ if (!targetClient) {
473
+ throw new Error('No browser client connected. Please open the webapp in a browser.');
474
+ }
475
+ }
476
+ return new Promise((resolve, reject) => {
477
+ const requestId = (0, uuid_1.v4)();
478
+ const timeout = setTimeout(() => {
479
+ reject(new Error('Tool execution timeout'));
480
+ }, 30000);
481
+ const messageHandler = (data) => {
482
+ const message = JSON.parse(data.toString());
483
+ if (message.requestId === requestId) {
484
+ clearTimeout(timeout);
485
+ targetClient.ws.off('message', messageHandler);
486
+ if (message.error) {
487
+ reject(new Error(message.error));
488
+ }
489
+ else {
490
+ // Handle screenshot tools specially - save to file
491
+ if (toolName === 'capture_screenshot' || toolName === 'capture_element_screenshot') {
492
+ const saveScreenshot = async () => {
493
+ try {
494
+ const result = message.result;
495
+ if (result && result.dataUrl) {
496
+ // Extract base64 data from data URL
497
+ const matches = result.dataUrl.match(/^data:image\/(\w+);base64,(.+)$/);
498
+ if (matches) {
499
+ const format = matches[1];
500
+ const base64Data = matches[2];
501
+ // Determine screenshot directory
502
+ const screenshotsPath = path.isAbsolute(screenshotDir)
503
+ ? screenshotDir
504
+ : path.join(process.cwd(), screenshotDir);
505
+ // Create screenshots directory
506
+ await fs.mkdir(screenshotsPath, { recursive: true });
507
+ // Generate filename with timestamp and random suffix
508
+ const timestamp = new Date().toISOString().replace(/[:.]/g, '-');
509
+ const randomSuffix = Math.random().toString(36).substring(2, 8);
510
+ const filename = `screenshot-${timestamp}-${randomSuffix}.${format}`;
511
+ const filepath = path.join(screenshotsPath, filename);
512
+ // Write file
513
+ await fs.writeFile(filepath, Buffer.from(base64Data, 'base64'));
514
+ log(`Screenshot saved to: ${filepath}`);
515
+ // Return path instead of data URL
516
+ resolve({
517
+ ...result,
518
+ path: filepath,
519
+ filename: filename,
520
+ directory: screenshotsPath,
521
+ dataUrl: undefined // Remove dataUrl from response
522
+ });
523
+ }
524
+ else {
525
+ resolve(result);
526
+ }
527
+ }
528
+ else {
529
+ resolve(result);
530
+ }
531
+ }
532
+ catch (error) {
533
+ log('Error saving screenshot:', error);
534
+ resolve(message.result); // Fall back to original result
535
+ }
536
+ };
537
+ saveScreenshot();
210
538
  }
211
539
  else {
212
540
  resolve(message.result);
213
541
  }
214
542
  }
215
- };
216
- targetClient.ws.on('message', messageHandler);
217
- targetClient.ws.send(JSON.stringify({
218
- type: 'execute_tool',
219
- requestId,
220
- tool: toolName,
221
- args,
222
- }));
223
- });
224
- };
225
- }
543
+ }
544
+ };
545
+ targetClient.ws.on('message', messageHandler);
546
+ targetClient.ws.send(JSON.stringify({
547
+ type: 'execute_tool',
548
+ requestId,
549
+ tool: toolName,
550
+ args,
551
+ }));
552
+ });
553
+ };
226
554
  return (req, res, next) => {
227
555
  if (req.path === '/__webappmcp/status') {
228
556
  return res.json({
@@ -243,23 +571,18 @@ function webappMCP(config = {}) {
243
571
  }
244
572
  // MCP SSE endpoint
245
573
  if (req.path === mcpEndpointPath) {
246
- log(`[Middleware] ======= MCP SSE ENDPOINT HIT =======`);
247
574
  log(`[Middleware] Request to MCP SSE endpoint: ${req.method} ${req.path}`);
248
- log(`[Middleware] Expected endpoint path: ${mcpEndpointPath}`);
249
- log(`[Middleware] Transport mode: ${transport}`);
250
- log(`[Middleware] SSE Server initialized: ${mcpSSEServer ? 'Yes' : 'No'}`);
251
- log(`[Middleware] SSE Server type: ${typeof mcpSSEServer}`);
252
575
  if (!mcpSSEServer) {
253
576
  log(`[Middleware] ERROR: MCP SSE server not initialized`);
254
577
  return res.status(503).json({ error: 'MCP SSE server not initialized' });
255
578
  }
256
- log(`[Middleware] Forwarding request to SSE server handleSSERequest method`);
257
579
  return mcpSSEServer.handleSSERequest(req, res);
258
580
  }
259
581
  // HTTP API for MCP tools
260
582
  if (req.path.startsWith('/__webappmcp/tools/') && req.method === 'POST') {
261
583
  const toolName = req.path.replace('/__webappmcp/tools/', '');
262
- const { clientId, ...args } = req.body;
584
+ const body = req.body || {};
585
+ const { clientId, ...args } = body;
263
586
  if (!executeToolFunction) {
264
587
  return res.status(503).json({ error: 'MCP server not available' });
265
588
  }
@@ -277,6 +600,15 @@ function webappMCP(config = {}) {
277
600
  });
278
601
  return;
279
602
  }
603
+ // Get server logs endpoint
604
+ if (req.path === '/__webappmcp/server-logs' && req.method === 'GET') {
605
+ const { level = 'all', limit = 100 } = req.query;
606
+ let logs = serverLogs;
607
+ if (level !== 'all') {
608
+ logs = logs.filter((log) => log.level === level);
609
+ }
610
+ return res.json({ logs: logs.slice(-Number(limit)) });
611
+ }
280
612
  // List available tools
281
613
  if (req.path === '/__webappmcp/tools' && req.method === 'GET') {
282
614
  const tools = [
@@ -291,7 +623,11 @@ function webappMCP(config = {}) {
291
623
  'capture_element_screenshot',
292
624
  'state_get_variable',
293
625
  'state_local_storage',
294
- 'console_get_logs'
626
+ 'console_get_logs',
627
+ 'console_get_server_logs',
628
+ 'server_execute_js',
629
+ 'server_get_system_info',
630
+ 'server_get_env'
295
631
  ];
296
632
  return res.json({ tools });
297
633
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/middleware/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/middleware/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { Request, Response } from 'express';
2
+ import { WebAppMCPPlugin } from './index.js';
2
3
  export interface MCPSSEConfig {
3
4
  getClients?: () => Array<{
4
5
  id: string;
@@ -8,12 +9,16 @@ export interface MCPSSEConfig {
8
9
  }>;
9
10
  executeTool?: (toolName: string, args: any) => Promise<any>;
10
11
  debug?: boolean;
12
+ plugins?: WebAppMCPPlugin[];
13
+ getServerLogs?: (level?: string, limit?: number) => any[];
11
14
  }
12
15
  export declare class MCPSSEServer {
13
16
  private sseTransports;
14
17
  private getClients?;
15
18
  private executeTool?;
16
19
  private debug;
20
+ private plugins;
21
+ private getServerLogs?;
17
22
  constructor(config: MCPSSEConfig);
18
23
  private log;
19
24
  private logError;
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-sse-server.d.ts","sourceRoot":"","sources":["../../src/middleware/mcp-sse-server.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE5C,MAAM,WAAW,YAAY;IAC3B,UAAU,CAAC,EAAE,MAAM,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,IAAI,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvF,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IAC5D,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,aAAa,CAAyC;IAC9D,OAAO,CAAC,UAAU,CAAC,CAA4E;IAC/F,OAAO,CAAC,WAAW,CAAC,CAAgD;IACpE,OAAO,CAAC,KAAK,CAAU;gBAEX,MAAM,EAAE,YAAY;IAMhC,OAAO,CAAC,GAAG;IAMX,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,YAAY;IAyFd,UAAU;IAYV,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ;CAoHnD"}
1
+ {"version":3,"file":"mcp-sse-server.d.ts","sourceRoot":"","sources":["../../src/middleware/mcp-sse-server.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAiB,MAAM,YAAY,CAAC;AAE5D,MAAM,WAAW,YAAY;IAC3B,UAAU,CAAC,EAAE,MAAM,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,IAAI,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvF,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IAC5D,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,GAAG,EAAE,CAAC;CAC3D;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,aAAa,CAAyC;IAC9D,OAAO,CAAC,UAAU,CAAC,CAA4E;IAC/F,OAAO,CAAC,WAAW,CAAC,CAAgD;IACpE,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,aAAa,CAAC,CAA4C;gBAEtD,MAAM,EAAE,YAAY;IAQhC,OAAO,CAAC,GAAG;IAMX,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,YAAY;IAuKd,UAAU;IAYV,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ;CAyDnD"}