browser-devtools-mcp 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -509,6 +509,10 @@ The server can be configured using environment variables:
509
509
 
510
510
  **Parameters:**
511
511
  - `key` (string, required): Key to press (e.g., "Enter", "Escape", "Tab")
512
+ - `selector` (string, optional): CSS selector to focus before sending the key
513
+ - `holdMs` (number, optional): Duration in milliseconds to hold the key (repeat duration if `repeat` is true)
514
+ - `repeat` (boolean, optional, default: false): If true, simulates key auto-repeat by pressing repeatedly during `holdMs`
515
+ - `repeatIntervalMs` (number, optional, default: 50, min: 10): Interval between repeated key presses in ms (only when `repeat` is true)
512
516
  </details>
513
517
 
514
518
  <details>
@@ -628,6 +632,20 @@ The server can be configured using environment variables:
628
632
  <summary><code>navigation_go-forward</code> - Navigates forward in browser history.</summary>
629
633
  </details>
630
634
 
635
+ <details>
636
+ <summary><code>navigation_reload</code> - Reloads the current page.</summary>
637
+
638
+ **Parameters:**
639
+ - `timeout` (number, optional): Maximum operation time in milliseconds (default: 0 - no timeout)
640
+ - `waitUntil` (enum, optional): When to consider navigation succeeded - "load", "domcontentloaded", "networkidle", or "commit" (default: "load")
641
+
642
+ **Returns:**
643
+ - `url` (string): Final URL after reload
644
+ - `status` (number): HTTP status code
645
+ - `statusText` (string): HTTP status text
646
+ - `ok` (boolean): Whether reload was successful (2xx status)
647
+ </details>
648
+
631
649
  ### Run Tools
632
650
 
633
651
  <details>
@@ -728,7 +746,7 @@ The server can be configured using environment variables:
728
746
  </details>
729
747
 
730
748
  <details>
731
- <summary><code>o11y-get-web-vitals</code> - Collects Web Vitals-style performance metrics and provides recommendations based on Google's thresholds.</summary>
749
+ <summary><code>o11y_get-web-vitals</code> - Collects Web Vitals-style performance metrics and provides recommendations based on Google's thresholds.</summary>
732
750
 
733
751
  **Parameters:**
734
752
  - `waitMs` (number, optional): Optional wait duration in milliseconds before reading metrics (default: 0, max: 30000). Useful to allow LCP/INP/CLS to settle after interactions
@@ -1009,7 +1027,7 @@ The server can be configured using environment variables:
1009
1027
  ### Figma Tools
1010
1028
 
1011
1029
  <details>
1012
- <summary><code>compare-page-with-design</code> - Compares the current page UI against a Figma design snapshot and returns a combined similarity score.</summary>
1030
+ <summary><code>figma_compare-page-with-design</code> - Compares the current page UI against a Figma design snapshot and returns a combined similarity score.</summary>
1013
1031
 
1014
1032
  **Parameters:**
1015
1033
  - `figmaFileKey` (string, required): Figma file key (the part after /file/ in Figma URL)
@@ -1200,7 +1218,7 @@ This server enables AI assistants to:
1200
1218
  4. Check console messages with `o11y_get-console-messages` for errors
1201
1219
  5. Monitor HTTP requests with `o11y_get-http-requests` to see API calls
1202
1220
  6. Capture accessibility snapshots with `a11y_take-aria-snapshot` and `accessibility_take-ax-tree-snapshot` to understand page structure
1203
- 7. Compare page with Figma design using `compare-page-with-design` to validate design parity
1221
+ 7. Compare page with Figma design using `figma_compare-page-with-design` to validate design parity
1204
1222
  8. Interact with elements using `interaction_click`, `interaction_fill`, etc.
1205
1223
  9. Extract content using `content_get-as-html` or `content_get-as-text`
1206
1224
  10. Save the page as PDF using `content_save-as-pdf` for documentation
package/dist/index.js CHANGED
@@ -37,6 +37,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  return (mod && mod.__esModule) ? mod : { "default": mod };
38
38
  };
39
39
  Object.defineProperty(exports, "__esModule", { value: true });
40
+ exports.default = createServer;
40
41
  const config = __importStar(require("./config"));
41
42
  const logger = __importStar(require("./logger"));
42
43
  const server_1 = require("./server");
