fastbrowser_cli 1.0.31 → 1.0.35

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 (60) hide show
  1. package/README.md +1 -2
  2. package/dist/fastbrowser_cli/fastbrowser_cli.js +11 -19
  3. package/dist/fastbrowser_cli/fastbrowser_cli.js.map +1 -1
  4. package/dist/fastbrowser_cli/libs/query-builder.d.ts +2 -0
  5. package/dist/fastbrowser_cli/libs/query-builder.d.ts.map +1 -1
  6. package/dist/fastbrowser_cli/libs/query-builder.js +4 -0
  7. package/dist/fastbrowser_cli/libs/query-builder.js.map +1 -1
  8. package/dist/fastbrowser_httpd/libs/tool-schemas.d.ts +2 -0
  9. package/dist/fastbrowser_httpd/libs/tool-schemas.d.ts.map +1 -1
  10. package/dist/fastbrowser_mcp/fastbrowser_mcp.js +193 -32
  11. package/dist/fastbrowser_mcp/fastbrowser_mcp.js.map +1 -1
  12. package/dist/fastbrowser_mcp/libs/mcp_my_client.d.ts.map +1 -1
  13. package/dist/fastbrowser_mcp/libs/mcp_my_client.js +8 -0
  14. package/dist/fastbrowser_mcp/libs/mcp_my_client.js.map +1 -1
  15. package/dist/fastbrowser_mcp/libs/mcp_target_helper.d.ts.map +1 -1
  16. package/dist/fastbrowser_mcp/libs/mcp_target_helper.js +15 -2
  17. package/dist/fastbrowser_mcp/libs/mcp_target_helper.js.map +1 -1
  18. package/dist/fastbrowser_mcp/libs/playwright_a11y_helper.d.ts +1 -0
  19. package/dist/fastbrowser_mcp/libs/playwright_a11y_helper.d.ts.map +1 -1
  20. package/dist/fastbrowser_mcp/libs/playwright_a11y_helper.js +33 -1
  21. package/dist/fastbrowser_mcp/libs/playwright_a11y_helper.js.map +1 -1
  22. package/dist/fastbrowser_mcp/libs/schemas.d.ts +4 -0
  23. package/dist/fastbrowser_mcp/libs/schemas.d.ts.map +1 -1
  24. package/dist/fastbrowser_mcp/libs/schemas.js +6 -0
  25. package/dist/fastbrowser_mcp/libs/schemas.js.map +1 -1
  26. package/dist/shared/logger.d.ts +86 -0
  27. package/dist/shared/logger.d.ts.map +1 -0
  28. package/dist/shared/logger.js +269 -0
  29. package/dist/shared/logger.js.map +1 -0
  30. package/docs/brainstorm_scrap_by_ai.md +1 -1
  31. package/docs/feature_support_cli.md +7 -8
  32. package/docs/target_tools/target_tools_chrome_devtools.md +963 -0
  33. package/docs/target_tools/target_tools_playwright.md +763 -0
  34. package/examples/linkedin_cli/linked_dm.sh +19 -0
  35. package/examples/linkedin_cli/linked_post.sh +13 -0
  36. package/examples/linkedin_cli/linkedin.snapshot.txt +1245 -0
  37. package/examples/todomvc/todomvc.a11y.txt +44 -0
  38. package/examples/todomvc/todomvc.sh +11 -0
  39. package/examples/wttj_cli/fastbrowser_helper.ts +39 -0
  40. package/examples/wttj_cli/wttf_job-original.a11y.txt +652 -0
  41. package/examples/wttj_cli/wttf_job.a11y.txt +317 -0
  42. package/examples/{welcometothejungle/wttj-job.ts → wttj_cli/wttj_job copy.ts } +60 -11
  43. package/examples/wttj_cli/wttj_job.ts +179 -0
  44. package/examples/wttj_cli/wttj_search.ts +162 -0
  45. package/package.json +10 -3
  46. package/skills/fastbrowser/SKILL.md +10 -11
  47. package/skills/fastbrowser-script/SKILL.md +4 -4
  48. package/src/fastbrowser_cli/fastbrowser_cli.ts +14 -25
  49. package/src/fastbrowser_cli/libs/query-builder.ts +6 -0
  50. package/src/fastbrowser_mcp/fastbrowser_mcp.ts +231 -36
  51. package/src/fastbrowser_mcp/libs/mcp_my_client.ts +17 -0
  52. package/src/fastbrowser_mcp/libs/mcp_target_helper.ts +15 -2
  53. package/src/fastbrowser_mcp/libs/playwright_a11y_helper.ts +33 -1
  54. package/src/fastbrowser_mcp/libs/schemas.ts +6 -0
  55. package/src/shared/logger.ts +317 -0
  56. package/test.a11y.txt +828 -0
  57. package/tests/query-builder.test.ts +51 -11
  58. package/examples/welcometothejungle/fastbrowser_helper.ts +0 -39
  59. package/examples/welcometothejungle/wttj-search.ts +0 -82
  60. /package/examples/{post-to-x.sh → twitter_cli/twitter_post.sh} +0 -0
@@ -1,6 +1,5 @@
1
1
  #!/usr/bin/env node
