brave-mcp 1.9.0 → 1.10.1
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 +18 -10
- package/build/src/BrowserManager.js +600 -0
- package/build/src/McpContext.js +141 -122
- package/build/src/McpPage.js +205 -76
- package/build/src/McpResponse.js +71 -27
- package/build/src/McpWorker.js +66 -0
- package/build/src/ToolHandler.js +239 -133
- package/build/src/bin/brave-devtools-mcp-main.js +19 -13
- package/build/src/bin/brave-devtools.js +22 -39
- package/build/src/collectors/PageCollector.js +3 -2
- package/build/src/collectors/ServiceWorkerCollector.js +18 -11
- package/build/src/config/ConfigLocator.js +71 -0
- package/build/src/config/ConfigParser.js +213 -0
- package/build/src/config/browser-options.js +4 -13
- package/build/src/config/category-options.js +6 -14
- package/build/src/config/cli-commands.js +34 -0
- package/build/src/config/cli-options.js +57 -6
- package/build/src/config/mcp-options.js +124 -220
- package/build/src/config/puppeteer-options.js +68 -0
- package/build/src/config/tool-options.js +56 -0
- package/build/src/daemon/client.js +65 -37
- package/build/src/daemon/daemon.js +52 -41
- package/build/src/daemon/utils.js +1 -10
- package/build/src/devtools/DevToolsCommentBridge.js +9 -1
- package/build/src/formatters/CommentFormatter.js +4 -13
- package/build/src/formatters/HeapSnapshotFormatter.js +53 -0
- package/build/src/formatters/IssueFormatter.js +31 -31
- package/build/src/formatters/SnapshotFormatter.js +31 -4
- package/build/src/index.js +90 -78
- package/build/src/processors/ChunkedTraceParser.js +361 -0
- package/build/src/processors/HeapSnapshotManager.js +4 -0
- package/build/src/processors/PerformanceTrace.js +49 -15
- package/build/src/telemetry/ClearcutLogger.js +26 -16
- package/build/src/telemetry/metricsRegistry.js +3 -0
- package/build/src/telemetry/transformation.js +49 -4
- package/build/src/third_party/THIRD_PARTY_NOTICES +446 -249
- package/build/src/third_party/bundled-packages.json +7 -5
- package/build/src/third_party/devtools-formatter-worker.js +1230 -48
- package/build/src/third_party/devtools-heap-snapshot-worker.js +1658 -9
- package/build/src/third_party/index.js +43938 -37520
- package/build/src/third_party/issue-descriptions/cookieWarnMetadataGrantRead.md +0 -1
- package/build/src/third_party/issue-descriptions/cookieWarnMetadataGrantReadOptOut.md +5 -0
- package/build/src/third_party/issue-descriptions/cookieWarnMetadataGrantSet.md +0 -1
- package/build/src/third_party/issue-descriptions/cookieWarnMetadataGrantSetOptOut.md +5 -0
- package/build/src/third_party/issue-descriptions/deprecation.md +1 -1
- package/build/src/third_party/issue-descriptions/sriValidationFailedIntegrityMismatch.md +2 -0
- package/build/src/third_party/issue-descriptions/webInstallManifestMissingId.md +3 -0
- package/build/src/third_party/issue-descriptions/webInstallManifestMissingNameOrShortName.md +3 -0
- package/build/src/third_party/issue-descriptions/webInstallManifestParsingOrNetworkError.md +3 -0
- package/build/src/third_party/issue-descriptions/webInstallNoManifest.md +3 -0
- package/build/src/third_party/issue-descriptions/webInstallStartUrlInvalid.md +3 -0
- package/build/src/tools/ToolDefinition.js +25 -21
- package/build/src/tools/comments.js +17 -12
- package/build/src/tools/console.js +3 -3
- package/build/src/tools/css.js +10 -8
- package/build/src/tools/emulation.js +5 -5
- package/build/src/tools/extensions.js +10 -10
- package/build/src/tools/input.js +159 -87
- package/build/src/tools/lighthouse.js +15 -4
- package/build/src/tools/memory.js +69 -26
- package/build/src/tools/network.js +4 -4
- package/build/src/tools/pages.js +17 -14
- package/build/src/tools/performance.js +6 -6
- package/build/src/tools/pwa.js +8 -8
- package/build/src/tools/screencast.js +4 -4
- package/build/src/tools/screenshot.js +2 -2
- package/build/src/tools/script.js +95 -42
- package/build/src/tools/slim/tools.js +9 -6
- package/build/src/tools/snapshot.js +4 -4
- package/build/src/tools/thirdPartyDeveloper.js +7 -5
- package/build/src/tools/tools.js +37 -31
- package/build/src/tools/webmcp.js +7 -5
- package/build/src/utils/WaitForHelper.js +14 -8
- package/build/src/utils/errorHandling.js +17 -0
- package/build/src/utils/logger.js +16 -6
- package/build/src/utils/text.js +15 -0
- package/build/src/utils/url.js +68 -3
- package/build/src/version.js +1 -1
- package/package.json +10 -6
- package/skills/brave-devtools/SKILL.md +2 -1
- package/skills/brave-devtools-cli/SKILL.md +3 -2
- package/skills/troubleshooting/SKILL.md +1 -1
- package/build/src/browser.js +0 -331
- package/build/src/third_party/issue-descriptions/cookieExcludeBlockedWithinRelatedWebsiteSet.md +0 -4
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
[](https://www.npmjs.com/package/brave-mcp)
|
|
7
7
|
[](https://www.npmjs.com/package/brave-mcp)
|
|
8
8
|
[](https://registry.modelcontextprotocol.io/v0.1/servers?search=io.github.triuzzi%2Fbrave-mcp)
|
|
9
|
-
[](https://
|
|
9
|
+
[](https://www.npmjs.com/package/brave-mcp#provenance)
|
|
10
10
|
[](https://github.com/triuzzi/brave-devtools-mcp/compare/ChromeDevTools:main...main)
|
|
11
11
|
[](./LICENSE)
|
|
12
12
|
|
|
@@ -16,34 +16,40 @@
|
|
|
16
16
|
|
|
17
17
|
## Install in one command
|
|
18
18
|
|
|
19
|
+
The commands below use `--autoConnect`, which attaches `brave-mcp` to the Brave you already have open, so the agent works with your real tabs and signed-in sessions. Enable it once: open `brave://inspect/#remote-debugging` in Brave and check **Allow remote debugging for this browser instance**. Brave keeps this setting across restarts.
|
|
20
|
+
|
|
19
21
|
### Claude Code
|
|
20
22
|
|
|
21
23
|
```bash
|
|
22
|
-
claude mcp add brave-devtools --scope user -- npx -y brave-mcp@latest
|
|
24
|
+
claude mcp add brave-devtools --scope user -- npx -y brave-mcp@latest --autoConnect
|
|
23
25
|
```
|
|
24
26
|
|
|
25
27
|
### Cursor
|
|
26
28
|
|
|
27
29
|
```bash
|
|
28
|
-
cursor --add-mcp '{"name":"brave-devtools","command":"npx","args":["-y","brave-mcp@latest"]}'
|
|
30
|
+
cursor --add-mcp '{"name":"brave-devtools","command":"npx","args":["-y","brave-mcp@latest","--autoConnect"]}'
|
|
29
31
|
```
|
|
30
32
|
|
|
31
33
|
### Codex
|
|
32
34
|
|
|
33
35
|
```bash
|
|
34
|
-
codex mcp add brave-devtools -- npx -y brave-mcp@latest
|
|
36
|
+
codex mcp add brave-devtools -- npx -y brave-mcp@latest --autoConnect
|
|
35
37
|
```
|
|
36
38
|
|
|
37
39
|
### OpenCode
|
|
38
40
|
|
|
39
41
|
```bash
|
|
40
|
-
opencode mcp add brave-devtools -- npx -y brave-mcp@latest
|
|
42
|
+
opencode mcp add brave-devtools -- npx -y brave-mcp@latest --autoConnect
|
|
41
43
|
```
|
|
42
44
|
|
|
43
45
|
Restart your client, then try this prompt:
|
|
44
46
|
|
|
45
47
|
> Open my app in Brave. Find console errors and failed network requests, inspect the accessibility tree, run Lighthouse, and explain the highest-impact issue.
|
|
46
48
|
|
|
49
|
+
When the agent connects, Brave asks for permission. Click **Allow**.
|
|
50
|
+
|
|
51
|
+
`--autoConnect` attaches to Brave Release unless you add `--channel beta` or `--channel nightly`. To keep the agent out of your everyday browser, leave out `--autoConnect`: the server then launches its own Brave with a dedicated profile.
|
|
52
|
+
|
|
47
53
|
## Why use this instead of Chrome DevTools MCP?
|
|
48
54
|
|
|
49
55
|
| Capability | `brave-mcp` | `chrome-devtools-mcp` |
|
|
@@ -107,14 +113,14 @@ You can disable these update checks by setting `BRAVE_DEVTOOLS_MCP_NO_UPDATE_CHE
|
|
|
107
113
|
|
|
108
114
|
## Getting started
|
|
109
115
|
|
|
110
|
-
|
|
116
|
+
Enable remote debugging once at `brave://inspect/#remote-debugging`, then add the following config to your MCP client to attach to your running Brave:
|
|
111
117
|
|
|
112
118
|
```json
|
|
113
119
|
{
|
|
114
120
|
"mcpServers": {
|
|
115
121
|
"brave-devtools": {
|
|
116
122
|
"command": "npx",
|
|
117
|
-
"args": ["-y", "brave-mcp@latest"]
|
|
123
|
+
"args": ["-y", "brave-mcp@latest", "--autoConnect"]
|
|
118
124
|
}
|
|
119
125
|
}
|
|
120
126
|
}
|
|
@@ -123,6 +129,8 @@ Add the following config to your MCP client:
|
|
|
123
129
|
> [!NOTE]
|
|
124
130
|
> Using `brave-mcp@latest` ensures that your MCP client will always use the latest version of the Brave DevTools MCP server.
|
|
125
131
|
|
|
132
|
+
Leave out `--autoConnect` to have the server launch its own Brave with a dedicated profile instead.
|
|
133
|
+
|
|
126
134
|
If you are interested in doing only basic browser tasks, use the `--slim` mode:
|
|
127
135
|
|
|
128
136
|
```json
|
|
@@ -140,7 +148,7 @@ See [Slim tool reference](./docs/slim-tool-reference.md).
|
|
|
140
148
|
|
|
141
149
|
### MCP Client configuration
|
|
142
150
|
|
|
143
|
-
For setup instructions specific to your editor or agent (e.g. Antigravity, Claude Code, Cursor, VS Code), please see our [Client Configurations Guide][client-configurations-guide].
|
|
151
|
+
For setup instructions specific to your editor or agent (e.g. Antigravity, Claude Code, Cursor, VS Code), please see our [Client Configurations Guide][client-configurations-guide]. To attach to your running Brave, add `--autoConnect` to the server arguments shown there.
|
|
144
152
|
|
|
145
153
|
### Your first prompt
|
|
146
154
|
|
|
@@ -150,10 +158,10 @@ Enter the following prompt in your MCP Client to check if everything is working:
|
|
|
150
158
|
Check the performance of https://brave.com
|
|
151
159
|
```
|
|
152
160
|
|
|
153
|
-
|
|
161
|
+
Brave asks you to allow the connection. After you click **Allow**, your MCP client opens the page in Brave and records a performance trace.
|
|
154
162
|
|
|
155
163
|
> [!NOTE]
|
|
156
|
-
> The MCP server
|
|
164
|
+
> The MCP server connects to Brave only when the MCP client first uses a tool that needs a browser, not when the client starts. Without `--autoConnect`, that is when the server launches its own Brave.
|
|
157
165
|
|
|
158
166
|
## Tools
|
|
159
167
|
|