Skip to content

Commit 2aaadf0

Browse files
triuzziclaude
andauthored
chore: fix CI + release 0.5.0 (#13)
CI fixes: - run-tests.yml: install Brave Browser before running e2e tests on ubuntu/macos/windows runners (the chrome-devtools tests RunCli need a real Brave binary at the expected path). - eslint.config.mjs + tests/e2e/brave-integration.test.mjs: include the integration test file in allowDefaultProject so it gets type-checked and linted; rename two unused identifiers (label, submitUid) to underscore-prefixed; auto-format. - scripts/generate-cli.ts: write generated CLI to brave-devtools-cli-options.ts (was still pointing at the chrome-named path); use BRAVE_DEVTOOLS_MCP_NO_USAGE_STATISTICS in the spawn env. - Remove .github/workflows/release-please.yml — uses upstream-only BROWSER_AUTOMATION_BOT_TOKEN secret and we cut releases manually. - npm run gen ran cleanly: brave-devtools-mcp-cli-options.ts and flag_usage_metrics.json regenerated; check-latest-version.ts, src/browser.ts, README.md, brave-integration.test.html prettified. Release: - Bump package.json, package-lock.json, server.json (top-level + packages[0]), .claude-plugin/plugin.json, src/version.ts to 0.5.0. Co-authored-by: Claude <noreply@anthropic.com>
1 parent f35e19b commit 2aaadf0

16 files changed

Lines changed: 398 additions & 206 deletions

.claude-plugin/plugin.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "brave-mcp",
3-
"version": "0.4.0",
3+
"version": "0.5.0",
44
"description": "Reliable automation, in-depth debugging, and performance analysis in Brave using DevTools and Puppeteer",
55
"mcpServers": {
66
"brave-devtools": {

.github/workflows/release-please.yml

Lines changed: 0 additions & 18 deletions
This file was deleted.

.github/workflows/run-tests.yml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,27 @@ jobs:
5757
shell: bash
5858
run: echo 0 | sudo tee /proc/sys/kernel/apparmor_restrict_unprivileged_userns
5959

60+
- name: Install Brave Browser (Ubuntu)
61+
if: ${{ matrix.os == 'ubuntu-latest' }}
62+
shell: bash
63+
run: |
64+
sudo curl -fsSLo /usr/share/keyrings/brave-browser-archive-keyring.gpg \
65+
https://brave-browser-apt-release.s3.brave.com/brave-browser-archive-keyring.gpg
66+
echo "deb [signed-by=/usr/share/keyrings/brave-browser-archive-keyring.gpg arch=amd64] https://brave-browser-apt-release.s3.brave.com/ stable main" \
67+
| sudo tee /etc/apt/sources.list.d/brave-browser-release.list
68+
sudo apt-get update
69+
sudo apt-get install -y brave-browser
70+
71+
- name: Install Brave Browser (macOS)
72+
if: ${{ matrix.os == 'macos-latest' }}
73+
shell: bash
74+
run: brew install --cask brave-browser
75+
76+
- name: Install Brave Browser (Windows)
77+
if: ${{ matrix.os == 'windows-latest' }}
78+
shell: pwsh
79+
run: choco install brave -y --no-progress
80+
6081
- name: Run tests
6182
shell: bash
6283
# Retry tests if they fail in the merge queue.

README.md

Lines changed: 29 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,9 @@ If Brave is not detected automatically, set `BRAVE_PATH`:
9696
"mcpServers": {
9797
"brave-devtools": {
9898
"command": "node",
99-
"args": ["/absolute/path/to/brave-devtools-mcp/build/src/bin/brave-devtools-mcp.js"],
99+
"args": [
100+
"/absolute/path/to/brave-devtools-mcp/build/src/bin/brave-devtools-mcp.js"
101+
],
100102
"env": {
101103
"BRAVE_PATH": "/Applications/Brave Browser.app/Contents/MacOS/Brave Browser"
102104
}
@@ -139,7 +141,12 @@ brave-browser --remote-debugging-port=9222
139141
"mcpServers": {
140142
"brave-devtools": {
141143
"command": "npx",
142-
"args": ["-y", "brave-mcp@latest", "--browserUrl", "http://localhost:9222"]
144+
"args": [
145+
"-y",
146+
"brave-mcp@latest",
147+
"--browserUrl",
148+
"http://localhost:9222"
149+
]
143150
}
144151
}
145152
}
@@ -154,7 +161,8 @@ Or if running from source:
154161
"command": "node",
155162
"args": [
156163
"/absolute/path/to/brave-devtools-mcp/build/src/bin/brave-devtools-mcp.js",
157-
"--browserUrl", "http://localhost:9222"
164+
"--browserUrl",
165+
"http://localhost:9222"
158166
]
159167
}
160168
}
@@ -198,7 +206,8 @@ If you are interested in only basic browser tasks, use `--slim` mode:
198206
"command": "node",
199207
"args": [
200208
"/absolute/path/to/brave-devtools-mcp/build/src/bin/brave-devtools-mcp.js",
201-
"--slim", "--headless"
209+
"--slim",
210+
"--headless"
202211
]
203212
}
204213
}
@@ -650,16 +659,16 @@ The Brave DevTools MCP server supports the following configuration options:
650659
<!-- BEGIN AUTO GENERATED OPTIONS -->
651660

