mcp-accessibility-scanner 3.0.0 → 3.1.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 (59) hide show
  1. package/README.md +232 -7
  2. package/lib/browserContextFactory.js +645 -32
  3. package/lib/browserContextFactory.js.map +1 -1
  4. package/lib/browserServerBackend.js +8 -2
  5. package/lib/browserServerBackend.js.map +1 -1
  6. package/lib/context.js +179 -62
  7. package/lib/context.js.map +1 -1
  8. package/lib/extension/extensionContextFactory.js +3 -0
  9. package/lib/extension/extensionContextFactory.js.map +1 -1
  10. package/lib/mcp/proxyBackend.js +1 -0
  11. package/lib/mcp/proxyBackend.js.map +1 -1
  12. package/lib/networkPolicy.js +73 -0
  13. package/lib/networkPolicy.js.map +1 -0
  14. package/lib/program.js +21 -3
  15. package/lib/program.js.map +1 -1
  16. package/lib/response.js +8 -3
  17. package/lib/response.js.map +1 -1
  18. package/lib/tab.js +117 -16
  19. package/lib/tab.js.map +1 -1
  20. package/lib/tools/auditKeyboard.js +203 -0
  21. package/lib/tools/auditKeyboard.js.map +1 -1
  22. package/lib/tools/auditScreenReader.js +826 -0
  23. package/lib/tools/auditScreenReader.js.map +1 -0
  24. package/lib/tools/auditSite.js +267 -86
  25. package/lib/tools/auditSite.js.map +1 -1
  26. package/lib/tools/axe.js +479 -21
  27. package/lib/tools/axe.js.map +1 -1
  28. package/lib/tools/dialogs.js +18 -4
  29. package/lib/tools/dialogs.js.map +1 -1
  30. package/lib/tools/evaluate.js +34 -5
  31. package/lib/tools/evaluate.js.map +1 -1
  32. package/lib/tools/keyboard.js +1 -2
  33. package/lib/tools/keyboard.js.map +1 -1
  34. package/lib/tools/navigate.js +2 -1
  35. package/lib/tools/navigate.js.map +1 -1
  36. package/lib/tools/network.js +225 -8
  37. package/lib/tools/network.js.map +1 -1
  38. package/lib/tools/scanPageMatrix.js +134 -43
  39. package/lib/tools/scanPageMatrix.js.map +1 -1
  40. package/lib/tools/screenshot.js +3 -3
  41. package/lib/tools/screenshot.js.map +1 -1
  42. package/lib/tools/snapshot.js +269 -8
  43. package/lib/tools/snapshot.js.map +1 -1
  44. package/lib/tools/tool.js.map +1 -1
  45. package/lib/tools/utils.js +62 -6
  46. package/lib/tools/utils.js.map +1 -1
  47. package/lib/tools.js +5 -2
  48. package/lib/tools.js.map +1 -1
  49. package/lib/utils/dataUrl.js +58 -35
  50. package/lib/utils/dataUrl.js.map +1 -1
  51. package/lib/utils/jsSource.js +187 -0
  52. package/lib/utils/jsSource.js.map +1 -0
  53. package/lib/vscode/browserContextFactory.js +83 -0
  54. package/lib/vscode/browserContextFactory.js.map +1 -0
  55. package/lib/vscode/host.js +16 -1
  56. package/lib/vscode/host.js.map +1 -1
  57. package/lib/vscode/main.js +1 -33
  58. package/lib/vscode/main.js.map +1 -1
  59. package/package.json +6 -4