@@ -97,7 +98,7 @@ function _getConfig() {
97
98
  }
98
99
  async function _startStdioServer() {
99
100
  const transport = new stdio_js_1.StdioServerTransport();
100
- await (0, server_1.createServer)(transport, {
101
+ await (0, server_1.createAndConnectServer)(transport, {
101
102
  config: _getConfig(),
102
103
  });
103
104
  }
@@ -140,7 +141,7 @@ async function _createTransport(ctx) {
140
141
  logger.debug(`MCP session closed with id ${sessionId}`);
141
142
  },
142
143
  });
143
- holder.server = await (0, server_1.createServer)(transport, {
144
+ holder.server = await (0, server_1.createAndConnectServer)(transport, {
144
145
  config: serverConfig,
145
146
  });
146
147
  return transport;
@@ -328,4 +329,10 @@ main().catch((err) => {
328
329
  logger.error('MCP server error', err);
329
330
  process.exit(1);
330
331
  });
332
+ function createServer({ config, session, env }) {
333
+ const mcpServer = (0, server_1.createServer)({
334
+ config: _getConfig(),
335
+ });
336
+ return mcpServer.server;
337
+ }
331
338
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -81,7 +81,7 @@ UI debugging guidance for AI agents:
81
81
  semantics (labels, roles, disabled state, focusability) match the visible UI.
82
82
  - Before taking screenshots or snapshots, wait for network idle to ensure page stability.
83
83
  - Use Web Vitals tool to assess performance and identify optimization opportunities.
84
- - For design validation, use "compare-page-with-design" to compare live page UI against Figma designs:
84
+ - For design validation, use "figma_compare-page-with-design" to compare live page UI against Figma designs:
85
85
  - Use "semantic" MSSIM mode for comparing real data vs design data (less sensitive to text/value differences)
86
86
  - Use "raw" MSSIM mode only when expecting near pixel-identical output
87
87
  - If layout mismatch is suspected, run with fullPage=true first, then retry with a selector for the problematic region
@@ -123,7 +123,7 @@ When asked to check for UI problems, layout issues, or visual bugs, ALWAYS follo
123
123
  - Best for understanding page hierarchy and accessibility issues
124
124
  - Use in combination with AX tree snapshot for comprehensive analysis
125
125
 
126
- 5. **Design Comparison** (if Figma design is available): Call "compare-page-with-design" tool
126
+ 5. **Design Comparison** (if Figma design is available): Call "figma_compare-page-with-design" tool
127
127
  - Compares live page UI against Figma design snapshot
128
128
  - Returns combined similarity score using multiple signals (MSSIM, image embedding, text embedding)
129
129
  - Use "semantic" mode for real data vs design data comparisons
package/dist/server.js CHANGED
@@ -34,6 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.createServer = createServer;
37
+ exports.createAndConnectServer = createAndConnectServer;
37
38
  exports.createSession = createSession;
38
39
  const logger = __importStar(require("./logger"));
39
40
  const server_info_1 = require("./server-info");
@@ -81,7 +82,7 @@ function _toResponse(response) {
81
82
  isError: false,
82
83
  };
83
84
  }
84
- async function createServer(transport, opts) {
85
+ function createServer(opts) {
85
86
  const server = new mcp_js_1.McpServer({
86
87
  name: server_info_1.SERVER_NAME,
87
88
  version: server_info_1.SERVER_VERSION,
@@ -107,7 +108,7 @@ async function createServer(transport, opts) {
107
108
  description: "Defines the assistant's general reasoning and tool usage rules.",
108
109
  messages,
109
110
  }));
110
- const toolExecutor = new tools_1.ToolExecutor(() => transport.sessionId);
111
+ const toolExecutor = new tools_1.ToolExecutor(() => opts.sessionIdProvider ? opts.sessionIdProvider() : '');
111
112
  const createToolCallback = (tool) => {
112
113
  return async (args) => {
113
114
  try {
@@ -132,6 +133,13 @@ async function createServer(transport, opts) {
132
133
  outputSchema: t.outputSchema(),
133
134
  }, createToolCallback(t));
134
135
  });
136
+ return server;
137
+ }
138
+ async function createAndConnectServer(transport, opts) {
139
+ const server = createServer({
140
+ config: opts.config,
141
+ sessionIdProvider: () => transport.sessionId,
142
+ });
135
143
  await server.connect(transport);
136
144
  return server;
137
145
  }
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ const path_1 = __importDefault(require("path"));
10
10
  const zod_1 = require("zod");
11
11
  var SizeUnit;
12
12
  (function (SizeUnit) {
13
- SizeUnit["PIXED"] = "px";
13
+ SizeUnit["PIXEL"] = "px";
14
14
  SizeUnit["INCH"] = "in";
15
15
  SizeUnit["CENTIMETER"] = "cm";
16
16
  SizeUnit["MILLIMETER"] = "mm";
@@ -9,7 +9,7 @@ const DEFAULT_FULL_PAGE = true;
9
9
  const DEFAULT_MSSIM_MODE = 'semantic';
10
10
  class ComparePageWithDesign {
11
11
  name() {
12
- return 'compare-page-with-design';
12
+ return 'figma_compare-page-with-design';
13
13
  }
14
14
  description() {
15
15
  return `
@@ -1 +1 @@
1
- {"version":3,"file":"compare-page-with-design.js","sourceRoot":"","sources":["../../../src/tools/figma/compare-page-with-design.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compare-page-with-design.js","sourceRoot":"","sources":["../../../src/tools/figma/compare-page-with-design.ts"],"names":[],"mappings":"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"}
@@ -2,33 +2,96 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PressKey = void 0;
4
4
  const zod_1 = require("zod");
5
+ const DEFAULT_REPEAT_INTERVAL_MS = 50;
6
+ const MIN_REPEAT_INTERVAL_MS = 10;
5
7
  class PressKey {
6
8
  name() {
7
9
  return 'interaction_press-key';
8
10
  }
9
11
  description() {
10
- return 'Presses a keyboard key.';
12
+ return `
13
+ Presses a keyboard key with optional "hold" and auto-repeat behavior.
14
+
15
+ Key facts:
16
+ - keyboard.press(key, { delay }) does NOT trigger OS-style auto-repeat.
17
+ - Some UI behaviors (especially scrolling) require repeated keydown events.
18
+ - Use repeat=true + holdMs to approximate real keyboard holding.
19
+
20
+ Execution logic:
21
+ - If selector is provided, the element is focused first.
22
+ - If holdMs is omitted or repeat=false:
23
+ → a single keyboard.press() is executed.
24
+ - If holdMs is provided AND repeat=true:
25
+ → keyboard.press() is called repeatedly until holdMs elapses.
26
+ `.trim();
11
27
  }
12
28
  inputSchema() {
13
29
  return {
14
30
  key: zod_1.z
15
31
  .string()
16
- .describe('Key to press (e.g. "Enter", "ArrowDown", "a").'),
32
+ .describe('Keyboard key to press (e.g. "Enter", "ArrowDown", "a").'),
17
33
  selector: zod_1.z
18
34
  .string()
19
- .describe('Optional CSS selector to focus before pressing key.')
35
+ .describe('Optional CSS selector to focus before sending the key.')
20
36
  .optional(),
37
+ holdMs: zod_1.z
38
+ .number()
39
+ .int()
40
+ .min(0)
41
+ .describe('Optional duration in milliseconds to hold the key. With repeat=true, this is the total repeat duration.')
42
+ .optional(),
43
+ repeat: zod_1.z
44
+ .boolean()
45
+ .optional()
46
+ .default(false)
47
+ .describe('If true, simulates key auto-repeat by pressing the key repeatedly (useful for scrolling).'),
48
+ repeatIntervalMs: zod_1.z
49
+ .number()
50
+ .int()
51
+ .min(MIN_REPEAT_INTERVAL_MS)
52
+ .optional()
53
+ .default(DEFAULT_REPEAT_INTERVAL_MS)
54
+ .describe(`Interval between repeated key presses in ms (only when repeat=true).`),
21
55
  };
22
56
  }
23
57
  outputSchema() {
24
58
  return {};
25
59
  }
26
60
  async handle(context, args) {
61
+ /**
62
+ * Focus target element if selector is provided.
63
+ * Otherwise, key events go to the currently focused element or page.
64
+ */
27
65
  if (args.selector) {
28
66
  const element = await context.page.waitForSelector(args.selector);
29
67
  await element.focus();
30
68
  }
31
- await context.page.keyboard.press(args.key);
69
+ const holdMs = args.holdMs ?? 0;
70
+ const repeat = args.repeat === true;
71
+ /**
72
+ * Simple case:
73
+ * - No hold requested OR repeat disabled
74
+ * - Single press with optional delay
75
+ */
76
+ if (holdMs <= 0 || repeat === false) {
77
+ await context.page.keyboard.press(args.key, holdMs > 0 ? { delay: holdMs } : undefined);
78
+ return {};
79
+ }
80
+ /**
81
+ * Auto-repeat simulation:
82
+ * - Repeated key presses until holdMs elapses
83
+ * - Approximates native keyboard repeat behavior
84
+ */
85
+ const repeatIntervalMs = typeof args.repeatIntervalMs === 'number' &&
86
+ Number.isFinite(args.repeatIntervalMs) &&
87
+ args.repeatIntervalMs >= MIN_REPEAT_INTERVAL_MS
88
+ ? Math.floor(args.repeatIntervalMs)
89
+ : DEFAULT_REPEAT_INTERVAL_MS;
90
+ const startMs = Date.now();
91
+ while (Date.now() - startMs < holdMs) {
92
+ await context.page.keyboard.press(args.key);
93
+ await context.page.waitForTimeout(repeatIntervalMs);
94
+ }
32
95
  return {};
33
96
  }
34
97
  }
@@ -1 +1 @@
1
- {"version":3,"file":"press-key.js","sourceRoot":"","sources":["../../../src/tools/interaction/press-key.ts"],"names":[],"mappings":";;;AAUA,6BAAwB;AASxB,MAAa,QAAQ;IACjB,IAAI;QACA,OAAO,uBAAuB,CAAC;IACnC,CAAC;IAED,WAAW;QACP,OAAO,yBAAyB,CAAC;IACrC,CAAC;IAED,WAAW;QACP,OAAO;YACH,GAAG,EAAE,OAAC;iBACD,MAAM,EAAE;iBACR,QAAQ,CAAC,gDAAgD,CAAC;YAC/D,QAAQ,EAAE,OAAC;iBACN,MAAM,EAAE;iBACR,QAAQ,CAAC,qDAAqD,CAAC;iBAC/D,QAAQ,EAAE;SAClB,CAAC;IACN,CAAC;IAED,YAAY;QACR,OAAO,EAAE,CAAC;IACd,CAAC;IAED,KAAK,CAAC,MAAM,CACR,OAA0B,EAC1B,IAAmB;QAEnB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,MAAM,OAAO,GAAkB,MAAM,OAAO,CAAC,IAAI,CAAC,eAAe,CAC7D,IAAI,CAAC,QAAQ,CAChB,CAAC;YACF,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QAC1B,CAAC;QACD,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5C,OAAO,EAAE,CAAC;IACd,CAAC;CACJ;AAtCD,4BAsCC"}
1
+ {"version":3,"file":"press-key.js","sourceRoot":"","sources":["../../../src/tools/interaction/press-key.ts"],"names":[],"mappings":";;;AAUA,6BAAwB;AAExB,MAAM,0BAA0B,GAAW,EAAE,CAAC;AAC9C,MAAM,sBAAsB,GAAW,EAAE,CAAC;AAoE1C,MAAa,QAAQ;IACjB,IAAI;QACA,OAAO,uBAAuB,CAAC;IACnC,CAAC;IAED,WAAW;QACP,OAAO;;;;;;;;;;;;;;SAcN,CAAC,IAAI,EAAE,CAAC;IACb,CAAC;IAED,WAAW;QACP,OAAO;YACH,GAAG,EAAE,OAAC;iBACD,MAAM,EAAE;iBACR,QAAQ,CACL,yDAAyD,CAC5D;YACL,QAAQ,EAAE,OAAC;iBACN,MAAM,EAAE;iBACR,QAAQ,CACL,wDAAwD,CAC3D;iBACA,QAAQ,EAAE;YACf,MAAM,EAAE,OAAC;iBACJ,MAAM,EAAE;iBACR,GAAG,EAAE;iBACL,GAAG,CAAC,CAAC,CAAC;iBACN,QAAQ,CACL,yGAAyG,CAC5G;iBACA,QAAQ,EAAE;YACf,MAAM,EAAE,OAAC;iBACJ,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,OAAO,CAAC,KAAK,CAAC;iBACd,QAAQ,CACL,2FAA2F,CAC9F;YACL,gBAAgB,EAAE,OAAC;iBACd,MAAM,EAAE;iBACR,GAAG,EAAE;iBACL,GAAG,CAAC,sBAAsB,CAAC;iBAC3B,QAAQ,EAAE;iBACV,OAAO,CAAC,0BAA0B,CAAC;iBACnC,QAAQ,CACL,sEAAsE,CACzE;SACR,CAAC;IACN,CAAC;IAED,YAAY;QACR,OAAO,EAAE,CAAC;IACd,CAAC;IAED,KAAK,CAAC,MAAM,CACR,OAA0B,EAC1B,IAAmB;QAEnB;;;WAGG;QACH,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,MAAM,OAAO,GAAkB,MAAM,OAAO,CAAC,IAAI,CAAC,eAAe,CAC7D,IAAI,CAAC,QAAQ,CAChB,CAAC;YACF,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QAC1B,CAAC;QAED,MAAM,MAAM,GAAW,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;QACxC,MAAM,MAAM,GAAY,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC;QAE7C;;;;WAIG;QACH,IAAI,MAAM,IAAI,CAAC,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YAClC,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAC7B,IAAI,CAAC,GAAG,EACR,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAC7C,CAAC;YACF,OAAO,EAAE,CAAC;QACd,CAAC;QAED;;;;WAIG;QACH,MAAM,gBAAgB,GAClB,OAAO,IAAI,CAAC,gBAAgB,KAAK,QAAQ;YACzC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC;YACtC,IAAI,CAAC,gBAAgB,IAAI,sBAAsB;YAC3C,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC;YACnC,CAAC,CAAC,0BAA0B,CAAC;QAErC,MAAM,OAAO,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;QAEnC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,GAAG,MAAM,EAAE,CAAC;YACnC,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC5C,MAAM,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;QACxD,CAAC;QAED,OAAO,EAAE,CAAC;IACd,CAAC;CACJ;AAvHD,4BAuHC"}
@@ -4,5 +4,11 @@ exports.tools = void 0;
4
4
  const go_back_1 = require("./go-back");
5
5
  const go_forward_1 = require("./go-forward");
6
6
  const go_to_1 = require("./go-to");
7
- exports.tools = [new go_back_1.GoBack(), new go_forward_1.GoForward(), new go_to_1.GoTo()];
7
+ const reload_1 = require("./reload");
8
+ exports.tools = [
9
+ new go_back_1.GoBack(),
10
+ new go_forward_1.GoForward(),
11
+ new go_to_1.GoTo(),
12
+ new reload_1.Reload(),
13
+ ];
8
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/navigation/index.ts"],"names":[],"mappings":";;;AACA,uCAAmC;AACnC,6CAAyC;AACzC,mCAA+B;AAElB,QAAA,KAAK,GAAW,CAAC,IAAI,gBAAM,EAAE,EAAE,IAAI,sBAAS,EAAE,EAAE,IAAI,YAAI,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/navigation/index.ts"],"names":[],"mappings":";;;AACA,uCAAmC;AACnC,6CAAyC;AACzC,mCAA+B;AAC/B,qCAAkC;AAErB,QAAA,KAAK,GAAW;IACzB,IAAI,gBAAM,EAAE;IACZ,IAAI,sBAAS,EAAE;IACf,IAAI,YAAI,EAAE;IACV,IAAI,eAAM,EAAE;CACf,CAAC"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Reload = void 0;
4
+ const zod_1 = require("zod");
5
+ const DEFAULT_TIMEOUT_MS = 0;
6
+ const DEFAULT_WAIT_UNTIL = 'load';
7
+ class Reload {
8
+ name() {
9
+ return 'navigation_reload';
10
+ }
11
+ description() {
12
+ return `
13
+ Reloads the current page.
14
+ In case of multiple redirects, the navigation resolves with the response of the last redirect.
15
+ If the reload does not produce a response, returns empty response.
16
+ `;
17
+ }
18
+ inputSchema() {
19
+ return {
20
+ timeout: zod_1.z
21
+ .number()
22
+ .int()
23
+ .nonnegative()
24
+ .describe('Maximum operation time in milliseconds. Defaults to `0` - no timeout.')
25
+ .optional()
26
+ .default(DEFAULT_TIMEOUT_MS),
27
+ waitUntil: zod_1.z
28
+ .enum(['load', 'domcontentloaded', 'networkidle', 'commit'])
29
+ .describe(`
30
+ When to consider operation succeeded, defaults to \`load\`. Events can be either:
31
+ - \`domcontentloaded\`: Consider operation to be finished when the \`DOMContentLoaded\` event is fired.
32
+ - \`load\`: Consider operation to be finished when the \`load\` event is fired.
33
+ - \`networkidle\`: **DISCOURAGED** consider operation to be finished when there are no network connections for
34
+ at least \`500\` ms. Don't use this method for testing, rely on web assertions to assess readiness instead.
35
+ - \`commit\`: Consider operation to be finished when network response is received and the document started loading.`)
36
+ .optional()
37
+ .default(DEFAULT_WAIT_UNTIL),
38
+ };
39
+ }
40
+ outputSchema() {
41
+ return {
42
+ url: zod_1.z
43
+ .string()
44
+ .describe('Contains the URL of the reloaded page.')
45
+ .optional(),
46
+ status: zod_1.z
47
+ .number()
48
+ .int()
49
+ .positive()
50
+ .describe('Contains the status code of the reloaded page (e.g., 200 for a success).')
51
+ .optional(),
52
+ statusText: zod_1.z
53
+ .string()
54
+ .describe('Contains the status text of the reloaded page (e.g. usually an "OK" for a success).')
55
+ .optional(),
56
+ ok: zod_1.z
57
+ .boolean()
58
+ .describe('Contains a boolean stating whether the reloaded page was successful (status in the range 200-299) or not.')
59
+ .optional(),
60
+ };
61
+ }
62
+ async handle(context, args) {
63
+ const response = await context.page.reload({
64
+ timeout: args.timeout,
65
+ waitUntil: args.waitUntil,
66
+ });
67
+ return {
68
+ url: response?.url(),
69
+ status: response?.status(),
70
+ statusText: response?.statusText(),
71
+ ok: response?.ok(),
72
+ };
73
+ }
74
+ }
75
+ exports.Reload = Reload;
76
+ //# sourceMappingURL=reload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reload.js","sourceRoot":"","sources":["../../../src/tools/navigation/reload.ts"],"names":[],"mappings":";;;AAUA,6BAAwB;AAExB,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAC7B,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAclC,MAAa,MAAM;IACf,IAAI;QACA,OAAO,mBAAmB,CAAC;IAC/B,CAAC;IAED,WAAW;QACP,OAAO;;;;SAIN,CAAC;IACN,CAAC;IAED,WAAW;QACP,OAAO;YACH,OAAO,EAAE,OAAC;iBACL,MAAM,EAAE;iBACR,GAAG,EAAE;iBACL,WAAW,EAAE;iBACb,QAAQ,CACL,uEAAuE,CAC1E;iBACA,QAAQ,EAAE;iBACV,OAAO,CAAC,kBAAkB,CAAC;YAChC,SAAS,EAAE,OAAC;iBACP,IAAI,CAAC,CAAC,MAAM,EAAE,kBAAkB,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;iBAC3D,QAAQ,CACL;;;;;;oHAMgG,CACnG;iBACA,QAAQ,EAAE;iBACV,OAAO,CAAC,kBAAkB,CAAC;SACnC,CAAC;IACN,CAAC;IAED,YAAY;QACR,OAAO;YACH,GAAG,EAAE,OAAC;iBACD,MAAM,EAAE;iBACR,QAAQ,CAAC,wCAAwC,CAAC;iBAClD,QAAQ,EAAE;YACf,MAAM,EAAE,OAAC;iBACJ,MAAM,EAAE;iBACR,GAAG,EAAE;iBACL,QAAQ,EAAE;iBACV,QAAQ,CACL,0EAA0E,CAC7E;iBACA,QAAQ,EAAE;YACf,UAAU,EAAE,OAAC;iBACR,MAAM,EAAE;iBACR,QAAQ,CACL,qFAAqF,CACxF;iBACA,QAAQ,EAAE;YACf,EAAE,EAAE,OAAC;iBACA,OAAO,EAAE;iBACT,QAAQ,CACL,2GAA2G,CAC9G;iBACA,QAAQ,EAAE;SAClB,CAAC;IACN,CAAC;IAED,KAAK,CAAC,MAAM,CACR,OAA0B,EAC1B,IAAiB;QAEjB,MAAM,QAAQ,GAAoB,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;YACxD,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC5B,CAAC,CAAC;QACH,OAAO;YACH,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE;YACpB,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE;YAC1B,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE;YAClC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;SACrB,CAAC;IACN,CAAC;CACJ;AApFD,wBAoFC"}
@@ -179,7 +179,7 @@ function buildRecommendations(params) {
179
179
  }
180
180
  class GetWebVitals {
181
181
  name() {
182
- return 'o11y-get-web-vitals';
182
+ return 'o11y_get-web-vitals';
183
183
  }
184
184
  description() {
185
185
  return `
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "browser-devtools-mcp",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "MCP Server for Browser Dev Tools",
5
5
  "private": false,
6
6
  "type": "commonjs",
@@ -13,7 +13,10 @@
13
13
  },
14
14
  "author": "Serkan Ozal <serkanozal86@gmail.com> (https://github.com/serkan-ozal)",
15
15
  "homepage": "https://github.com/serkan-ozal/browser-devtools-mcp",
16
- "repository": "serkan-ozal/browser-devtools-mcp",
16
+ "repository": {
17
+ "type": "git",
18
+ "url": "https://github.com/serkan-ozal/browser-devtools-mcp.git"
19
+ },
17
20
  "license": "MIT",
18
21
  "keywords": [
19
22
  "ai",
@@ -26,6 +29,7 @@
26
29
  "publishConfig": {
27
30
  "access": "public"
28
31
  },
32
+ "mcpName": "io.github.serkan-ozal/browser-devtools-mcp",
29
33
  "scripts": {
30
34
  "clean": "rimraf dist",
31
35
  "build:otel": "node scripts/build-otel.mjs",
@@ -40,7 +44,8 @@
40
44
  "lint:format": "prettier --config .prettierrc.json --write ./src/*.ts ./src/**/*.ts ./src/**/**/*.ts ./src/**/**/**/*.ts",
41
45
  "release:patch": "release-it --ci -VV --git.commit --git.push --git.tag --git.tagName='v${version}' --github.release --github.releaseNotes='echo \"Release ${version}\"' --no-git.requireCleanWorkingDir --no-git.requireUpstream --npm.publish --npm.skipChecks",
42
46
  "release:minor": "release-it minor --ci -VV --git.commit --git.push --git.tag --git.tagName='v${version}' --github.release --github.releaseNotes='echo \"Release ${version}\"' --no-git.requireCleanWorkingDir --no-git.requireUpstream --npm.publish --npm.skipChecks",
43
- "release:major": "release-it major --ci -VV --git.commit --git.push --git.tag --git.tagName='v${version}' --github.release --github.releaseNotes='echo \"Release ${version}\"' --no-git.requireCleanWorkingDir --no-git.requireUpstream --npm.publish --npm.skipChecks"
47
+ "release:major": "release-it major --ci -VV --git.commit --git.push --git.tag --git.tagName='v${version}' --github.release --github.releaseNotes='echo \"Release ${version}\"' --no-git.requireCleanWorkingDir --no-git.requireUpstream --npm.publish --npm.skipChecks",
48
+ "mcpb:pack": "mkdir -p .mcpb && mcpb pack && mv browser-devtools-mcp.mcpb .mcpb/browser-devtools.mcpb"
44
49
  },
45
50
  "files": [
46
51
  "dist/",
@@ -49,6 +54,7 @@
49
54
  "LICENSE"
50
55
  ],
51
56
  "devDependencies": {
57
+ "@anthropic-ai/mcpb": "^2.1.2",
52
58
  "@opentelemetry/auto-instrumentations-web": "^0.54.0",
53
59
  "@opentelemetry/context-zone": "^2.2.0",
54
60
  "@opentelemetry/exporter-trace-otlp-http": "^0.208.0",
@@ -82,6 +88,7 @@
82
88
  "playwright": "^1.57.0",
83
89
  "pngjs": "^7.0.0",
84
90
  "sharp": "^0.34.5",
85
- "ssim.js": "^3.5.0"
91
+ "ssim.js": "^3.5.0",
92
+ "zod": "^3.24.3"
86
93
  }
87
94
  }