Capture browser console logs via the Chrome DevTools Protocol and expose them to an MCP client over SSE.
Useful for getting console log for extensions that run outside of the main browser window!
npm install -g @onlyhumn/chrome-console-log-mcp-serverOr run without installing:
npx @onlyhumn/chrome-console-log-mcp-server --match "YOUR_URL_SUBSTRING"From a clone:
npm install
node server.js --match "YOUR_URL_SUBSTRING"-
Start the browser with remote debugging:
/Applications/Brave\ Browser.app/Contents/MacOS/Brave\ Browser --remote-debugging-port=9222
-
Start the server (requires
--match):npx @onlyhumn/chrome-console-log-mcp-server --match "YOUR_URL_SUBSTRING"Examples:
npx @onlyhumn/chrome-console-log-mcp-server --match "localhost:3000" npx @onlyhumn/chrome-console-log-mcp-server --match "vlt-panel.html"
-
Configure your MCP client:
- Type:
sse - URL:
http://localhost:8766/sse
- Type:
-
Open or focus a page whose URL contains the match string. The server prints
Attached to ...when it finds a match. Use thegetConsoleLogstool to read captured output.
| Flag | Default | Meaning |
|---|---|---|
--match |
required | URL substring for CDP targets |
--port |
9222 |
CDP remote debugging port |
--mcp-port |
8766 |
HTTP port for MCP SSE |
--log-dir |
/tmp/chrome-console-logs |
log directory |
--log-max-bytes |
10485760 (10 MB) |
rotate threshold |
--log-keep |
5 |
rotated .gz files to keep |
--scan-interval |
2000 |
CDP target rescan interval (ms) |
Console events are appended to /tmp/chrome-console-logs/current.jsonl. When the file exceeds the rotate threshold it is gzipped and pruned so only the newest --log-keep archives remain.
Publishes run from GitHub Actions on v* tags. The tag must match package.json "version".
-
Ensure the npm org/user owns the
@onlyhumnscope. -
First publish only: from a machine logged into npm (
npm login), runnpm publish --access publiconce so the package exists, or create the package on npmjs.com if your account allows it. -
On the package page → Trusted Publisher (values are case-sensitive; must match GitHub OIDC claims):
- Repository:
ONLYHUMN/chrome-console-log-mcp-server(not lowercaseonlyhumn/...) - Workflow filename:
publish.yml - Leave Environment blank (workflow does not set one)
- Repository:
-
Bump
"version"inpackage.json, commit, push tomaster. -
Tag and push:
git tag v1.0.1 git push origin v1.0.1
A Trusted Publishing failure often shows up as a misleading E404 from npm publish.
- Browser must be started with
--remote-debugging-port=9222(or the port you pass to--port) --matchis required; without it the process exits immediately- Confirm the server printed
Attached to ...for your page - MCP client URL should be
http://localhost:8766/sse(or your--mcp-port)