2
2
  // node imports
3
- import * as Assert from 'node:assert/strict';
4
3
  import Fs from 'node:fs';
5
4
  import Path from 'node:path';
6
5
  // npm imports
@@ -8,30 +7,71 @@ import { Command, Option } from 'commander';
8
7
  import { z } from "zod";
9
8
  import * as A11yParse from "a11y_parse";
10
9
  // local imports
10
+ import { Logger } from "../shared/logger.js";
11
11
  import { McpMyClient } from "./libs/mcp_my_client.js";
12
12
  import { McpProxy } from "./libs/mcp_proxy.js";
13
13
  import { ResponseFormatter } from "./libs/response_formatter.js";
14
14
  import { QuerySelectorInputSchema, QuerySelectorsInputSchema, QuerySelectorFirstInputSchema, QuerySelectorsFirstInputSchema, } from "./libs/schemas.js";
15
15
  import { McpTargetHelper } from './libs/mcp_target_helper.js';
16
16
  export { QuerySelectorInputSchema, QuerySelectorsInputSchema, QuerySelectorFirstInputSchema, QuerySelectorsFirstInputSchema, };
17
+ const logger = Logger.fromMetaUrl(import.meta.url, {
18
+ allToStderr: true,
19
+ });
17
20
  ///////////////////////////////////////////////////////////////////////////////
18
21
  ///////////////////////////////////////////////////////////////////////////////
19
22
  //
20
23
  ///////////////////////////////////////////////////////////////////////////////
21
24
  ///////////////////////////////////////////////////////////////////////////////