@@ -1 +1 @@
1
- {"version":3,"file":"browserContextFactory.js","sourceRoot":"","sources":["../src/browserContextFactory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browserContextFactory.js","sourceRoot":"","sources":["../src/browserContextFactory.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,10 @@ import { filteredTools } from './tools.js';
24
24
  import { toMcpTool } from './mcp/tool.js';
25
25
  export class BrowserServerBackend {
26
26
  _tools;
27
+ _toolsByName;
28
+ // Converting the zod schemas to JSON schema costs a few milliseconds for the
29
+ // whole set and never changes, so it is done once per server.
30
+ _mcpTools;
27
31
  _context;
28
32
  _sessionLog;
29
33
  _config;
@@ -32,6 +36,7 @@ export class BrowserServerBackend {
32
36
  this._config = config;
33
37
  this._browserContextFactory = factory;
34
38
  this._tools = filteredTools(config);
39
+ this._toolsByName = new Map(this._tools.map(tool => [tool.schema.name, tool]));
35
40
  }
36
41
  async initialize(_context, clientVersion, roots) {
37
42
  let rootPath;
@@ -50,10 +55,11 @@ export class BrowserServerBackend {
50
55
  });
51
56
  }
52
57
  async listTools() {
53
- return this._tools.map(tool => toMcpTool(tool.schema));
58
+ this._mcpTools ??= this._tools.map(tool => toMcpTool(tool.schema));
59
+ return this._mcpTools;
54
60
  }
55
61
  async callTool(name, rawArguments, requestContext) {
56
- const tool = this._tools.find(tool => tool.schema.name === name);
62
+ const tool = this._toolsByName.get(name);
57
63
  if (!tool)
58
64
  throw new McpError(ErrorCode.InvalidParams, `Tool "${name}" not found`);
59
65
  let parsedArguments;
@@ -1 +1 @@
1
- {"version":3,"file":"browserServerBackend.js","sourceRoot":"","sources":["../src/browserServerBackend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browserServerBackend.js","sourceRoot":"","sources":["../src/browserServerBackend.ts"],"names":[],"mappings":"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"}
package/lib/context.js CHANGED
@@ -17,6 +17,7 @@ import debug from 'debug';
17
17
  import { logUnhandledError } from './utils/log.js';
18
18
  import { Tab } from './tab.js';
19
19
  import { outputFile } from './config.js';
20
+ import { ensureNetworkPolicyRoutes } from './networkPolicy.js';
20
21
  const testDebug = debug('pw:mcp:test');
21
22
  class ContextRegistry {
22
23
  _contexts = new Set();
@@ -31,6 +32,42 @@ class ContextRegistry {
31
32
  }
32
33
  }
33
34
  const contextRegistry = new ContextRegistry();
35
+ const traceHubs = new WeakMap();
36
+ async function acquireTrace(browserContext) {
37
+ let hub = traceHubs.get(browserContext);
38
+ if (!hub) {
39
+ const created = {
40
+ users: 0,
41
+ ready: browserContext.tracing.start({
42
+ name: 'trace',
43
+ screenshots: false,
44
+ snapshots: true,
45
+ sources: false,
46
+ }),
47
+ };
48
+ traceHubs.set(browserContext, created);
49
+ created.ready.catch(() => {
50
+ if (traceHubs.get(browserContext) === created)
51
+ traceHubs.delete(browserContext);
52
+ });
53
+ hub = created;
54
+ }
55
+ hub.users++;
56
+ try {
57
+ await hub.ready;
58
+ }
59
+ catch (error) {
60
+ hub.users--;
61
+ throw error;
62
+ }
63
+ }
64
+ async function releaseTrace(browserContext) {
65
+ const hub = traceHubs.get(browserContext);
66
+ if (!hub || --hub.users)
67
+ return;
68
+ traceHubs.delete(browserContext);
69
+ await browserContext.tracing.stop();
70
+ }
34
71
  export class Context {
35
72
  tools;
36
73
  config;
@@ -44,6 +81,8 @@ export class Context {
44
81
  _closeBrowserContextPromise;
45
82
  _runningToolName;
46
83
  _abortController = new AbortController();
84
+ _removePageObserver;
85
+ _inputRecorder;
47
86
  constructor(options) {
48
87
  this.tools = options.tools;
49
88
  this.config = options.config;
@@ -63,6 +102,14 @@ export class Context {
63
102
  currentTab() {
64
103
  return this._currentTab;
65
104
  }
105
+ // Resolves within this session's own wrappers: on a shared (non-isolated
106
+ // CDP) context, several sessions wrap the same page, and an event belongs
107
+ // to whichever session is asking — a global page→tab map would hand every
108
+ // session the last writer's wrapper and lose the entry when that session
109
+ // closes.
110
+ tabForPage(page) {
111
+ return this._tabs.find(tab => tab.page === page);
112
+ }
66
113
  currentTabOrDie() {
67
114
  if (!this._currentTab)
68
115
  throw new Error('No open pages available. Use the "browser_navigate" tool to navigate to a page first.');
@@ -134,9 +181,26 @@ export class Context {
134
181
  const promise = this._browserContextPromise;
135
182
  this._browserContextPromise = undefined;
136
183
  await promise.then(async ({ browserContext, close }) => {
137
- if (this.config.saveTrace)
138
- await browserContext.tracing.stop();
139
- await close();
184
+ this._detachFromBrowserContext();
185
+ // close() is the factory's only cleanup hook — for storage-state
186
+ // sessions it also removes the disposable profile — and this close
187
+ // attempt is the only one (_browserContextPromise is already cleared),
188
+ // so a failing trace stop must not skip it.
189
+ try {
190
+ if (this.config.saveTrace)
191
+ await releaseTrace(browserContext);
192
+ }
193
+ catch (error) {
194
+ // The symmetric race to the tolerated "already started" on setup: on
195
+ // a shared context the sibling that closed first already stopped the
196
+ // one recording, which is an expected shutdown, not an error worth
197
+ // logging. Anything else still surfaces.
198
+ if (!(error instanceof Error && /already stopped|Must start tracing before stopping/i.test(error.message)))
199
+ throw error;
200
+ }
201
+ finally {
202
+ await close();
203
+ }
140
204
  });
141
205
  }
142
206
  async dispose() {
@@ -145,15 +209,21 @@ export class Context {
145
209
  contextRegistry.unregister(this);
146
210
  }
147
211
  async _setupRequestInterception(context) {
148
- if (this.config.network?.allowedOrigins?.length) {
149
- await context.route('**', route => route.abort('blockedbyclient'));
150
- for (const origin of this.config.network.allowedOrigins)
151
- await context.route(`*://${origin}/**`, route => route.continue());
152
- }
153
- if (this.config.network?.blockedOrigins?.length) {
154
- for (const origin of this.config.network.blockedOrigins)
155
- await context.route(`*://${origin}/**`, route => route.abort('blockedbyclient'));
156
- }
212
+ await ensureNetworkPolicyRoutes(this.config, context);
213
+ }
214
+ // The browser context can outlive this session (non-isolated CDP siblings
215
+ // share it), so the session's observers must not: a leftover 'page'
216
+ // listener would keep creating tabs inside a disposed Context, and the tab
217
+ // wrappers' own page listeners would pile up with session churn.
218
+ _detachFromBrowserContext() {
219
+ this._removePageObserver?.();
220
+ this._removePageObserver = undefined;
221
+ this._inputRecorder?.dispose();
222
+ this._inputRecorder = undefined;
223
+ for (const tab of this._tabs)
224
+ tab.dispose();
225
+ this._tabs = [];
226
+ this._currentTab = undefined;
157
227
  }
158
228
  _ensureBrowserContext() {
159
229
  if (!this._browserContextPromise) {
@@ -169,24 +239,34 @@ export class Context {
169
239
  throw new Error('Another browser context is being closed.');
170
240
  // TODO: move to the browser context factory to make it based on isolation mode.
171
241
  const result = await this._browserContextFactory.createContext(this._clientInfo, this._abortController.signal, this._runningToolName);
172
- const { browserContext } = result;
173
- await this._setupRequestInterception(browserContext);
174
- if (this.sessionLog)
175
- await InputRecorder.create(this, browserContext);
176
- for (const page of browserContext.pages())
177
- this._onPageCreated(page);
178
- browserContext.on('page', page => this._onPageCreated(page));
179
- if (this.config.saveTrace) {
180
- await browserContext.tracing.start({
181
- name: 'trace',
182
- screenshots: false,
183
- snapshots: true,
184
- sources: false,
185
- });
242
+ // The factory handed ownership over with close(); a setup failure past
243
+ // this point would otherwise discard that callback with the browser still
244
+ // running — and, for storage-state sessions, the disposable profile
245
+ // pinned forever.
246
+ try {
247
+ const { browserContext } = result;
248
+ await this._setupRequestInterception(browserContext);
249
+ if (this.sessionLog)
250
+ this._inputRecorder = await InputRecorder.create(this, browserContext);
251
+ for (const page of browserContext.pages())
252
+ this._onPageCreated(page);
253
+ const onPage = (page) => this._onPageCreated(page);
254
+ browserContext.on('page', onPage);
255
+ this._removePageObserver = () => browserContext.off('page', onPage);
256
+ if (this.config.saveTrace)
257
+ await acquireTrace(browserContext);
258
+ }
259
+ catch (error) {
260
+ // The shared context may survive this close (siblings hold it), so the
261
+ // observers registered above must come off explicitly.
262
+ this._detachFromBrowserContext();
263
+ await result.close().catch(() => { });
264
+ throw error;
186
265
  }
187
266
  return result;
188
267
  }
189
268
  }
269
+ const recorderHubs = new WeakMap();
190
270
  export class InputRecorder {
191
271
  _context;
192
272
  _browserContext;
@@ -196,44 +276,81 @@ export class InputRecorder {
196
276
  }
197
277
  static async create(context, browserContext) {
198
278
  const recorder = new InputRecorder(context, browserContext);
199
- await recorder._initialize();
279
+ let hub = recorderHubs.get(browserContext);
280
+ if (!hub) {
281
+ const recorders = new Set();
282
+ const dispatch = (handle) => {
283
+ // A tool call drives the page through Playwright, and the recorder
284
+ // cannot attribute a DOM event to the session that caused it — so
285
+ // while any session sharing this context runs a tool, the events are
286
+ // automation for every session's log, not user actions. (A real user
287
+ // action racing a sibling's tool call is suppressed with them — the
288
+ // same trade-off a single session already accepts for its own runs.)
289
+ for (const registered of recorders) {
290
+ if (registered._context.isRunningTool())
291
+ return;
292
+ }
293
+ for (const registered of recorders)
294
+ handle(registered);
295
+ };
296
+ const created = {
297
+ recorders,
298
+ ready: browserContext._enableRecorder({
299
+ mode: 'recording',
300
+ recorderMode: 'api',
301
+ }, {
302
+ actionAdded: (page, data, code) => {
303
+ dispatch(registered => registered._actionAdded(page, data, code));
304
+ },
305
+ actionUpdated: (page, data, code) => {
306
+ dispatch(registered => registered._actionUpdated(page, data, code));
307
+ },
308
+ signalAdded: (page, data) => {
309
+ dispatch(registered => registered._signalAdded(page, data));
310
+ },
311
+ }),
312
+ };
313
+ created.ready.catch(() => {
314
+ if (recorderHubs.get(browserContext) === created)
315
+ recorderHubs.delete(browserContext);
316
+ });
317
+ recorderHubs.set(browserContext, created);
318
+ hub = created;
319
+ }
320
+ hub.recorders.add(recorder);
321
+ try {
322
+ await hub.ready;
323
+ }
324
+ catch (error) {
325
+ hub.recorders.delete(recorder);
326
+ throw error;
327
+ }
200
328
  return recorder;
201
329
  }
202
- async _initialize() {
203
- const sessionLog = this._context.sessionLog;
204
- await this._browserContext._enableRecorder({
205
- mode: 'recording',
206
- recorderMode: 'api',
207
- }, {
208
- actionAdded: (page, data, code) => {
209
- if (this._context.isRunningTool())
210
- return;
211
- const tab = Tab.forPage(page);
212
- if (tab)
213
- sessionLog.logUserAction(data.action, tab, code, false);
214
- },
215
- actionUpdated: (page, data, code) => {
216
- if (this._context.isRunningTool())
217
- return;
218
- const tab = Tab.forPage(page);
219
- if (tab)
220
- sessionLog.logUserAction(data.action, tab, code, true);
221
- },
222
- signalAdded: (page, data) => {
223
- if (this._context.isRunningTool())
224
- return;
225
- if (data.signal.name !== 'navigation')
226
- return;
227
- const tab = Tab.forPage(page);
228
- const navigateAction = {
229
- name: 'navigate',
230
- url: data.signal.url,
231
- signals: [],
232
- };
233
- if (tab)
234
- sessionLog.logUserAction(navigateAction, tab, `await page.goto('${data.signal.url}');`, false);
235
- },
236
- });
330
+ dispose() {
331
+ recorderHubs.get(this._browserContext)?.recorders.delete(this);
332
+ }
333
+ _actionAdded(page, data, code) {
334
+ const tab = this._context.tabForPage(page);
335
+ if (tab)
336
+ this._context.sessionLog.logUserAction(data.action, tab, code, false);
337
+ }
338
+ _actionUpdated(page, data, code) {
339
+ const tab = this._context.tabForPage(page);
340
+ if (tab)
341
+ this._context.sessionLog.logUserAction(data.action, tab, code, true);
342
+ }
343
+ _signalAdded(page, data) {
344
+ if (data.signal.name !== 'navigation')
345
+ return;
346
+ const tab = this._context.tabForPage(page);
347
+ const navigateAction = {
348
+ name: 'navigate',
349
+ url: data.signal.url,
350
+ signals: [],
351
+ };
352
+ if (tab)
353
+ this._context.sessionLog.logUserAction(navigateAction, tab, `await page.goto('${data.signal.url}');`, false);
237
354
  }
238
355
  }
239
356
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,9 @@ import { startHttpServer } from '../mcp/http.js';
19
19
  import { CDPRelayServer } from './cdpRelay.js';
20
20
  const debugLogger = debug('pw:mcp:relay');
21
21
  export class ExtensionContextFactory {
22
+ // The relay attaches to the browser the user is already running and hands back
23
+ // its existing context, so contextOptions — storage state included — never apply.
24
+ appliesStorageState = false;
22
25
  _browserChannel;
23
26
  _userDataDir;
24
27
  _executablePath;
@@ -1 +1 @@
1
- {"version":3,"file":"extensionContextFactory.js","sourceRoot":"","sources":["../../src/extension/extensionContextFactory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAI/C,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;AAE1C,MAAM,OAAO,uBAAuB;IAC1B,eAAe,CAAS;IACxB,YAAY,CAAU;IACtB,eAAe,CAAU;IAEjC,YAAY,cAAsB,EAAE,WAA+B,EAAE,cAAkC;QACrG,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QACtC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,UAAsB,EAAE,WAAwB,EAAE,QAA4B;QAChG,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC7E,OAAO;YACL,cAAc,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YACrC,KAAK,EAAE,KAAK,IAAI,EAAE;gBAChB,WAAW,CAAC,oCAAoC,CAAC,CAAC;gBAClD,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;YACxB,CAAC;SACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,UAAsB,EAAE,WAAwB,EAAE,QAA4B;QACzG,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAClD,MAAM,KAAK,CAAC,sCAAsC,CAAC,UAAU,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QACtF,OAAO,MAAM,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IACvE,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,WAAwB;QAChD,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,EAAE,CAAC,CAAC;QAC7C,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YACxB,UAAU,CAAC,KAAK,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACrH,WAAW,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC;QACnE,WAAW,CAAC,iDAAiD,cAAc,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;QACpG,OAAO,cAAc,CAAC;IACxB,CAAC;CACF"}
1
+ {"version":3,"file":"extensionContextFactory.js","sourceRoot":"","sources":["../../src/extension/extensionContextFactory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAI/C,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;AAE1C,MAAM,OAAO,uBAAuB;IAClC,+EAA+E;IAC/E,kFAAkF;IACzE,mBAAmB,GAAG,KAAK,CAAC;IAC7B,eAAe,CAAS;IACxB,YAAY,CAAU;IACtB,eAAe,CAAU;IAEjC,YAAY,cAAsB,EAAE,WAA+B,EAAE,cAAkC;QACrG,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QACtC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,UAAsB,EAAE,WAAwB,EAAE,QAA4B;QAChG,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC7E,OAAO;YACL,cAAc,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YACrC,KAAK,EAAE,KAAK,IAAI,EAAE;gBAChB,WAAW,CAAC,oCAAoC,CAAC,CAAC;gBAClD,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;YACxB,CAAC;SACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,UAAsB,EAAE,WAAwB,EAAE,QAA4B;QACzG,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAClD,MAAM,KAAK,CAAC,sCAAsC,CAAC,UAAU,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QACtF,OAAO,MAAM,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IACvE,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,WAAwB;QAChD,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,EAAE,CAAC,CAAC;QAC7C,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YACxB,UAAU,CAAC,KAAK,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACrH,WAAW,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC;QACnE,WAAW,CAAC,iDAAiD,cAAc,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;QACpG,OAAO,cAAc,CAAC;IACxB,CAAC;CACF"}
@@ -65,6 +65,7 @@ export class ProxyBackend {
65
65
  const factory = this._mcpProviders.find(factory => factory.name === params.name);
66
66
  if (!factory)
67
67
  throw new Error('Unknown connection method: ' + params.name);
68
+ factory.validate?.();
68
69
  await this._setCurrentClient(factory, true);
69
70
  return {
70
71
  content: [{ type: 'text', text: '### Result\nSuccessfully changed connection method.\n' }],
@@ -1 +1 @@
1
- {"version":3,"file":"proxyBackend.js","sourceRoot":"","sources":["../../src/mcp/proxyBackend.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC/F,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAY7D,MAAM,WAAW,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC;AAE3C,MAAM,OAAO,YAAY;IACf,aAAa,CAAgB;IAC7B,cAAc,CAAqB;IACnC,kBAAkB,CAAO;IACzB,MAAM,GAAW,EAAE,CAAC;IACpB,eAAe,CAAmC;IAE1D,YAAY,YAA2B;QACrC,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAA6B,EAAE,aAA4B,EAAE,KAAa;QACzF,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAC7D,CAAC;IAED,KAAK,CAAC,SAAS;QACb,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAe,CAAC,SAAS,EAAE,CAAC;QACxD,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC;YACjC,OAAO,QAAQ,CAAC,KAAK,CAAC;QACxB,OAAO;YACL,GAAG,QAAQ,CAAC,KAAK;YACjB,IAAI,CAAC,kBAAkB;SACxB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,IAAY,EAAE,IAA4C,EAAE,cAAuC;QAChH,IAAI,IAAI,KAAK,IAAI,CAAC,kBAAkB,CAAC,IAAI;YACvC,OAAO,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,aAAa,GAAG,cAAc,EAAE,KAAK,EAAE,aAAa,CAAC;QAC3D,OAAO,MAAM,IAAI,CAAC,cAAe,CAAC,QAAQ,CAAC;YACzC,IAAI;YACJ,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,cAAc,EAAE,KAAK;SAC7B,EAAE,SAAS,EAAE,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YACtD,UAAU,EAAE,MAAM,CAAC,EAAE;gBACnB,KAAK,IAAI,CAAC,4BAA4B,CAAC,cAAc,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;YAChF,CAAC;SACF,CAAmB,CAAC;IACvB,CAAC;IAED,YAAY;QACV,KAAK,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACvD,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,MAAW;QAC9C,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC;YACjF,IAAI,CAAC,OAAO;gBACV,MAAM,IAAI,KAAK,CAAC,6BAA6B,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAE/D,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC5C,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uDAAuD,EAAE,CAAC;aAC3F,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,KAAK,IAAI,EAAE,CAAC;gBAClE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,4BAA4B,CACxC,cAAkD,EAClD,aAA8B,EAC9B,MAA8D;QAE9D,IAAI,CAAC;YACH,MAAM,cAAc,EAAE,gBAAgB,CAAC;gBACrC,MAAM,EAAE,wBAAwB;gBAChC,MAAM,EAAE;oBACN,aAAa;oBACb,GAAG,MAAM;iBACV;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,WAAW,CAAC,wDAAwD,EAAE,KAAK,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAEO,wBAAwB;QAC9B,OAAO;YACL,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE;gBACX,0DAA0D;gBAC1D,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,OAAO,CAAC,IAAI,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC;aACpF,CAAC,IAAI,CAAC,IAAI,CAAC;YACZ,WAAW,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC;gBACnC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAA0B,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,6CAA6C,CAAC;aACnL,CAAC,CAAwB;YAC1B,WAAW,EAAE;gBACX,KAAK,EAAE,8BAA8B;gBACrC,YAAY,EAAE,IAAI;gBAClB,aAAa,EAAE,KAAK;aACrB;SACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,OAAoB,EAAE,cAAuB;QAC3E,MAAM,aAAa,GAAG,cAAc,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3H,MAAM,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,CAAC;QACnC,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAEhC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9E,MAAM,CAAC,oBAAoB,CAAC;YAC1B,KAAK,EAAE;gBACL,WAAW,EAAE,IAAI;aAClB;SACF,CAAC,CAAC;QACH,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACjF,MAAM,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAExD,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;QAC7B,MAAM,qBAAqB,CAAC,IAAI,CAAC,eAAe,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;IACxG,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,MAA0B;QACvD,IAAI,CAAC,MAAM;YACT,OAAO,EAAE,CAAC;QAEZ,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;QAC3C,MAAM,eAAe,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;QACnC,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;YAC/B,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAChD,OAAO,eAAe,CAAC;IACzB,CAAC;CACF"}
1
+ {"version":3,"file":"proxyBackend.js","sourceRoot":"","sources":["../../src/mcp/proxyBackend.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,73 @@
1
+ /**
2
+ * Copyright (c) Microsoft Corporation.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ // One installation per context, shared by every caller: the storage-state
17
+ // reuse path installs the policy before it reloads pages (Context has not run
18
+ // yet), Context ensures it afterwards, and sibling sessions sharing a reused
19
+ // context must not stack duplicate handlers. Keyed weakly on the context
20
+ // object, and by promise so concurrent callers await one installation instead
21
+ // of racing two; a failed installation is forgotten so the next caller
22
+ // retries. The policy is identical for every caller — it comes from the
23
+ // server-wide config — so "already installed" can never mean "installed with
24
+ // different rules".
25
+ const policyInstallations = new WeakMap();
26
+ /**
27
+ * Installs the configured origin allowlist/blocklist as routes on the
28
+ * context, once — later calls (and concurrent ones) join the first. The
29
+ * handlers stay for the context's lifetime: they are never uninstalled, so
30
+ * there is no window between a temporary installation coming off and the
31
+ * permanent one going in during which a queued request could reach a blocked
32
+ * origin, and a sibling session's view of the shared context never loses its
33
+ * protection.
34
+ */
35
+ export function ensureNetworkPolicyRoutes(config, context) {
36
+ let installation = policyInstallations.get(context);
37
+ if (!installation) {
38
+ installation = installRoutes(config, context);
39
+ policyInstallations.set(context, installation);
40
+ installation.catch(() => policyInstallations.delete(context));
41
+ }
42
+ return installation;
43
+ }
44
+ async function installRoutes(config, context) {
45
+ const installed = [];
46
+ const register = async (pattern, handler) => {
47
+ await context.route(pattern, handler);
48
+ installed.push({ pattern, handler });
49
+ };
50
+ try {
51
+ if (config.network?.allowedOrigins?.length) {
52
+ await register('**', route => route.abort('blockedbyclient'));
53
+ for (const origin of config.network.allowedOrigins)
54
+ await register(`*://${origin}/**`, route => route.continue());
55
+ }
56
+ if (config.network?.blockedOrigins?.length) {
57
+ for (const origin of config.network.blockedOrigins)
58
+ await register(`*://${origin}/**`, route => route.abort('blockedbyclient'));
59
+ }
60
+ }
61
+ catch (error) {
62
+ // A partial policy is worse than none: with the allowlist's abort-all
63
+ // route in but its continue routes missing, everything is blocked — and
64
+ // on a reused context the fragment would linger for whoever uses the
65
+ // context next. Unwind exactly what was registered (never more — a
66
+ // sibling session may have its own handlers) before surfacing the
67
+ // failure.
68
+ for (const { pattern, handler } of installed)
69
+ await context.unroute(pattern, handler).catch(() => { });
70
+ throw error;
71
+ }
72
+ }
73
+ //# sourceMappingURL=networkPolicy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"networkPolicy.js","sourceRoot":"","sources":["../src/networkPolicy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAOH,0EAA0E;AAC1E,8EAA8E;AAC9E,6EAA6E;AAC7E,yEAAyE;AACzE,8EAA8E;AAC9E,uEAAuE;AACvE,wEAAwE;AACxE,6EAA6E;AAC7E,oBAAoB;AACpB,MAAM,mBAAmB,GAAG,IAAI,OAAO,EAA4C,CAAC;AAEpF;;;;;;;;GAQG;AACH,MAAM,UAAU,yBAAyB,CAAC,MAAkB,EAAE,OAAkC;IAC9F,IAAI,YAAY,GAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACpD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,YAAY,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9C,mBAAmB,CAAC,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAC/C,YAAY,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,MAAkB,EAAE,OAAkC;IACjF,MAAM,SAAS,GAAiD,EAAE,CAAC;IACnE,MAAM,QAAQ,GAAG,KAAK,EAAE,OAAe,EAAE,OAAqB,EAAE,EAAE;QAChE,MAAM,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACtC,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IACvC,CAAC,CAAC;IACF,IAAI,CAAC;QACH,IAAI,MAAM,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC;YAC3C,MAAM,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAC9D,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc;gBAChD,MAAM,QAAQ,CAAC,OAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,MAAM,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC;YAC3C,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc;gBAChD,MAAM,QAAQ,CAAC,OAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,sEAAsE;QACtE,wEAAwE;QACxE,qEAAqE;QACrE,mEAAmE;QACnE,kEAAkE;QAClE,WAAW;QACX,KAAK,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,SAAS;YAC1C,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC1D,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}