文件历史

提交图

122 次代码提交

作者 SHA1 备注 提交日期
Alex Rudenko a2083a2edd docs: add version to the LTS (#2080) 2026-05-18 15:38:11 +02:00
Alex Rudenko 1deb4f8a8b docs: fix typo (#2075)
Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/pull/2063
2026-05-18 09:56:09 +00:00
Nikolay Vitkov b2b05a0670 chore(memory): expose retainer logic (#2056)
Allows the LLM to query the heapsnapshot further to understand what the
retainer path logic.
2026-05-18 09:54:00 +00:00
Mukunda Rao Katta 41944b3265 docs: explain concurrent session options (#2062)
## Summary
- Add a README section explaining how to configure concurrent MCP
sessions
- Document when to use `--experimentalPageIdRouting` for shared server
instances
- Point independent sessions at `--isolated` to avoid sharing the
default user data directory

Refs #2052

## Testing
- `npm run check-format`
2026-05-18 08:24:38 +00:00
Alex Rudenko 30dcd0ba96 docs: remove windows workaround and document Node LTS support (#2074)
Adds test coverage for 26, removes test coverage for 23 and 20.
2026-05-18 08:19:06 +00:00
Mathias Bynens 818d24a6c7 chore: fix title (#2066) 2026-05-16 17:38:05 +00:00
Alex Rudenko 081c9033d6 docs: unhide various experimental flags (#2055)
Refs: https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/2052
2026-05-13 16:36:18 +00:00
Michael Hablich a5ad67bdaf docs: Fix Claude Code instructions (#2018)
This makes sure that the plugin installation command in Claude Code
actually use our own marketplace in order to ship the latest release.
2026-05-08 08:33:40 +00:00
Wolfgang Beyer 7548c97663 feat: support third-party developer tools (#1982)
Enables "third-party developer tools" feature. This allows the inspected
web page to expose tools which provide debugging information to Chrome
DevTools for Agents.

Third-party developer tools enable web applications to expose internal
state, component hierarchies, or specific debug data that cannot be
deduced through static analysis. This allows Chrome DevTools for Agents
to provide richer, more actionable context to AI agents during debugging
sessions.

2 additional tools are enabled in Chrome DevTools for Agents for
interacting with third-party developer tools:
`list_3p_developer_tools()` and `execute_3p_developer_tool`.

Code changes in this PR:
- Rename "in-page tools" to "third-party developer tools"
- Unhide
- Make available in CLI
- Add documentation
2026-05-06 12:43:34 +00:00
Alex Rudenko da0441d425 docs: extract WebMCP into its own category (#1993)
Extracting WebMCP tools into a separate category for better grouping in
the docs. This changes `--experimentalWebmcp` to
`--categoryExperimentalWebmcp` to align with other experimental
categories. Debugging category was not a good fit since the tools
provided by WebMCP are not necessarily used for debugging.

cc @beaufortfrancois
2026-05-05 12:50:42 +00:00
Nicholas Roscino 895fc65a1f docs: update generate-docs.ts tools output order (#1991)
Closes: #1932
2026-05-05 08:31:59 +00:00
Alex Rudenko b377454b1b feat: add an option to customize ffmpeg path (#1937)
This PR adds experimental flag to customize `experimentalScreencast`
that allows specifying a different path to the ffmpeg binary.
2026-04-22 12:22:20 +00:00
Nicholas Roscino 3ff21cf30d feat: support Chrome extensions debugging (#1922)
Adds ability to install, uninstall and reload extensions, trigger
extension actions and inspect extension pages, service workers and
content scripts. Specify `--categoryExtensions` to enable.

Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/1173
Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/96

---------

Co-authored-by: Mathias Bynens <mathias@qiwi.be>
Co-authored-by: Alex Rudenko <OrKoN@users.noreply.github.com>
Co-authored-by: Alex Rudenko <alexrudenko@chromium.org>
2026-04-21 14:03:15 +00:00
Nikolay Vitkov 9211c6b52d chore(memory): expose a tool for getting the inital data. (#1909)
This refactors the code to extract the Id logic from the PageCollector
and provide it in the heapsnapshot.
We need to use an UID as we need the internal ClassKey to query the
heapsnapshot, but that is a strange string (usually looking like
`,ClassName`) which may get the LLM confused as we use comma separated
output.
2026-04-20 18:39:48 +00:00
yulunz 0a6aaa52eb chore: generate a json file for flag usage metrics (#1881)
This is the second most highly touched metric areas - so let's automate
this portion first. The approach is similar to what we have for tool
call args. The append-only logic will be added in the follow-up PR:
#1882
2026-04-17 18:50:31 +00:00
François Beaufort 0aff266111 feat(webmcp): Add experimental tool to execute WebMCP tool (#1873)
<img width="1840" height="1191" alt="Screenshot 2026-04-16 at 11 00 37"
src="https://github.com/user-attachments/assets/6e69dfef-8903-4cbc-ba59-191edd76c0c8"
/>

@OrKoN
2026-04-16 09:33:32 +00:00
Michael Hablich c0664883a5 docs: Rename project and enhance README content (#1856)
Updated the README to reflect the correct project name and added
information about the CLI.

---------

Co-authored-by: Mathias Bynens <mathias@qiwi.be>
2026-04-15 10:57:09 +00:00
Alex Rudenko 5c398c4e7c feat: support DevTools header redactions as an option (#1848)
This PR adds a CLI flag to enable redacting network headers in the same
way they are redacted in DevTools. Note that sometimes it might prevent
the agent from properly analysing network issues. Pass
`--redact-headers=false` to revert to the previous behavior.
2026-04-14 13:21:11 +00:00
Michael Hablich 582c9e01e9 docs: Include Mistral Vibe setup in README (#1801)
Add Mistral Vibe configuration instructions to README.
2026-04-10 07:12:57 +00:00
Guy Owen 92368345dd docs: fix skill and reference documentation issues (#1249)
## Summary

This PR fixes several documentation and skill-reference issues across
the repo to improve accuracy and reduce confusion in implementation and
troubleshooting workflows.

## Changes

- corrected CLI examples in skill docs
- fixed the documented argument order for `performance_analyze_insight`
- updated the memory leak fallback script path
- corrected generated tool reference wording by updating the
source-of-truth tool descriptions

---------

Co-authored-by: ojonesjr <50652264+ojonesjr@users.noreply.github.com>
2026-04-02 19:28:12 +00:00
Mathias Bynens e01e33355e feat: add update notification to both binaries (#1783)
Both `chrome-devtools` and `chrome-devtools-mcp` now log a notification
when a newer version is detected to be available.

This detection is implemented as follows:

1. Read the latest version from a local 24-hour cache
(`~/.cache/chrome-devtools-mcp/latest.json`).
2. If the cache is stale or missing, spawn a detached background process
to fetch the latest version from the npm registry and update the cache
file.
2026-04-02 09:38:12 +00:00
yulunz 1b5dcae2a0 docs: update the README on installing as a VS code agent plugin (#1796)
Context: https://crbug.com/491671639
2026-04-02 07:57:01 +00:00
Alex Rudenko c4f54710d9 feat: experimental click_at(x,y) tool (#1788)
Specify `--experimental-vision` argument for `chrome-devtools-mcp` to
enable additional tools for vision models. Currently, only
`click_at(x,y)` tool is supported. Usually you need a specialized model
that can provide accurate coordinates based on the screenshots.

Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/403
2026-04-01 15:19:36 +00:00
Ahmad Awais 0a7c0a74b4 feat: Command Code CLI instructions for MCP server (#1226)
Added [Command Code](https://commandcode.ai) CLI
[instructions](https://commandcode.ai/docs/mcp) for MCP server.
2026-03-27 10:10:27 +00:00
Nikolay Vitkov 8676b7216c docs: provide disclaimer about supported browsers (#1237)
We already provide Requirements section that states that Chrome is
required.
This should make it explicit what version we are targeting.
2026-03-25 11:22:10 +00:00
Andrei Hodorog d082ca4ecd docs: add troubleshooting for Claude Code plugin HTTPS clone failures (#1195)
## Summary

When installing `chrome-devtools-mcp` as a Claude Code plugin (from the
official Anthropic marketplace or via `/plugin marketplace add`), the
plugin system clones the repository using HTTPS
(`https://github.com/ChromeDevTools/chrome-devtools-mcp.git`). In
environments where outbound HTTPS connectivity to GitHub is restricted —
such as servers behind corporate firewalls, restrictive proxy
configurations, or hosts with port 443 blocked — this clone operation
fails with a timeout:

```
chrome-devtools-mcp@claude-plugins-official: Failed to download/cache plugin chrome-devtools-mcp:
  Failed to clone repository: Cloning into '...'...
  fatal: unable to access 'https://github.com/ChromeDevTools/chrome-devtools-mcp.git/':
  Failed to connect to github.com port 443 after 136078 ms: Couldn't connect to server
```

This is a real-world scenario encountered on production Linux servers
where SSH to GitHub (port 22) works but HTTPS (port 443) is blocked or
unreliable. The Claude Code plugin marketplace
(`anthropics/claude-plugins-official`) specifies the HTTPS URL as the
plugin source, and users have no way to override this URL within the
plugin system itself.

## Changes

### `docs/troubleshooting.md`
Added a new troubleshooting section **Claude Code plugin installation
fails with `Failed to clone repository`** under Specific problems that
documents:

- **The exact error message** users encounter, making it searchable
- **Root cause explanation**: restricted HTTPS connectivity, firewalls,
proxy configs
- **Workaround 1 — SSH redirect**: Using `git config --global
url."git@github.com:".insteadOf "https://github.com/"` to transparently
redirect all GitHub HTTPS git operations to use SSH
- **Workaround 2 — CLI installation**: Using `claude mcp add
chrome-devtools --scope user npx chrome-devtools-mcp@latest` to install
the MCP server via npm/npx instead of git clone

### `README.md`
Added a `[!TIP]` callout in the Claude Code **Install as a Plugin**
section that cross-references the troubleshooting guide.

## Motivation

The HTTPS clone URL for this plugin is defined in the Anthropic official
plugin marketplace, not in this repository. Since users cannot change
the marketplace URL configuration, the most actionable fix from this
repository's side is to document the issue and provide clear
workarounds.

## Test plan

- [x] `npm run check-format` passes (eslint + prettier)
- [x] `npm run gen` produces no unexpected diff (auto-generated docs
unchanged)
- [x] Documentation-only change — no code, tool, or schema modifications
- [x] Markdown anchor link in README TIP callout correctly references
the troubleshooting section heading
- [x] Both workaround commands verified in the environment where this
issue was encountered
2026-03-17 14:30:53 +00:00
Piotr Paulski 6c64a5b543 fix: update VS Code manual installation powershell command (#1151)
Fix #1139

Powershell uses different rules regarding escaping quotes, so default
installation command doesn't work there. This PR adds version of the
command reporter of the issue confirms is working.

Co-authored-by: Piotr Paulski <piotrpaulski@chromium.org>
2026-03-12 09:19:23 +00:00
Yusheng b59cabcc1d docs: fix typo (#1155) 2026-03-10 14:18:12 +00:00
Alex Rudenko 70d4f365dc docs: fix typos and improve phrasing (#1130)
Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/pull/1128
2026-03-06 07:54:30 +00:00
Alex Rudenko 92f2c7b48b docs: fix typo in README regarding slim mode (#1093)
Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/pull/1092
Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/pull/1091
2026-03-04 07:03:02 +00:00
Alex Rudenko bcb852dd2e fix: improve error messages around --auto-connect (#1075) 2026-03-03 10:23:35 +00:00
Alex Rudenko dfdac2648e feat: integrate Lighthouse audits (#831)
This PR adds tool to perform navigation and snapshot audits using
Lighthouse for Accessibility, SEO and Best practices. For performance
audits existing tools can be used.

Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/473
2026-02-26 12:30:45 +00:00
Alex Rudenko b5d01b5fe6 feat: support type_text (#1026)
`type_text` is useful for pages that do not have a11y and, thus, uid is
not known. It's also useful for testing user-like keyboard input and
testing the focus state changes. The `fill` tools force the focus change
and require an uid and therefore are not suitable for these tasks.
2026-02-24 09:05:24 +00:00
Alex Rudenko 7ffdc5ee4d feat: add take_memory_snapshot tool (#1023)
Refs: https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/406
2026-02-23 18:12:29 +00:00
Alex Rudenko c402b43697 feat: --slim mode for maximum token savings (#958)
- navigate
- run js
- take screenshot

That's it. Basic functionality for a low (~368) token price.
2026-02-23 14:42:27 +00:00
Dobes Vandermeer 33446d457e feat: add experimental screencast recording tools (#941)
## Summary

Adds `screencast_start` and `screencast_stop` MCP tools that allow
agents to record a video of a page using Puppeteer's `page.screencast()`
API.

Only enabled if the command line option `--experimental-screencast` is
provided

Closes #878.

## New Tools

### `screencast_start`
Starts recording a screencast (video) of the selected page in mp4
format.

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `path` | string (optional) | temp file | Output file path |

### `screencast_stop`
Stops the active recording and reports the saved file path.

## Design

- **Start/stop pair** following the `performance_start_trace` /
`performance_stop_trace` pattern
- **State management** via `getScreenRecorder()` / `setScreenRecorder()`
on the Context interface
- **Category**: `DEBUGGING` (alongside `take_screenshot`)
- **ffmpeg dependency**: Clear error message when ffmpeg is not
installed
- **Temp file fallback**: When no `path` is provided, creates a temp
file with the correct extension

---------

Co-authored-by: Alex Rudenko <alexrudenko@chromium.org>
2026-02-20 13:15:48 +00:00
Alex Rudenko ebbbea7f9d docs: update codex doc URL (#987)
Refs https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/967
Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/pull/968
2026-02-18 13:41:04 +00:00
Michael Hablich c0009f7ab2 docs: Add a note about previously installed server installations (#982) 2026-02-17 12:45:09 +00:00
Coty Rosenblath 6cfef24ec7 docs: add Katalon Studio setup instructions to README (#929)
Add MCP client configuration section for Katalon StudioAssist, covering
MCP proxy setup, server hosting, and HTTP connection details.
2026-02-13 08:43:22 +00:00
Alex Rudenko 3ec5b7e7a2 docs: improve Claude Code installation instructions (#947) 2026-02-13 08:30:56 +00:00
Alex Rudenko 107c46a4db docs: Update README with WSL configuration details (#946)
Added workarounds for using chrome-devtools-mcp in WSL.

Drive-by: moved known issues from readme to troubleshooting.
Drive-by: updated skill to link to troubleshooting.
Drive-by: rephrased for clarity.
2026-02-13 08:28:01 +00:00
Alex Rudenko a781da4434 docs: add MCP config for Claude plugin + docs (#944)
Instructions tested locally.
2026-02-13 08:17:26 +00:00
Paul Irish b747f9d74a feat: Integrate CrUX data into performance trace summaries (#733)
We upgrade the performance trace tools to include real-user experience
data from the Chrome User Experience Report (CrUX).

https://developer.chrome.com/docs/crux
https://developer.chrome.com/docs/crux/methodology

### Deets

* When a trace is stopped, the server now extracts the primary
navigation URLs from the trace (determined by insightSets).
* It calls the public CrUX API to fetch field metrics (LCP, INP, CLS)
for each unique URL/Origin.
* The formatting of crux data is handled by upstream TraceFormatter, but
it looks like this:

```md
Metrics (field / real users):
  - LCP: 2595 ms (scope: url)
  - LCP breakdown:
    - TTFB: 1273 ms (scope: url)
    - Load delay: 86 ms (scope: url)
    - Load duration: 451 ms (scope: url)
    - Render delay: 786 ms (scope: url)
  - INP: 140 ms (scope: url)
  - CLS: 0.06 (scope: url)
  - The above data is from CrUX–Chrome User Experience Report. It's how the page performs for real users.
  - The values shown above are the p75 measure of all real Chrome users
  - The scope indicates if the data came from the entire origin, or a specific url
  - Lab metrics describe how this specific page load performed, while field metrics are an aggregation of results from real-world users. Best practice is to prioritize metrics that are bad in field data. Lab metrics may be better or worse than fields metrics depending on the developer's machine, network, or the actions performed while tracing.
 ```
 
**Privacy Considerations:**

*   Updates the server README to inform users that performance analysis tools may send trace URLs to the Google CrUX API.
*   Adds a notification message to the server startup logs regarding the CrUX API interaction.


Doc: go/crux-in-bifrost 
Fixes b/446630695

---------

Co-authored-by: Alex Rudenko <alexrudenko@chromium.org>
Co-authored-by: Alex Rudenko <OrKoN@users.noreply.github.com>
2026-02-05 07:27:15 +00:00
han-qiu acdb5c9bb3 docs: remove outdated --channel=beta note (#882)
## Summary
Chrome M144 is now in the stable channel, so the note about requiring
`--channel=beta` and the example configuration using it are outdated.

## Prompt
Remove outdated documentation about --channel=beta since Chrome M144 is
now in stable channel.

## Changes
- Removed `--channel=beta` from the `--autoConnect` example
configuration
- Removed the note: "Note: you have to specify `--channel=beta` until
Chrome M144 has reached the stable channel."

## Test plan
- [x] Verified the documentation now reflects the current stable Chrome
version

🤖 Generated with [Claude Code](https://claude.com/claude-code)
2026-02-04 09:43:38 +00:00
Simon Zünd 579d18a3f4 docs: mention source-mapped stack traces in 'Key features' (#883) 2026-02-04 07:24:14 +00:00
Alex Rudenko c0435a2d53 fix: disable usage statistics when CI or CHROME_DEVTOOLS_MCP_NO_USAGE_STATISTICS env is set (#862)
When CI or CHROME_DEVTOOLS_MCP_NO_USAGE_STATISTICS env variables are
set, we override the set cli args and disable the usage statistics.
2026-01-30 07:58:45 +00:00
Alex Rudenko 7e279f1b67 feat: enable usage statistics by default with opt-out (#855)
## **Usage statistics**

Google collects usage statistics (such as tool invocation success rates,
latency, and environment information) to improve the reliability and
performance of Chrome DevTools MCP.

Data collection is **enabled by default**. You can opt-out by passing
the `--no-usage-statistics` flag when starting the server:

```json
"args": ["-y", "chrome-devtools-mcp@latest", "--no-usage-statistics"]
```

Google handles this data in accordance with the [Google Privacy
Policy](https://policies.google.com/privacy).

Google's collection of usage statistics for Chrome DevTools MCP is
independent from the Chrome browser's usage statistics. Opting out of
Chrome metrics does not automatically opt you out of this tool, and
vice-versa.

The code determining statistics that are collected is in here
https://github.com/ChromeDevTools/chrome-devtools-mcp/tree/main/src/telemetry.
2026-01-28 10:18:10 +00:00
Alex Rudenko 0610d11aa9 docs: document how to add extensions to gemini-cli (#834) 2026-01-27 10:04:34 +00:00
zyzyzyryxy 6854d474c0 chore: fix bad html closing tag in README.md (#801)
Update ending tag of <a> to match.

Co-authored-by: Piotr Paulski <piotrpaulski@chromium.org>
2026-01-20 18:14:03 +00:00
Michael Hablich 6e52e66a7a docs: Update README.md to include a link to Android debugging (#783) 2026-01-16 09:34:24 +00:00