22
25
  class MainHelper {
26
+ /**
27
+ * Multiple retry... not sure it is actually useful - https://github.com/jeromeetienne/skillmd_collection/issues/47
28
+ *
29
+ * @param mcpClient
30
+ * @returns
31
+ */
23
32
  static async _getA11yText(mcpClient) {
24
33
  const mcpTarget = await mcpClient.getMcpTarget();
25
34
  const toolConfig = await McpTargetHelper.targetToolTakeSnapshot(mcpTarget);
26
- // FIXME: the first take_snapshot call after connecting to the MCP target often returns an empty snapshot for unknown reasons
27
- // working around this by calling it once and discarding the result before calling it again to get the actual snapshot text
28
- await mcpClient.callTool(toolConfig.toolName, toolConfig.toolArgs);
29
- const callToolResult = await mcpClient.callTool(toolConfig.toolName, toolConfig.toolArgs);
30
- const snapshotText = await ResponseFormatter.formatTakeSnapshot(mcpTarget, callToolResult);
31
- // sanity check
32
- Assert.ok(snapshotText !== undefined, "Snapshot text is empty");
33
- // return the snapshot text
34
- return snapshotText;
35
+ // `take_snapshot` is racy for reasons we haven't traced (could be playwright's a11y serializer, the
36
+ // `@playwright/mcp` extension transport, or the chrome extension itself), back-to-back calls on an unchanged
37
+ // page sometimes return incomplete or empty trees. Stabilize by taking snapshots in pairs and only returning
38
+ // once two consecutive ones agree on node count within STABLE_TOLERANCE. On exhaustion, return best-effort
39
+ // rather than throw, so legitimately tiny pages don't break workflows.
40
+ const MAX_ATTEMPTS = 6;
41
+ const RETRY_DELAY_MS = 250;
42
+ const STABLE_TOLERANCE = 2;
43
+ let prev = undefined;
44
+ let last = { text: '', nodeCount: 0 };
45
+ for (let attempt = 1; attempt <= MAX_ATTEMPTS; attempt++) {
46
+ const callToolResult = await mcpClient.callTool(toolConfig.toolName, toolConfig.toolArgs);
47
+ const text = await ResponseFormatter.formatTakeSnapshot(mcpTarget, callToolResult);
48
+ const nodeCount = MainHelper._countSnapshotNodes(text);
49
+ last = { text, nodeCount };
50
+ if (prev !== undefined && Math.abs(nodeCount - prev.nodeCount) <= STABLE_TOLERANCE) {
51
+ if (nodeCount === 0) {
52
+ logger.warn(`${mcpTarget}:take_snapshot: settled at empty after ${attempt} attempt(s) — returning empty snapshot`);
53
+ }
54
+ return text;
55
+ }
56
+ logger.warn(`${mcpTarget}:take_snapshot: attempt ${attempt}/${MAX_ATTEMPTS}: nodeCount=${nodeCount}, prev=${prev === undefined ? 'n/a' : prev.nodeCount} — not stable, retrying`);
57
+ prev = last;
58
+ if (attempt < MAX_ATTEMPTS) {
59
+ await new Promise((resolve) => setTimeout(resolve, RETRY_DELAY_MS));
60
+ }
61
+ }
62
+ logger.warn(`${mcpTarget}:take_snapshot: exhausted ${MAX_ATTEMPTS} attempts without stabilizing — returning best-effort (nodeCount=${last.nodeCount})`);
63
+ return last.text;
64
+ }
65
+ static _countSnapshotNodes(snapshotText) {
66
+ if (snapshotText.trim().length === 0)
67
+ return 0;
68
+ let count = 0;
69
+ for (const line of snapshotText.split('\n')) {
70
+ if (line.trim().startsWith('uid=')) {
71
+ count += 1;
72
+ }
73
+ }
74
+ return count;
35
75
  }
36
76
  /**
37
77
  * TODO to remove this function - just call the .parse
@@ -67,20 +107,38 @@ class MainHelper {
67
107
  * Formats a list of selected accessibility-tree nodes into the text block used by
68
108
  * both querySelector and querySelectorsAll responses.
69
109
  */
70
- static _formatSelectedNodes(selector, selectedNodes, withAncestors) {
71
- let text = `## Node found for selector '${selector}' (${selectedNodes.length} node${selectedNodes.length > 1 ? 's' : ''}${withAncestors ? ', with ancestors' : ''}):\n`;
72
- if (withAncestors) {
73
- if (selectedNodes.length === 0) {
74
- text += "No node found";
75
- }
76
- else {
77
- const ancestorTree = A11yParse.A11yTree.buildAncestorTree(selectedNodes);
78
- text += A11yParse.A11yTree.stringify(ancestorTree);
110
+ static _formatSelectedNodes(selector, selectedNodes, withAncestors, withChildren) {
111
+ const nodeCount = selectedNodes.length;
112
+ const pluralS = nodeCount > 1 ? 's' : '';
113
+ const ancestorsText = withAncestors ? ', with ancestors' : '';
114
+ const childrenText = withChildren ? ', with children' : '';
115
+ let text = `## Node${pluralS} found for selector '${selector}' (${nodeCount} node${pluralS}${ancestorsText}${childrenText}):`;
116
+ if (selectedNodes.length === 0) {
117
+ if (text.length > 0)
118
+ text += '\n';
119
+ text += "No node found";
120
+ }
121
+ else if (withAncestors === true) {
122
+ const subsetTree = A11yParse.A11yTree.buildSubsetTree(selectedNodes, {
123
+ withAncestors: true,
124
+ withChildren,
125
+ });
126
+ if (text.length > 0)
127
+ text += '\n';
128
+ text += A11yParse.A11yDisplay.stringifyTree(subsetTree);
129
+ }
130
+ else if (withChildren === true) {
131
+ for (const selectedNode of selectedNodes) {
132
+ if (text.length > 0)
133
+ text += '\n';
134
+ text += A11yParse.A11yDisplay.stringifyTree(selectedNode);
79
135
  }
80
136
  }
81
137
  else {
82
138
  for (const selectedNode of selectedNodes) {
83
- text += A11yParse.A11yTree.stringify(selectedNode) + '\n';
139
+ if (text.length > 0)
140
+ text += '\n';
141
+ text += A11yParse.A11yDisplay.stringifyNode(selectedNode);
84
142
  }
85
143
  }
86
144
  text += '\n';
@@ -103,7 +161,7 @@ class MainHelper {
103
161
  if (querySelector.limit > 0) {
104
162
  selectedNodes.splice(querySelector.limit);
105
163
  }
106
- responseTexts.push(this._formatSelectedNodes(querySelector.selector, selectedNodes, querySelector.withAncestors));
164
+ responseTexts.push(this._formatSelectedNodes(querySelector.selector, selectedNodes, querySelector.withAncestors, querySelector.withChildren));
107
165
  }
108
166
  // join the response texts for all selectors and return
109
167
  const responseText = responseTexts.join('\n');
@@ -123,7 +181,7 @@ class MainHelper {
123
181
  for (const querySelector of querySelectors.selectors) {
124
182
  const selectedNodes = A11yParse.A11yQuery.querySelectorAll(a11yTree, querySelector.selector);
125
183
  const firstNode = selectedNodes.length > 0 ? [selectedNodes[0]] : [];
126
- responseTexts.push(this._formatSelectedNodes(querySelector.selector, firstNode, querySelector.withAncestors));
184
+ responseTexts.push(this._formatSelectedNodes(querySelector.selector, firstNode, querySelector.withAncestors, querySelector.withChildren));
127
185
  }
128
186
  return responseTexts.join('\n');
129
187
  }
@@ -143,9 +201,14 @@ class MainHelper {
143
201
  description: "List the open pages/tabs in the browser",
144
202
  inputSchema: z.object({}),
145
203
  }, async () => {
204
+ // log the events
205
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.listPages}: listing pages`);
146
206
  const toolConfig = await McpTargetHelper.targetToolListPages(mcpTarget);
147
207
  const callToolResult = await mcpClient.callTool(toolConfig.toolName, toolConfig.toolArgs);
148
208
  let outputStr = await ResponseFormatter.formatListPages(mcpTarget, callToolResult);
209
+ // log the events
210
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.listPages}: output:`);
211
+ logger.warn(`${outputStr}`);
149
212
  return {
150
213
  content: [{ type: "text", text: outputStr }],
151
214
  };
@@ -168,10 +231,15 @@ class MainHelper {
168
231
  // const toolConfig = await McpTargetHelper.targetToolNewPage(mcpTarget, url);
169
232
  // const callToolResult = await mcpClient.callTool(toolConfig.toolName, toolConfig.toolArgs);
170
233
  // let outputStr = await ResponseFormatter.formatNewPage(mcpTarget, callToolResult, url);
234
+ // log the events
235
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.newPage}: url=${url}`);
171
236
  // so working around this by calling the navigate_page tool instead of new_page when the target is playwright
172
237
  const toolConfig = await McpTargetHelper.targetToolNavigatePage(mcpTarget, url);
173
238
  const callToolResult = await mcpClient.callTool(toolConfig.toolName, toolConfig.toolArgs);
174
239
  let outputStr = await ResponseFormatter.formatNavigatePage(mcpTarget, callToolResult);
240
+ // log the events
241
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.newPage}: output:`);
242
+ logger.warn(`${outputStr}`);
175
243
  return {
176
244
  content: [{ type: "text", text: outputStr }],
177
245
  };
@@ -187,9 +255,14 @@ class MainHelper {
187
255
  pageId: z.number().describe("The id of the page to close"),
188
256
  }),
189
257
  }, async ({ pageId }) => {
258
+ // log the events
259
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.closePage}: pageId=${pageId}`);
190
260
  const toolConfig = await McpTargetHelper.targetToolClosePage(mcpTarget, pageId);
191
261
  const callToolResult = await mcpClient.callTool(toolConfig.toolName, toolConfig.toolArgs);
192
262
  let outputStr = await ResponseFormatter.formatClosePage(mcpTarget, callToolResult, pageId);
263
+ // log the events
264
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.closePage}: output:`);
265
+ logger.warn(`${outputStr}`);
193
266
  return {
194
267
  content: [{ type: "text", text: outputStr }],
195
268
  };