652661
- **`--autoConnect`/ `--auto-connect`**
653-
If specified, automatically connects to a browser (Chrome 144+) running locally from the user data directory identified by the channel param (default channel is stable). Requires the remote debugging server to be started in the Chrome instance via chrome://inspect/#remote-debugging.
662+
If specified, automatically connects to a Brave instance running locally from the user data directory identified by the channel param (default channel is release). Requires the remote debugging server to be started in the Brave instance via brave://inspect/#remote-debugging.
654663
- **Type:** boolean
655664
- **Default:** `false`
656665

657666
- **`--browserUrl`/ `--browser-url`, `-u`**
658-
Connect to a running, debuggable Chrome instance (e.g. `http://127.0.0.1:9222`). For more details see: https://github.com/ChromeDevTools/chrome-devtools-mcp#connecting-to-a-running-chrome-instance.
667+
Connect to a running, debuggable Brave instance (e.g. `http://127.0.0.1:9222`).
659668
- **Type:** string
660669

661670
- **`--wsEndpoint`/ `--ws-endpoint`, `-w`**
662-
WebSocket endpoint to connect to a running Chrome instance (e.g., ws://127.0.0.1:9222/devtools/browser/<id>). Alternative to --browserUrl.
671+
WebSocket endpoint to connect to a running Brave instance (e.g., ws://127.0.0.1:9222/devtools/browser/<id>). Alternative to --browserUrl.
663672
- **Type:** string
664673

665674
- **`--wsHeaders`/ `--ws-headers`**
@@ -672,32 +681,32 @@ The Brave DevTools MCP server supports the following configuration options:
672681
- **Default:** `false`
673682

674683
- **`--executablePath`/ `--executable-path`, `-e`**
675-
Path to custom Chrome executable.
684+
Path to custom Brave executable. Can also be set via BRAVE_PATH environment variable.
676685
- **Type:** string
677686

678687
- **`--isolated`**
679688
If specified, creates a temporary user-data-dir that is automatically cleaned up after the browser is closed. Defaults to false.
680689
- **Type:** boolean
681690

682691
- **`--userDataDir`/ `--user-data-dir`**
683-
Path to the user data directory for Chrome. Default is $HOME/.cache/chrome-devtools-mcp/chrome-profile$CHANNEL_SUFFIX_IF_NON_STABLE
692+
Path to the user data directory for Brave. Default is $HOME/.cache/brave-devtools-mcp/brave-profile$CHANNEL_SUFFIX_IF_NON_RELEASE
684693
- **Type:** string
685694

686695
- **`--channel`**
687-
Specify a different Chrome channel that should be used. The default is the stable channel version.
696+
Specify a different Brave channel that should be used. The default is the release channel.
688697
- **Type:** string
689-
- **Choices:** `canary`, `dev`, `beta`, `stable`
698+
- **Choices:** `release`, `beta`, `nightly`, `dev`
690699

691700
- **`--logFile`/ `--log-file`**
692701
Path to a file to write debug logs to. Set the env variable `DEBUG` to `*` to enable verbose logs. Useful for submitting bug reports.
693702
- **Type:** string
694703

695704
- **`--viewport`**
696-
Initial viewport size for the Chrome instances started by the server. For example, `1280x720`. In headless mode, max size is 3840x2160px.
705+
Initial viewport size for the Brave instances started by the server. For example, `1280x720`. In headless mode, max size is 3840x2160px.
697706
- **Type:** string
698707

699708
- **`--proxyServer`/ `--proxy-server`**
700-
Proxy server configuration for Chrome passed as --proxy-server when launching the browser. See https://www.chromium.org/developers/design-documents/network-settings/ for details.
709+
Proxy server configuration for Brave passed as --proxy-server when launching the browser. See https://www.chromium.org/developers/design-documents/network-settings/ for details.
701710
- **Type:** string
702711

703712
- **`--acceptInsecureCerts`/ `--accept-insecure-certs`**
@@ -717,15 +726,15 @@ The Brave DevTools MCP server supports the following configuration options:
717726
- **Type:** string
718727

719728
- **`--categoryExperimentalWebmcp`/ `--category-experimental-webmcp`**
720-
Set to true to enable debugging WebMCP tools. Requires Chrome 149+ with the following flags: `--enable-features=WebMCPTesting,DevToolsWebMCPSupport`
729+
Set to true to enable debugging WebMCP tools. Requires Brave with the following flags: `--enable-features=WebMCPTesting,DevToolsWebMCPSupport`
721730
- **Type:** boolean
722731

723-
- **`--chromeArg`/ `--chrome-arg`**
724-
Additional arguments for Chrome. Only applies when Chrome is launched by chrome-devtools-mcp.
732+
- **`--braveArg`/ `--brave-arg`**
733+
Additional arguments for Brave. Only applies when Brave is launched by brave-devtools-mcp.
725734
- **Type:** array
726735

727-
- **`--ignoreDefaultChromeArg`/ `--ignore-default-chrome-arg`**
728-
Explicitly disable default arguments for Chrome. Only applies when Chrome is launched by chrome-devtools-mcp.
736+
- **`--ignoreDefaultBraveArg`/ `--ignore-default-brave-arg`**
737+
Explicitly disable default arguments for Brave. Only applies when Brave is launched by brave-devtools-mcp.
729738
- **Type:** array
730739

731740
- **`--categoryEmulation`/ `--category-emulation`**
@@ -759,9 +768,9 @@ The Brave DevTools MCP server supports the following configuration options:
759768
- **Default:** `true`
760769

761770
- **`--usageStatistics`/ `--usage-statistics`**
762-
Set to false to opt-out of usage statistics collection. Google collects usage data to improve the tool, handled under the Google Privacy Policy (https://policies.google.com/privacy). This is independent from Chrome browser metrics. Disabled if `CHROME_DEVTOOLS_MCP_NO_USAGE_STATISTICS` or `CI` env variables are set.
771+
Usage statistics collection (disabled by default in this fork).
763772
- **Type:** boolean
764-
- **Default:** `true`
773+
- **Default:** `false`
765774

766775
- **`--slim`**
767776
Exposes a "slim" set of 3 tools covering navigation, script execution and screenshots only. Useful for basic browser tasks.

eslint.config.mjs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ export default defineConfig([
3838
'eslint.config.mjs',
3939
'rollup.config.mjs',
4040
'skills/memory-leak-debugging/references/compare_snapshots.js',
41+
'tests/e2e/brave-integration.test.mjs',
4142
],
4243
},
4344
},

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "brave-mcp",
3-
"version": "0.4.0",
3+
"version": "0.5.0",
44
"description": "MCP server for Brave DevTools",
55
"type": "module",
66
"bin": {

scripts/generate-cli.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import {createTools} from '../build/src/tools/tools.js';
2121

2222
const OUTPUT_PATH = path.join(
2323
import.meta.dirname,
24-
'../src/bin/chrome-devtools-cli-options.ts',
24+
'../src/bin/brave-devtools-cli-options.ts',
2525
);
2626

2727
async function fetchTools() {
@@ -35,7 +35,7 @@ async function fetchTools() {
3535
const transport = new StdioClientTransport({
3636
command: 'node',
3737
args: [serverPath, '--viaCli'],
38-
env: {...process.env, CHROME_DEVTOOLS_MCP_NO_USAGE_STATISTICS: 'true'},
38+
env: {...process.env, BRAVE_DEVTOOLS_MCP_NO_USAGE_STATISTICS: 'true'},
3939
});
4040

4141
const client = new Client(

server.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@
77
"url": "https://github.com/triuzzi/brave-devtools-mcp",
88
"source": "github"
99
},
10-
"version": "0.4.0",
10+
"version": "0.5.0",
1111
"packages": [
1212
{
1313
"registryType": "npm",
1414
"registryBaseUrl": "https://registry.npmjs.org",
1515
"identifier": "brave-mcp",
16-
"version": "0.4.0",
16+
"version": "0.5.0",
1717
"transport": {
1818
"type": "stdio"
1919
},

src/bin/brave-devtools-mcp-cli-options.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,8 @@ export const cliOptions = {
9494
},
9595
executablePath: {
9696
type: 'string',
97-
description: 'Path to custom Brave executable. Can also be set via BRAVE_PATH environment variable.',
97+
description:
98+
'Path to custom Brave executable. Can also be set via BRAVE_PATH environment variable.',
9899
conflicts: ['browserUrl', 'wsEndpoint'],
99100
alias: 'e',
100101
},
@@ -252,8 +253,7 @@ export const cliOptions = {
252253
usageStatistics: {
253254
type: 'boolean',
254255
default: false,
255-
describe:
256-
'Usage statistics collection (disabled by default in this fork).',
256+
describe: 'Usage statistics collection (disabled by default in this fork).',
257257
},
258258
clearcutEndpoint: {
259259
type: 'string',

0 commit comments

Comments
 (0)