Alex Rudenko
4724bbba93
fix: avoid no page selected errors ( #537 )
...
Uses object identity to track the selected page. This helps to be in
sync with the browser state better.
Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/492
---------
Co-authored-by: Nikolay Vitkov <34244704+Lightning00Blade@users.noreply.github.com >
2025-11-07 12:55:01 +01:00
Connor Clark
36504d29ca
feat: add insightSetId to performance_analyze_insight ( #518 )
...
This should land with / after
https://github.com/ChromeDevTools/chrome-devtools-mcp/pull/508
2025-11-04 08:18:04 +00:00
dependabot[bot]
6af913348f
chore(deps-dev): bump chrome-devtools-frontend from 1.0.1536371 to 1.0.1538310 in the bundled group ( #508 )
...
Bumps the bundled group with 1 update:
[chrome-devtools-frontend](https://github.com/ChromeDevTools/devtools-frontend ).
Updates `chrome-devtools-frontend` from 1.0.1536371 to 1.0.1538310
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/0339e4bc4757f5ac2597ca7583df9ec622f822f0 "><code>0339e4b</code></a>
Adopt UI eng vision in the OriginTrialTokenRows</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/93bd5da91a5ce6964a305f10704705a31467daa2 "><code>93bd5da</code></a>
Update DevTools DEPS (trusted)</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/346f3dfde240a34b2473cb99a094ce59279a54aa "><code>346f3df</code></a>
Add throttling indications in the performance panel</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/a0001354e75e51c513e33e6e6cbba555b7c949e2 "><code>a000135</code></a>
Update .env description</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/e828c4b947726794560811d1e4b7416a74eaaaa3 "><code>e828c4b</code></a>
Update Chrome (for Testing) PIN</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/ff9456267a699a00a574076ef4df3d4dc9a91b83 "><code>ff94562</code></a>
[eslint] Enforce custom elements naming</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/e47cf443a3283de7f0077ea41b2d074c1054d54c "><code>e47cf44</code></a>
Add code for creating request and calling generateCode</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/d31e1d757a684bf6765de95fa8bc16386e267a0f "><code>d31e1d7</code></a>
Speculation Rules: move NOT_TRIGGERED to bottom when sorted</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/e76b25549adccc38581e90b2550f89c34aa2b21f "><code>e76b255</code></a>
Mostly migrate RequestTimingView.ts</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/ff3c3031a3473b36e5d5aabbb93d65a7ae98b115 "><code>ff3c303</code></a>
Use unqualified Lit identifiers and call update render function names in
the ...</li>
<li>Additional commits viewable in <a
href="https://github.com/ChromeDevTools/devtools-frontend/compare/v1.0.1536371...v1.0.1538310 ">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores )
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
</details>
---------
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alex Rudenko <alexrudenko@chromium.org >
2025-11-04 08:00:39 +00:00
Alex Rudenko
4a83574961
feat: fetch DOM node selected in the DevTools Elements panel ( #486 )
...
Refs https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/129
2025-10-31 11:07:10 +01:00
Alex Rudenko
2f448e84ea
fix: improve get_network_request description ( #500 )
...
Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/497
2025-10-30 11:52:09 +01:00
Alex Rudenko
c06f4522ee
refactor: merge emulate tools into one ( #494 )
...
Merges emulateCpu and emulateNetwork into a single tool to reduce token
consumption. Changes descriptions to be more concise.
2025-10-30 08:50:36 +00:00
dependabot[bot]
e5653b0516
chore(deps-dev): bump the bundled group with 2 updates ( #490 )
...
Bumps the bundled group with 2 updates:
[chrome-devtools-frontend](https://github.com/ChromeDevTools/devtools-frontend )
and [puppeteer](https://github.com/puppeteer/puppeteer ).
Updates `chrome-devtools-frontend` from 1.0.1534717 to 1.0.1536371
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/f9114c7810effda21b986fedddf791fb41a53bf8 "><code>f9114c7</code></a>
Update Chrome (for Testing) PIN</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/420b33e69a9639a0b2fa82b4a1aa888782a68c75 "><code>420b33e</code></a>
[RPP] In trace_app, ignore frames not in the primary main frame</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/02e471449f14ca98d0c03391e5400489fbbb1fcd "><code>02e4714</code></a>
Add option for Tooltip to be triggered by both <code>hover</code> and
<code>click</code></li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/a53e59d6e84dd432d9e791dc9c73aad37fc34c85 "><code>a53e59d</code></a>
Restructure BFCache view to make adopting UI eng vision easier</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/02896d3ce1b19e97443a29e4e3435bc275beea40 "><code>02896d3</code></a>
Add placeholder for Keybind recording</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/b8c6a36a03db91b39f24b1939d8e1b7077bf2776 "><code>b8c6a36</code></a>
[Console Insights Teasers] Update KnownContextValues</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/ddf2fedafe978ef2e740e01d1591f7d7a2e48591 "><code>ddf2fed</code></a>
Roll browser-protocol</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/ffaf345e9503ac3c51b0f76431a379194a13a540 "><code>ffaf345</code></a>
Add unit test for Widget.focus() behavior</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/a8f58dd5654817064975d239376cd855a3de229e "><code>a8f58dd</code></a>
Update DevTools DEPS (trusted)</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/d8a5a9140f7fc25563c442bbcf001b4892c550ce "><code>d8a5a91</code></a>
Make setDefaultFocusedElement use autofocus attribute</li>
<li>Additional commits viewable in <a
href="https://github.com/ChromeDevTools/devtools-frontend/compare/v1.0.1534717...v1.0.1536371 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `puppeteer` from 24.26.1 to 24.27.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/puppeteer/puppeteer/releases ">puppeteer's
releases</a>.</em></p>
<blockquote>
<h2>puppeteer-core: v24.27.0</h2>
<h2><a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-core-v24.26.1...puppeteer-core-v24.27.0 ">24.27.0</a>
(2025-10-29)</h2>
<h3>🎉 Features</h3>
<ul>
<li>add window options to newPage() (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14363 ">#14363</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/1d4f48d80760231bc765f26e4648b4d0c6de66f4 ">1d4f48d</a>)</li>
<li>roll to Chrome 142.0.7444.59 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14381 ">#14381</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/54d504db0515f150b97862aa1415008dcfe9fcfa ">54d504d</a>)</li>
<li>support ignoreCache in page.reload() (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14365 ">#14365</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/3794e8f0136f6e25c27bab5b6e89723fd9b6a239 ">3794e8f</a>)</li>
</ul>
<h3>🛠️ Fixes</h3>
<ul>
<li>roll to Firefox 144.0.2 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14382 ">#14382</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/122f56ec6d5a71e48e3e4f00cae2e097bb8d2ce8 ">122f56e</a>)</li>
</ul>
<h3>📄 Documentation</h3>
<ul>
<li>fix api-extractor warnings (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14370 ">#14370</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/538c480a2b485b1ae9b4d25645b0b99e53967855 ">538c480</a>)</li>
</ul>
<h2>puppeteer: v24.27.0</h2>
<h2><a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-v24.26.1...puppeteer-v24.27.0 ">24.27.0</a>
(2025-10-29)</h2>
<h3>🎉 Features</h3>
<ul>
<li>roll to Chrome 142.0.7444.59 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14381 ">#14381</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/54d504db0515f150b97862aa1415008dcfe9fcfa ">54d504d</a>)</li>
</ul>
<h3>♻️ Chores</h3>
<ul>
<li>extract things required for ESM migration (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14369 ">#14369</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/c38313c4ebde082573409d1dfb358534673f42f4 ">c38313c</a>)</li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>The following workspace dependencies were updated
<ul>
<li>dependencies
<ul>
<li>puppeteer-core bumped from 24.26.1 to 24.27.0</li>
</ul>
</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/puppeteer/puppeteer/blob/main/CHANGELOG.md ">puppeteer's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-v24.26.1...puppeteer-v24.27.0 ">24.27.0</a>
(2025-10-29)</h2>
<h3>🎉 Features</h3>
<ul>
<li>add window options to newPage() (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14363 ">#14363</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/1d4f48d80760231bc765f26e4648b4d0c6de66f4 ">1d4f48d</a>)</li>
<li>roll to Chrome 142.0.7444.59 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14381 ">#14381</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/54d504db0515f150b97862aa1415008dcfe9fcfa ">54d504d</a>)</li>
<li>support ignoreCache in page.reload() (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14365 ">#14365</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/3794e8f0136f6e25c27bab5b6e89723fd9b6a239 ">3794e8f</a>)</li>
</ul>
<h3>♻️ Chores</h3>
<ul>
<li>extract things required for ESM migration (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14369 ">#14369</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/c38313c4ebde082573409d1dfb358534673f42f4 ">c38313c</a>)</li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>The following workspace dependencies were updated
<ul>
<li>dependencies
<ul>
<li>puppeteer-core bumped from 24.26.1 to 24.27.0</li>
</ul>
</li>
</ul>
</li>
</ul>
<h3>🛠️ Fixes</h3>
<ul>
<li>roll to Firefox 144.0.2 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14382 ">#14382</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/122f56ec6d5a71e48e3e4f00cae2e097bb8d2ce8 ">122f56e</a>)</li>
</ul>
<h3>📄 Documentation</h3>
<ul>
<li>fix api-extractor warnings (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14370 ">#14370</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/538c480a2b485b1ae9b4d25645b0b99e53967855 ">538c480</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/f73ebcde308687cd3f8d44596371a02c86626fd6 "><code>f73ebcd</code></a>
chore: release main (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14378 ">#14378</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/122f56ec6d5a71e48e3e4f00cae2e097bb8d2ce8 "><code>122f56e</code></a>
fix: roll to Firefox 144.0.2 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14382 ">#14382</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/54d504db0515f150b97862aa1415008dcfe9fcfa "><code>54d504d</code></a>
feat: roll to Chrome 142.0.7444.59 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14381 ">#14381</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/a851dec9b2982dcbe1abc039879c1317a29a7ffd "><code>a851dec</code></a>
chore: expose backendNodeId in a11y snapshot (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14379 ">#14379</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/06f48d784a0912becd74df5e21ce0a79dfe05c7b "><code>06f48d7</code></a>
build: remove test server from release-please (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14377 ">#14377</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/d94bbd14278d9de13e660dbfc95177d52b783542 "><code>d94bbd1</code></a>
chore(deps): bump the all group with 3 updates (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14374 ">#14374</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/b84b188c53d0d599fa98e8df6ec3d89e8f68a40b "><code>b84b188</code></a>
build: fix default config (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14376 ">#14376</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/97e2528ec77475c9379012acda3d36847d34d17b "><code>97e2528</code></a>
chore(deps-dev): bump the dev-dependencies group with 7 updates (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14373 ">#14373</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/26ef878cbd8aa1d01a5fe3b533e04d987ee2b615 "><code>26ef878</code></a>
chore(deps): bump node from <code>2bb201f</code> to <code>23c24e8</code>
in /docker in the all grou...</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/784d5ad02aa475d6c9deedd658552d156e8c6a69 "><code>784d5ad</code></a>
build(deps): bump mime to v4 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14372 ">#14372</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-v24.26.1...puppeteer-v24.27.0 ">compare
view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
</details>
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-29 08:18:31 +00:00
Alex Rudenko
796aed72b7
feat: detect network requests inspected in DevTools UI ( #477 )
...
If you manually inspect a network request in the DevTools UI, the Chrome
DevTools MCP server is now able to detect it and allow you to refer to
the selected request. The approach was tested in a couple of models.
In the list of the network requests we have a short indication about
which request is selected in DevTools UI. We refer to the DevTools as
"DevTools UI" to disambiguate from the DevTools MCP server.
2025-10-28 10:52:09 +01:00
Nikolay Vitkov
b30bdd6e17
test: use snapshots for McpResponse ( #483 )
2025-10-27 16:02:03 +01:00
dependabot[bot]
e8394ab113
chore(deps-dev): bump the bundled group with 2 updates ( #481 )
...
Bumps the bundled group with 2 updates:
[@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk )
and [puppeteer](https://github.com/puppeteer/puppeteer ).
Updates `@modelcontextprotocol/sdk` from 1.20.1 to 1.20.2
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/modelcontextprotocol/typescript-sdk/commit/7098bff073d78cfaee40869897d84a5929c29570 "><code>7098bff</code></a>
chore: bump version for weekly release (<a
href="https://redirect.github.com/modelcontextprotocol/typescript-sdk/issues/1042 ">#1042</a>)</li>
<li><a
href="https://github.com/modelcontextprotocol/typescript-sdk/commit/c54309598505007c4467f78fa7dfb3e7c763679c "><code>c543095</code></a>
fix: Zod to JSONSchema pipe strategies (<a
href="https://redirect.github.com/modelcontextprotocol/typescript-sdk/issues/962 ">#962</a>)</li>
<li>See full diff in <a
href="https://github.com/modelcontextprotocol/typescript-sdk/compare/1.20.1...1.20.2 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `puppeteer` from 24.26.0 to 24.26.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/puppeteer/puppeteer/releases ">puppeteer's
releases</a>.</em></p>
<blockquote>
<h2>puppeteer-core: v24.26.1</h2>
<h2><a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-core-v24.26.0...puppeteer-core-v24.26.1 ">24.26.1</a>
(2025-10-22)</h2>
<h3>🛠️ Fixes</h3>
<ul>
<li><strong>a11y:</strong> expose the url property for links (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14357 ">#14357</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/93d098b060771dbd1e6875f4664273604022f3bd ">93d098b</a>)</li>
<li>roll to Chrome 141.0.7390.122 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14360 ">#14360</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/f2fef816f234bd30a13bb86dfc654f29f5cb2f6b ">f2fef81</a>)</li>
</ul>
<h2>puppeteer: v24.26.1</h2>
<h2><a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-v24.26.0...puppeteer-v24.26.1 ">24.26.1</a>
(2025-10-22)</h2>
<h3>♻️ Chores</h3>
<ul>
<li><strong>puppeteer:</strong> Synchronize puppeteer versions</li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>The following workspace dependencies were updated
<ul>
<li>dependencies
<ul>
<li>puppeteer-core bumped from 24.26.0 to 24.26.1</li>
</ul>
</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/puppeteer/puppeteer/blob/main/CHANGELOG.md ">puppeteer's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-v24.26.0...puppeteer-v24.26.1 ">24.26.1</a>
(2025-10-22)</h2>
<h3>♻️ Chores</h3>
<ul>
<li><strong>puppeteer:</strong> Synchronize puppeteer versions</li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>The following workspace dependencies were updated
<ul>
<li>dependencies
<ul>
<li>puppeteer-core bumped from 24.26.0 to 24.26.1</li>
</ul>
</li>
</ul>
</li>
</ul>
<h3>🛠️ Fixes</h3>
<ul>
<li><strong>a11y:</strong> expose the url property for links (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14357 ">#14357</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/93d098b060771dbd1e6875f4664273604022f3bd ">93d098b</a>)</li>
<li>roll to Chrome 141.0.7390.122 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14360 ">#14360</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/f2fef816f234bd30a13bb86dfc654f29f5cb2f6b ">f2fef81</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/6e2348c27e3493e53b609122888e0950d342e4d2 "><code>6e2348c</code></a>
chore: release main (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14359 ">#14359</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/21f309239909548b390b7e851d481ff832899e35 "><code>21f3092</code></a>
test: fix move to ESM (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14362 ">#14362</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/5fe1333769dd7bf28b239db308d67f3402633da2 "><code>5fe1333</code></a>
test: move to ESM (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14358 ">#14358</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/f2fef816f234bd30a13bb86dfc654f29f5cb2f6b "><code>f2fef81</code></a>
fix: roll to Chrome 141.0.7390.122 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14360 ">#14360</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/93d098b060771dbd1e6875f4664273604022f3bd "><code>93d098b</code></a>
fix(a11y): expose the url property for links (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/14357 ">#14357</a>)</li>
<li>See full diff in <a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-v24.26.0...puppeteer-v24.26.1 ">compare
view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
</details>
---------
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nikolay Vitkov <nvitkov@chromium.org >
2025-10-27 14:08:01 +00:00
Nikolay Vitkov
43897afd1d
test: switch to pipes ( #482 )
2025-10-27 14:04:35 +01:00
Nikolay Vitkov
376f57c972
test: use html helper ( #478 )
2025-10-27 12:32:47 +00:00
Nikolay Vitkov
73be1b4424
build: extract bundled in a separate config ( #474 )
2025-10-27 12:30:33 +01:00
Alex Rudenko
1560ff23ca
refactor: detect DevTools page for each page ( #467 )
2025-10-27 09:53:34 +00:00
Alex Rudenko
a41e440799
refactor: connect to DevTools targets by default ( #466 )
...
in preparation for integration with DevTools, this PR moves the pages
filtering to the MCP context.
---------
Co-authored-by: Nikolay Vitkov <34244704+Lightning00Blade@users.noreply.github.com >
2025-10-24 14:30:31 +02:00
Alex Rudenko
b0ce08ae2c
feat: support saving snapshots to file ( #463 )
...
Refs https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/153
---------
Co-authored-by: Nikolay Vitkov <34244704+Lightning00Blade@users.noreply.github.com >
2025-10-24 09:20:14 +00:00
Alex Rudenko
d177087981
feat: support page reload ( #462 )
...
- merges navigation tools into a single tool.
- adds reload functionality.
- in a follow-up we will add options to reload.
2025-10-24 09:00:04 +00:00
Alex Rudenko
b427392392
feat: add a press_key tool ( #458 )
...
Press key can be used to test shortcuts and individual key presses.
2025-10-23 16:18:58 +00:00
dependabot[bot]
12eb494466
chore(deps-dev): bump chrome-devtools-frontend from 1.0.1524741 to 1.0.1531367 in the chrome-devtools-frontend group ( #429 )
...
Bumps the chrome-devtools-frontend group with 1 update:
[chrome-devtools-frontend](https://github.com/ChromeDevTools/devtools-frontend ).
Updates `chrome-devtools-frontend` from 1.0.1524741 to 1.0.1531367
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/6f4312a899ff0af345ba1a51ba719d0c0a1bf5d2 "><code>6f4312a</code></a>
Update DevTools DEPS (trusted)</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/03ffc0b5fc5f07fdde976d2ad47670138bf5cca7 "><code>03ffc0b</code></a>
Update Chrome (for Testing) PIN</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/a717fef99f53ea02dbc91867206546800ae52f69 "><code>a717fef</code></a>
[RPP] Actually hide Workspaces in trace app</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/9ac40d2b0c7d7cf9d6493905df1a72dd4b90803b "><code>9ac40d2</code></a>
Increase performance tests timeout</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/ca1486a6501f6926009969c0c1aa3a577ec93210 "><code>ca1486a</code></a>
Create throttling/blocking conditions from the context menu</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/19213823907008766d5759b8b25feca602ea93fa "><code>1921382</code></a>
[Console Insights Teasers] Add error state</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/2678dc3548a7fbb9aa80455ffa0dc13fd0714e86 "><code>2678dc3</code></a>
Update DevTools DEPS (trusted)</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/db045b91de4fa65c651bda1968ad882f78160a26 "><code>db045b9</code></a>
[Console Insights Teasers] Handle slowness</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/a95ceaf384f7917fe9e3a2aac3d10000a8f14fc6 "><code>a95ceaf</code></a>
Fix console sidebar filter selection</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/a32c47b13d74ba38f478f3369d57bf9647a458b1 "><code>a32c47b</code></a>
Support individual request throttling in the request blocking panel</li>
<li>Additional commits viewable in <a
href="https://github.com/ChromeDevTools/devtools-frontend/compare/v1.0.1524741...v1.0.1531367 ">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by [GitHub Actions](<a
href="https://www.npmjs.com/~GitHub ">https://www.npmjs.com/~GitHub </a>
Actions), a new releaser for chrome-devtools-frontend since your current
version.</p>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores )
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
</details>
---------
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alex Rudenko <alexrudenko@chromium.org >
2025-10-22 13:02:29 +02:00
Nikolay Vitkov
70cd290986
chore: rename options to includePreserved<Data> ( #455 )
2025-10-22 10:54:12 +00:00
Alex Rudenko
0fe2b8a2b4
feat: allow configuring tool categories ( #454 )
...
This PR introduces a feature to disable some of the MCP server tool
categories to tailor it to specific use cases.
For example,
```
npx chrome-devtools-mcp@latest --no-category-emulation Disable tools in the emulation category
npx chrome-devtools-mcp@latest --no-category-performance Disable tools in the performance category
npx chrome-devtools-mcp@latest --no-category-network Disable tools in the network category
```
2025-10-22 12:32:16 +02:00
Nikolay Vitkov
4c65f59cf9
fix: retrieve data correctly with fewer than 3 navigations ( #451 )
...
Also adds test for navigation
2025-10-21 16:53:30 +00:00
Nikolay Vitkov
165cf9c70b
feat: expose previous navigations to the MCP ( #419 )
...
We should consider changing the order of element shown in the from the
collectors to be show newest first rather then the current oldest first
approach.
Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/88
2025-10-21 12:25:08 +00:00
Alex Rudenko
7d47d6b2f4
fix: indicate when request and response bodies are not available ( #446 )
2025-10-21 12:16:28 +00:00
zyzyzyryxy
b443033000
refactor: bundle puppeteer-core ( #417 )
...
Continue speeding up boot time.
---------
Co-authored-by: Piotr Paulski <piotrpaulski@chromium.org >
2025-10-21 09:31:06 +00:00
Nikolay Vitkov
053f1f830d
fix: allow evaluating in Frames ( #443 )
...
Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/439
2025-10-21 10:36:09 +02:00
Nikolay Vitkov
b6b42ecb99
fix: pageerror for non-error types ( #442 )
...
Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/432
2025-10-20 17:43:37 +02:00
Alex Rudenko
5c871c3bd9
refactor: cleanup data fetching ( #441 )
...
Drive-by: fixed extra newline
2025-10-20 13:05:05 +00:00
Alex Rudenko
962ac88445
chore: improve console message format ( #440 )
...
I checked Puppeteer implementation and it computes the text based on all
args so we should treat the first arg in a special way. Also, changes
the format to print count of args in the list and full args in the
details only.
2025-10-20 14:49:09 +02:00
Alina Varkki
92055933dc
feat: tool to get a verbose single console message ( #435 )
2025-10-20 11:18:41 +02:00
Nikolay Vitkov
5a062ce373
test: stabilize test locally ( #418 )
...
Locally the test `with full page resulting in a large screenshot` would
fail semi consistently.
With what I think is just things not getting loaded fully, so scroll to
the bottom to fix that.
2025-10-20 08:41:08 +00:00
Nikolay Vitkov
b8738221d8
refactor: store the last 3 navigations in PageCollector ( #411 )
...
Refactors the code to support
https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/88
We keep each navigation in a separate array, that we can then expose to
the user.
2025-10-17 16:20:38 +02:00
Đào Hoàng Sơn
41d6a107ba
feat: add WebSocket endpoint and custom headers support ( #404 )
...
## Summary
Add support for connecting to Chrome via WebSocket endpoint with custom
headers, enabling authenticated remote debugging scenarios and providing
an alternative to the HTTP-based connection method.
## What's New
This PR introduces two new CLI arguments:
- **`--wsEndpoint` / `-w`**: Connect directly to Chrome using a
WebSocket URL
- Example: `ws://127.0.0.1:9222/devtools/browser/<id>`
- Alternative to `--browserUrl` (mutually exclusive)
- **`--wsHeaders`**: Pass custom headers for WebSocket connections (JSON
format)
- Example: `'{"Authorization":"Bearer token"}'`
- Only works with `--wsEndpoint`
## Use Cases
- **Authenticated remote debugging**: Use API keys, tokens, or custom
auth headers
- **Secured instances**: Connect to browser instances requiring
authentication
2025-10-17 11:06:36 +02:00
Alina Varkki
15d942c4f3
feat: add filters and pagination to the console messages tool ( #387 )
...
In the next pr, we will add ids to messages and another tool to get more
details by id
2025-10-15 18:22:15 +02:00
Alex Rudenko
d47aaa96ff
feat: support verbose snapshots ( #388 )
...
As an option allow verbose snapshots
https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/363
---------
Co-authored-by: Nikolay Vitkov <34244704+Lightning00Blade@users.noreply.github.com >
2025-10-15 12:16:34 +00:00
Nikolay Vitkov
579819b5e7
feat: use stable id for network request querying ( #382 )
...
Provides stable id when selecting a network request, this should fix
issues with multiple same places and long URL selection.
2025-10-14 14:35:15 +02:00
Nikolay Vitkov
78bf66a7b1
refactor: use different format for reqid ( #380 )
2025-10-14 12:23:19 +00:00
Nikolay Vitkov
f4d7b49bb1
feat: support stable id for network requests ( #375 )
...
This is part 1, we just expose the uid here, in a follow up PR we will
be used for finding the request.
2025-10-14 12:45:16 +02:00
Nikolay Vitkov
76d5e9416d
refactor: dispose listeners on page destroyed ( #318 )
2025-10-13 18:38:23 +02:00
Alex Rudenko
2082641cc7
refactor: simplify snapshot generation ( #369 )
...
the only difference is that checked/pressed are only included if the
element was checked/pressed.
Refs: https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/363
2025-10-13 13:51:49 +00:00
Alex Rudenko
f08f8080d0
fix: return the default dialog value correctly ( #366 )
...
Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/pull/364
Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/361
---------
Co-authored-by: Nikolay Vitkov <34244704+Lightning00Blade@users.noreply.github.com >
2025-10-13 11:46:18 +00:00
Alina Varkki
207137edd6
fix: add an option value to the snapshot ( #362 )
...
Fixes #185
The standard selector value is not included in the AXNode, so add it
separately.
2025-10-13 13:25:48 +02:00
Mithun Gowda B
0624029e0f
fix: improve navigate_page_history error messages ( #321 )
2025-10-13 09:46:09 +02:00
Alex Rudenko
e1b5363653
feat: support passing args to Chrome ( #338 )
...
Drive-by: removes custom devtools frontend as a dedicated argument.
Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/261
2025-10-10 15:05:41 +00:00
Alex Rudenko
2982195ec9
chore: experimental devtools-on-devtools support ( #51 )
...
Allows using the MCP server for the devtools development.
2025-10-10 14:17:00 +00:00
Jack Franklin
2d4484a123
fix: ordering of information in performance trace summary ( #334 )
...
Fixes a bug where the output contained "this is a high level summary"
before then outputting the call frame / network format information
before then outputting the trace summary.
With this commit, we now output the summary & insights before ending
with the format information.
2025-10-10 12:52:16 +00:00
iamitesh
139ce60781
feat: Add offline network emulation support to emulate_network command ( #326 )
...
https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/320
Issue:
It would be very useful to have the ability to simulate offline network
conditions directly through the MCP emulate_network command, similar to
how it's possible in DevTools.
Currently, the command doesn’t support an Offline state, which limits
testing for PWA and offline-first web applications. Adding this option
would make it easier to automate and validate offline behavior through
MCP scripts or tools that rely on this API.
Solution
- Add 'Offline' option to throttlingOptions for simulating offline
network conditions
- Update emulate_network tool to handle offline mode with proper network
conditions
- Update documentation to include offline option and usage instructions
- Add test coverage for offline network emulation functionality
- Enable testing of PWA and offline-first web applications through MCP
2025-10-10 09:22:16 +02:00
Nicholas Roscino
dd3c14336e
feat: add request and response body ( #267 )
...
This PR adds the request and response bodies into the context if they
are available and in a readable format.
---------
Co-authored-by: Nicholas Roscino <nroscino@chromium.org >
Co-authored-by: Nikolay Vitkov <34244704+Lightning00Blade@users.noreply.github.com >
2025-10-08 11:22:10 +02:00
Alex Rudenko
357db65d18
fix: change default screen size in headless ( #299 )
...
Sets the screen size in headless to be 3840x2160px to allow resize tool
to work correctly for most use cases.
Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/294
2025-10-07 13:27:23 +00:00
Alex Rudenko
098a904b36
fix(cli): tolerate empty browser URLs ( #298 )
...
it seems some clients default to empty default values for args. We can
accept that and do not error for these.
Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/264
2025-10-07 14:33:59 +02:00