@@ -205,9 +278,14 @@ class MainHelper {
205
278
  url: z.string().describe("The URL to navigate to"),
206
279
  }),
207
280
  }, async ({ url }) => {
281
+ // log the events
282
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.navigatePage}: url=${url}`);
208
283
  const toolConfig = await McpTargetHelper.targetToolNavigatePage(mcpTarget, url);
209
284
  const callToolResult = await mcpClient.callTool(toolConfig.toolName, toolConfig.toolArgs);
210
285
  let outputStr = await ResponseFormatter.formatNavigatePage(mcpTarget, callToolResult);
286
+ // log the events
287
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.navigatePage}: output:`);
288
+ logger.warn(`${outputStr}`);
211
289
  return {
212
290
  content: [{ type: "text", text: outputStr }],
213
291
  };
@@ -221,8 +299,13 @@ class MainHelper {
221
299
  description: "Take a snapshot of the current page to get the latest accessibility tree",
222
300
  inputSchema: z.object({}),
223
301
  }, async () => {
302
+ // log the events
303
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.takeSnapshot}: taking snapshot`);
224
304
  const a11yText = await MainHelper._getA11yText(mcpClient);
225
305
  let outputStr = a11yText;
306
+ // log the events
307
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.takeSnapshot}: output:`);
308
+ logger.warn(`${outputStr}`);
226
309
  return {
227
310
  content: [{ type: "text", text: outputStr }],
228
311
  };
@@ -252,8 +335,13 @@ class MainHelper {
252
335
  ].join('\n'),
253
336
  inputSchema: QuerySelectorsInputSchema,
254
337
  }, async (querySelectorsInput) => {
338
+ // log the events
339
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.querySelectorsAll}: querying selectors: ${JSON.stringify(querySelectorsInput)}`);
255
340
  // query the accessibility tree with the provided selector
256
341
  const outputText = await MainHelper.querySelectorsAll(mcpClient, querySelectorsInput);
342
+ // log the events
343
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.querySelectorsAll}: output:`);
344
+ logger.warn(`${outputText}`);
257
345
  return {
258
346
  content: [{ type: "text", text: outputText }],
259
347
  };
@@ -270,7 +358,12 @@ class MainHelper {
270
358
  ].join('\n'),
271
359
  inputSchema: QuerySelectorsFirstInputSchema,
272
360
  }, async (querySelectorsInput) => {
361
+ // log the events
362
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.querySelectors}: querying selectors: ${JSON.stringify(querySelectorsInput)}`);
273
363
  const outputText = await MainHelper.querySelectors(mcpClient, querySelectorsInput);
364
+ // log the events
365
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.querySelectors}: output:`);
366
+ logger.warn(`${outputText}`);
274
367
  return {
275
368
  content: [{ type: "text", text: outputText }],
276
369
  };
@@ -286,6 +379,8 @@ class MainHelper {
286
379
  keys: z.string().describe("The keys to press, in order, comma-separated. E.g. 'Hello, Tab, Enter, ArrowDown'"),
287
380
  }),
288
381
  }, async ({ keys }) => {
382
+ // log the events
383
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.pressKeys}: pressing keys: ${keys}`);
289
384
  // Build the list of keys to send, splitting regular characters into individual key presses, but keeping special keys as-is
290
385
  const keysToSend = [];
291
386
  const keysSplit = keys.split(',').map((key) => key.trim());
@@ -315,6 +410,9 @@ class MainHelper {
315
410
  }
316
411
  }
317
412
  let outputText = await ResponseFormatter.formatPressKeys(mcpTarget, keysToSend);
413
+ // log the events
414
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.pressKeys}: output:`);
415
+ logger.warn(`${outputText}`);
318
416
  // return a response indicating which keys were pressed
319
417
  return {
320
418
  content: [{ type: "text", text: outputText }],
@@ -334,10 +432,14 @@ class MainHelper {
334
432
  selector: z.string().describe('Accessibility selector (e.g. "#1_3" or \'button[name="Submit"]\')'),
335
433
  },
336
434
  }, async ({ selector }) => {
435
+ // log the events
436
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.click}: clicking selector: ${selector}`);
337
437
  const uid = await MainHelper._resolveSelectorToUid(mcpClient, selector);
338
438
  const toolConfig = await McpTargetHelper.targetToolClick(mcpTarget, uid);
339
439
  const callToolResult = await mcpClient.callTool(toolConfig.toolName, toolConfig.toolArgs);
340
440
  let outputText = await ResponseFormatter.formatClick(mcpTarget, callToolResult);
441
+ // log the events
442
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.click}: output:`);
341
443
  return {
342
444
  content: [{ type: "text", text: outputText }],
343
445
  };
@@ -359,6 +461,8 @@ class MainHelper {
359
461
  })).describe('Elements to fill, each with a selector and a value'),
360
462
  },
361
463
  }, async ({ elements }) => {
464
+ // log the events
465
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.fillForm}: filling form with elements: ${JSON.stringify(elements)}`);
362
466
  const resolved = [];
363
467
  for (const element of elements) {
364
468
  const uid = await MainHelper._resolveSelectorToUid(mcpClient, element.selector);
@@ -367,25 +471,27 @@ class MainHelper {
367
471
  value: element.value,
368
472
  });
369
473
  }
474
+ let callToolResult;
370
475
  if (mcpTarget === 'chrome_devtools') {
371
476
  const toolConfig = await McpTargetHelper.targetToolFillForm(mcpTarget, resolved);
372
- const callToolResult = await mcpClient.callTool(toolConfig.toolName, toolConfig.toolArgs);
373
- // const callToolResult = await mcpClient.callTool('fill_form', { elements: resolved });
374
- return callToolResult;
477
+ callToolResult = await mcpClient.callTool(toolConfig.toolName, toolConfig.toolArgs);
375
478
  }
376
479
  else if (mcpTarget === 'playwright') {
377
480
  const fields = resolved.map((element, index) => ({
378
481
  name: `Field ${index + 1}`,
379
482
  type: 'textbox', // for simplicity, we assume all fields are textboxes in this example
380
- ref: element.uid,
483
+ target: element.uid,
381
484
  value: element.value,
382
485
  }));
383
- const callToolResult = await mcpClient.callTool('browser_fill_form', { fields: fields });
384
- return callToolResult;
486
+ callToolResult = await mcpClient.callTool('browser_fill_form', { fields: fields });
385
487
  }
386
488
  else {
387
489
  throw new Error(`Unsupported MCP target: ${mcpTarget}`);
388
490
  }
491
+ // log the events
492
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.fillForm}: output:`);
493
+ logger.warn(`${JSON.stringify(callToolResult)}`);
494
+ return callToolResult;
389
495
  });
390
496
  ///////////////////////////////////////////////////////////////////////////////
391
497
  ///////////////////////////////////////////////////////////////////////////////
@@ -399,6 +505,8 @@ class MainHelper {
399
505
  description: "Get the current date and time",
400
506
  inputSchema: timezoneSchema,
401
507
  }, async ({ timezone }) => {
508
+ // log the events
509
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.getCurrentDateTime}: getting current date and time with timezone: ${timezone ?? 'local system timezone'}`);
402
510
  const date = new Date();
403
511
  const options = {
404
512
  timeZone: timezone,
@@ -411,6 +519,8 @@ class MainHelper {
411
519
  timeZoneName: "short",
412
520
  };
413
521
  const formatted = new Intl.DateTimeFormat("en-US", options).format(date);
522
+ // log the events
523
+ logger.warn(`${mcpTarget}:${McpTargetHelper.EXTERNAL_TOOL_NAME.getCurrentDateTime}: output: ${formatted}`);
414
524
  return {
415
525
  content: [{ type: "text", text: formatted }],
416
526
  };
@@ -424,6 +534,10 @@ class MainHelper {
424
534
  ///////////////////////////////////////////////////////////////////////////////
425
535
  ///////////////////////////////////////////////////////////////////////////////
426
536
  static async commandMcpServer({ mcpTarget, verbose = false, }) {
537
+ // Redirect process.stderr to a log file, so that the MCP communication is not polluted by logs.
538
+ const logFile = Path.resolve(import.meta.dirname, `../../outputs/fastbrowser_mcp_${new Date().toISOString()}.log`);
539
+ const logStream = Fs.createWriteStream(logFile, { flags: 'a' });
540
+ process.stderr.write = logStream.write.bind(logStream);
427
541
  ///////////////////////////////////////////////////////////////////////////////
428
542
  ///////////////////////////////////////////////////////////////////////////////
429
543
  // mcp client
@@ -469,11 +583,13 @@ class MainHelper {
469
583
  {
470
584
  selector: "link, button",
471
585
  withAncestors: true,
586
+ withChildren: false,
472
587
  limit: 0,
473
588
  },
474
589
  {
475
590
  selector: 'heading[level="1"]',
476
591
  withAncestors: false,
592
+ withChildren: false,
477
593
  limit: 0,
478
594
  },
479
595
  ],
@@ -506,6 +622,44 @@ class MainHelper {
506
622
  // Connect the MCP proxy server to start accepting connections from MCP clients (e.g. LLM agents).
507
623
  await mcpProxy.connect();
508
624
  }
625
+ ///////////////////////////////////////////////////////////////////////////////
626
+ ///////////////////////////////////////////////////////////////////////////////
627
+ // .commandTargetTools: connect to the target MCP and print each tool's name, description, and input schema.
628
+ ///////////////////////////////////////////////////////////////////////////////
629
+ ///////////////////////////////////////////////////////////////////////////////
630
+ static async commandTargetTools({ mcpTarget, }) {
631
+ const { command: mcpCommand, args: mcpArgs } = McpTargetHelper.mcpArgs(mcpTarget);
632
+ const mcpClient = new McpMyClient({
633
+ name: 'fastbrowser_target_tools_client',
634
+ version: '1.0.0',
635
+ mcpTarget,
636
+ transport: {
637
+ type: 'stdio',
638
+ command: mcpCommand,
639
+ args: mcpArgs,
640
+ },
641
+ });
642
+ await mcpClient.connect();
643
+ try {
644
+ const tools = await mcpClient.listTools();
645
+ console.log(`# Tools available on MCP target '${mcpTarget}' (${tools.length})\n`);
646
+ for (const tool of tools) {
647
+ console.log(`## ${tool.name}`);
648
+ console.log('');
649
+ console.log(`### Description`);
650
+ console.log(`${tool.description ?? '(no description)'}`);
651
+ console.log('');
652
+ console.log(`### Input schema`);
653
+ console.log("```");
654
+ console.log(JSON.stringify(tool.inputSchema, null, 2));
655
+ console.log("```");
656
+ console.log('');
657
+ }
658
+ }
659
+ finally {
660
+ await mcpClient.close();
661
+ }
662
+ }
509
663
  }
510
664
  ///////////////////////////////////////////////////////////////////////////////
511
665
  ///////////////////////////////////////////////////////////////////////////////
@@ -513,10 +667,6 @@ class MainHelper {
513
667
  ///////////////////////////////////////////////////////////////////////////////
514
668
  ///////////////////////////////////////////////////////////////////////////////
515
669
  async function main() {
516
- // Redirect process.stderr to a log file, so that the MCP communication is not polluted by logs.
517
- const logFile = Path.resolve(import.meta.dirname, `../../outputs/fastbrowser_mcp_${new Date().toISOString()}.log`);
518
- const logStream = Fs.createWriteStream(logFile, { flags: 'a' });
519
- process.stderr.write = logStream.write.bind(logStream);
520
670
  // throw Error("This entry point is not meant to be run directly. Please run one of the npm scripts defined in package.json, e.g. 'npm run start:fastbrowser_mcp' or 'npm run inspect:fastbrowser_mcp:chrome_devtools'");
521
671
  const program = new Command();
522
672
  program
@@ -532,6 +682,17 @@ async function main() {
532
682
  verbose: options.verbose,
533
683
  });
534
684
  });
685
+ program
686
+ .command('target_tools')
687
+ .description('List the tools exposed by the target MCP (name, description, input schema)')
688
+ .addOption(new Option('-b, --mcp_target <mcpTarget>', 'the MCP target to introspect')
689
+ .choices(['chrome_devtools', 'playwright'])
690
+ .default('playwright'))
691
+ .action(async (options) => {
692
+ await MainHelper.commandTargetTools({
693
+ mcpTarget: options.mcp_target,
694
+ });
695
+ });
535
696
  // display help if no command is provided
536
697
  if (process.argv.length < 3) {
537
698
  program.help();
@@ -1 +1 @@
1
- {"version":3,"file":"fastbrowser_mcp.js","sourceRoot":"","sources":["../../src/fastbrowser_mcp/fastbrowser_mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fastbrowser_mcp.js","sourceRoot":"","sources":["../../src/fastbrowser_mcp/fastbrowser_mcp.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp_my_client.d.ts","sourceRoot":"","sources":["../../../src/fastbrowser_mcp/libs/mcp_my_client.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AACjG,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAE/D,MAAM,MAAM,WAAW,GAAG;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,UAAU,CAAC;AAE1D,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,oBAAoB,CAAC;IAChC,SAAS,EAAE,kBAAkB,CAAC;CAC9B;AAUD,qBAAa,WAAW;IAMX,OAAO,CAAC,QAAQ,CAAC,OAAO;IALpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,SAAS,CAAS;gBAEG,OAAO,EAAE,gBAAgB;IAShD,YAAY,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAI7C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAMtB,SAAS,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IAM5B,QAAQ,CACb,IAAI,EAAE,MAAM,EACZ,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAChC,OAAO,CAAC,cAAc,CAAC;IAKpB,aAAa,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAMpC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAK3C,WAAW,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAMhC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM;;;;;;;2BAyBkjK,CAAC;4BAAgC,CAAC;4BAAoE,CAAC;gCAAsD,CAAC;;qBAA0E,CAAC;;;;;2BAAmL,CAAC;4BAAgC,CAAC;4BAAoE,CAAC;gCAAsD,CAAC;;qBAA0E,CAAC;;;;;2BAAmL,CAAC;4BAAgC,CAAC;4BAAoE,CAAC;gCAAsD,CAAC;;qBAA0E,CAAC;;;;;;4BAAsN,CAAC;yBAA+C,CAAC;;;;4BAA4J,CAAC;yBAA+C,CAAC;;2BAAqF,CAAC;4BAAgC,CAAC;4BAAoE,CAAC;gCAAsD,CAAC;;qBAA0E,CAAC;;;;;2BAAsL,CAAC;wBAA8C,CAAC;oBAA0C,CAAC;2BAAiD,CAAC;4BAAgC,CAAC;4BAAoE,CAAC;gCAAsD,CAAC;;qBAA0E,CAAC;;;qBAAkG,CAAC;;4BAAiE,CAAC;yBAA+C,CAAC;yBAAiD,CAAC;;qBAAsF,CAAC;;;;;yBAA+H,CAAC;kDAAiF,CAAC;;;;;;IApB//P,OAAO,CAAC,eAAe;IAevB,OAAO,CAAC,eAAe;CAKvB"}
1
+ {"version":3,"file":"mcp_my_client.d.ts","sourceRoot":"","sources":["../../../src/fastbrowser_mcp/libs/mcp_my_client.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AACjG,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAQ/D,MAAM,MAAM,WAAW,GAAG;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,UAAU,CAAC;AAE1D,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,oBAAoB,CAAC;IAChC,SAAS,EAAE,kBAAkB,CAAC;CAC9B;AAcD,qBAAa,WAAW;IAMX,OAAO,CAAC,QAAQ,CAAC,OAAO;IALpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,SAAS,CAAS;gBAEG,OAAO,EAAE,gBAAgB;IAShD,YAAY,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAI7C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAUxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAMtB,SAAS,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IAO5B,QAAQ,CACb,IAAI,EAAE,MAAM,EACZ,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAChC,OAAO,CAAC,cAAc,CAAC;IAMpB,aAAa,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAMpC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAK3C,WAAW,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAMhC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM;;;;;;;2BAyBwxI,CAAC;4BAAgC,CAAC;4BAAoE,CAAC;gCAAsD,CAAC;;qBAA0E,CAAC;;;;;2BAAmL,CAAC;4BAAgC,CAAC;4BAAoE,CAAC;gCAAsD,CAAC;;qBAA0E,CAAC;;;;;2BAAmL,CAAC;4BAAgC,CAAC;4BAAoE,CAAC;gCAAsD,CAAC;;qBAA0E,CAAC;;;;;;4BAAsN,CAAC;yBAA+C,CAAC;;;;4BAA4J,CAAC;yBAA+C,CAAC;;2BAAqF,CAAC;4BAAgC,CAAC;4BAAoE,CAAC;gCAAsD,CAAC;;qBAA0E,CAAC;;;;;2BAAsL,CAAC;wBAA8C,CAAC;oBAA0C,CAAC;2BAAiD,CAAC;4BAAgC,CAAC;4BAAoE,CAAC;gCAAsD,CAAC;;qBAA0E,CAAC;;;qBAAkG,CAAC;;4BAAiE,CAAC;yBAA+C,CAAC;yBAAiD,CAAC;;qBAAsF,CAAC;;;;;yBAA+H,CAAC;kDAAiF,CAAC;;;;;;IApBruO,OAAO,CAAC,eAAe;IAevB,OAAO,CAAC,eAAe;CAKvB"}
@@ -1,4 +1,5 @@
1
1
  // node import
2
+ import { Logger } from "../../shared/logger.js";
2
3
  import { Client } from "@modelcontextprotocol/sdk/client/index.js";
3
4
  import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";
4
5
  import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
@@ -7,6 +8,9 @@ import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/
7
8
  //
8
9
  ///////////////////////////////////////////////////////////////////////////////
9
10
  ///////////////////////////////////////////////////////////////////////////////
11
+ const logger = Logger.fromMetaUrl(import.meta.url, {
12
+ allToStderr: true,
13
+ });
10
14
  // TODO remove this function - it seems to do vastly nothing - more confusing that helpful
11
15
  // - i use the McpServer directly, and i got a wrapper for the client... discrepancy is confusing
12
16
  export class McpMyClient {
@@ -26,8 +30,10 @@ export class McpMyClient {
26
30
  async connect() {
27
31
  if (this.connected)
28
32
  return;
33
+ logger.warn(`McpMyClient:connect: Connecting to MCP with target ${this.mcpTarget}`);
29
34
  this.transport = this.createTransport(this.options.transport);
30
35
  await this.client.connect(this.transport);
36
+ logger.warn(`McpMyClient:connect: Connected to MCP with target ${this.mcpTarget}`);
31
37
  this.connected = true;
32
38
  }
33
39
  async close() {
@@ -39,10 +45,12 @@ export class McpMyClient {
39
45
  async listTools() {
40
46
  this.assertConnected();
41
47
  const { tools } = await this.client.listTools();
48
+ logger.warn(`McpMyClient:listTools: ${JSON.stringify(tools, null, 2)}`);
42
49
  return tools;
43
50
  }
44
51
  async callTool(name, args = {}) {
45
52
  this.assertConnected();
53
+ logger.warn(`McpMyClient:callTool: name: ${name} args: ${JSON.stringify(args, null, 2)}`);
46
54
  return this.client.callTool({ name, arguments: args });
47
55
  }
48
56
  async listResources() {
@@ -1 +1 @@
1
- {"version":3,"file":"mcp_my_client.js","sourceRoot":"","sources":["../../../src/fastbrowser_mcp/libs/mcp_my_client.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AA2BnG,+EAA+E;AAC/E,+EAA+E;AAC/E,GAAG;AACH,+EAA+E;AAC/E,+EAA+E;AAE/E,0FAA0F;AAC1F,iGAAiG;AACjG,MAAM,OAAO,WAAW;IAMvB,YAA6B,OAAyB;QAAzB,YAAO,GAAP,OAAO,CAAkB;QAF9C,cAAS,GAAG,KAAK,CAAC;QAGzB,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC;YACxB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,OAAO,EAAE,OAAO,CAAC,OAAO;SACxB,CAAC,CAAC;QACH,WAAW;IACZ,CAAC;IAED,KAAK,CAAC,YAAY;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,OAAO;QACZ,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAE3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC9D,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,KAAK;QACV,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAC5B,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,SAAS;QACd,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC;IACd,CAAC;IAED,KAAK,CAAC,QAAQ,CACb,IAAY,EACZ,OAAgC,EAAE;QAElC,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAA4B,CAAC;IACnF,CAAC;IAED,KAAK,CAAC,aAAa;QAClB,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;QACxD,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,GAAW;QAC7B,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,WAAW;QAChB,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QACpD,OAAO,OAAO,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAY,EAAE,OAA+B,EAAE;QAC9D,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;IAEO,eAAe,CAAC,MAA0B;QACjD,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,OAAO;gBACX,OAAO,IAAI,oBAAoB,CAAC;oBAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,EAAE;oBACvB,GAAG,EAAE,MAAM,CAAC,GAAG;iBACf,CAAC,CAAC;YACJ,KAAK,MAAM;gBACV,OAAO,IAAI,6BAA6B,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;oBAC7D,WAAW,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE;iBACxC,CAAC,CAAC;QACL,CAAC;IACF,CAAC;IAEO,eAAe;QACtB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACtE,CAAC;IACF,CAAC;CACD"}
1
+ {"version":3,"file":"mcp_my_client.js","sourceRoot":"","sources":["../../../src/fastbrowser_mcp/libs/mcp_my_client.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp_target_helper.d.ts","sourceRoot":"","sources":["../../../src/fastbrowser_mcp/libs/mcp_target_helper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAE/D,MAAM,MAAM,gBAAgB,GAAG;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC,CAAC;AAEF,qBAAa,eAAe;IAC3B,MAAM,CAAC,kBAAkB;;;;;;;;;;;;MAYxB;IAQD,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,oBAAoB,GAAG;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE;WAsBvE,YAAY,CAAC,SAAS,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;WA6BhE,mBAAmB,CAAC,SAAS,EAAE,oBAAoB,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAkB/E,iBAAiB,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAmB1F,mBAAmB,CAAC,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAmB/F,sBAAsB,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAkB/F,sBAAsB,CAAC,SAAS,EAAE,oBAAoB,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAUlF,kBAAkB,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAkB3F,eAAe,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAUxF,kBAAkB,CAAC,SAAS,EAAE,oBAAoB,EAAE,QAAQ,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;CASvI"}
1
+ {"version":3,"file":"mcp_target_helper.d.ts","sourceRoot":"","sources":["../../../src/fastbrowser_mcp/libs/mcp_target_helper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAE/D,MAAM,MAAM,gBAAgB,GAAG;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC,CAAC;AAEF,qBAAa,eAAe;IAC3B,MAAM,CAAC,kBAAkB;;;;;;;;;;;;MAYxB;IAQD,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,oBAAoB,GAAG;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE;WAsBvE,YAAY,CAAC,SAAS,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;WA6BhE,mBAAmB,CAAC,SAAS,EAAE,oBAAoB,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAkB/E,iBAAiB,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAmB1F,mBAAmB,CAAC,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAmB/F,sBAAsB,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAkB/F,sBAAsB,CAAC,SAAS,EAAE,oBAAoB,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAUlF,kBAAkB,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAkB3F,eAAe,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAsBxF,kBAAkB,CAAC,SAAS,EAAE,oBAAoB,EAAE,QAAQ,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAUvI"}