Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.
BrowserTools MCP connects an AI coding client to the Chrome session already open on your computer. You install an MCP server with npm/npx, load the project’s Chrome extension as an unpacked extension, open DevTools on the tab you want to inspect, and then ask your MCP client to read console and network activity, capture a screenshot, or run an audit.
This guide follows the current AgentDeskAI README as checked on September 29, 2026. The project’s current README and its older repository page show different maintenance signals, so verify the repository and npm package before installing and keep sensitive tabs out of the connected session.
What BrowserTools MCP actually is
BrowserTools MCP is a bridge between an AI client and a live Chrome browser. It has two pieces: an MCP server installed through npm/npx and a Chrome extension loaded into Chrome. The extension observes the real browser session, while the server exposes that information to an MCP-capable client.
Because it works with the Chrome session already open on your machine, the client can inspect the page state you are seeing rather than a separate, freshly launched browser. Documented tasks include:
#1 Best Overall
- Reading console output and JavaScript errors.
- Monitoring network activity.
- Taking screenshots.
- Running Lighthouse-style performance, accessibility, SEO and best-practice audits.
Capture starts when Chrome DevTools is open on the target page. The BrowserTools panel is where you check status and adjust settings.
Before you install
- Use a desktop installation of Google Chrome with permission to open DevTools and install an unpacked extension.
- Install Node.js 22.19 or newer. Check the version with
node --version. - Use an MCP client that accepts a server command and arguments.
- Have the BrowserTools MCP repository available locally so you can select its
chrome-extensiondirectory.
Do not connect a profile that contains accounts or data the AI client is not allowed to read. The extension can observe authenticated pages, cookies represented in the page session and other sensitive content visible to Chrome.
Step 1: Add the MCP server to your client
Add this server entry to the JSON configuration used by your MCP client:
{
"mcpServers": {
"browser-tools": {
"command": "npx",
"args": ["-y", "@agentdeskai/browser-tools-mcp@latest"]
}
}
}
The -y flag lets npx install the package without stopping for a confirmation prompt. Keeping @latest means the client requests the current published package each time the server is started; if your organization pins versions, replace it with the version you have verified.
Windows command form
If the client reports that it cannot find npx on Windows, use the command form documented by the README:
cmd
Set the server command to cmd and the arguments to:
["/c", "npx", "-y", "@agentdeskai/browser-tools-mcp@latest"]
Restart or reload the MCP client after saving its configuration. If it still cannot start, run the diagnostic command in the troubleshooting section below from a terminal with the same Node installation.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Step 2: Load the Chrome extension
- Download or clone the BrowserTools MCP repository.
- In Chrome, open
chrome://extensions. - Turn on Developer mode.
- Choose Load unpacked.
- Select the repository’s
chrome-extensiondirectory, not the repository’s parent directory.
Chrome should now show the extension in its extensions list. If you later pull an update that changes the extension files, return to this page and use Chrome’s reload control for the extension.
Step 3: Connect a page through DevTools
- Open the page you want to inspect in Chrome.
- Press F12 (or open Chrome’s DevTools from the page context menu).
- Keep DevTools open on that tab. BrowserTools MCP begins capturing when DevTools is open.
- Open the BrowserTools panel and check its settings and connector status.
- In your AI client, issue a concrete request such as “check this tab for console errors,” “show failed network requests,” “take a screenshot,” or “run an accessibility audit.”
When more than one tab is open, use the project’s tab-listing workflow to identify the intended tab before asking for an inspection. This prevents an agent from reading a different page that happens to have DevTools open.
What you can ask the MCP client to do
Console debugging
Ask for current console errors or warnings and include the action that triggers the problem. For example, have the client inspect the console immediately after submitting a form. Console output is tied to the live tab, so reloads and navigation change what is available.
Network investigation
Ask the client to identify failed requests, status codes and relevant request activity after reproducing the issue. Keep DevTools open throughout the reproduction; closing it stops the capture path.
Screenshots
Use a screenshot request when you need the rendered state of the current tab, including the state created by your own interactions. This is different from an API screenshot of a URL loaded in a separate environment.
Rank #3
Lighthouse-style audits
BrowserTools MCP can run audits covering performance, accessibility, SEO and best practices. Treat the output as an inspection of the current page and session, not as a universal score for every device or network condition.
Diagnose a connection that appears silent
A connected client can look identical to a disconnected one when the page has produced no new events. Use this order:
- Run
npx @agentdeskai/browser-tools-mcp --doctor. It reports missing pieces in the local setup. - Restart with
--verboseso connector, console and network events are printed. Without verbose mode, a healthy connector with no events and a broken connector can look the same. - Confirm the extension is present on
chrome://extensionsand that Developer mode is still enabled. - Confirm DevTools is open on the exact tab you intend to inspect.
- Reload the BrowserTools panel and reproduce a simple event, such as reloading the page or generating a console message.
- Check that the MCP client is launching the current package command, rather than an older server entry or a legacy multi-process setup.
Common errors and fixes
| Symptom | Likely cause | Fix |
|---|---|---|
| The client says the command cannot be found | Node.js or npx is not on the client’s PATH. | Verify node --version; on Windows use cmd /c npx -y @agentdeskai/browser-tools-mcp@latest as the configured command form. |
| The extension does not appear | The wrong directory was selected or Developer mode is off. | Enable Developer mode and load the repository’s chrome-extension folder itself. |
| No console or network data arrives | DevTools is closed, the wrong tab is selected, or no event has occurred. | Open DevTools on the target tab, use the BrowserTools panel, trigger a fresh event and retry with --verbose. |
| Audit or screenshot shows another page | The client targeted a different open tab. | Use the tab-listing workflow, identify the tab explicitly and repeat the request. |
| The doctor command reports missing components | Node, the extension, the server package or the client configuration is incomplete. | Correct each reported item, then restart the MCP client and reload the extension. |
Security and maintenance boundaries
BrowserTools MCP sees the real Chrome session. Use a dedicated Chrome profile or a tab limited to data the AI client is authorized to process. Close unrelated tabs, sign out of sensitive services when practical, and do not ask an agent to inspect pages containing secrets unless that access is intentional.
The older AgentDeskAI repository page carries this warning: “THIS PROJECT IS NO LONGER ACTIVE PLEASE USE A DIFFERENT SOLUTION FOR THIS.” The current README describes a connector that runs with the MCP server and does not require a second server process, so do not follow older three-process instructions as if they were current. Check the repository state and npm package immediately before deployment, especially for a team or production workflow.
BrowserTools MCP versus Chrome DevTools MCP
These projects solve related problems but make different connection choices. Chrome DevTools MCP is documented by Chrome for Developers as an MCP server for controlling and inspecting a live browser, including clients such as Codex.
| Area | BrowserTools MCP | Chrome DevTools MCP |
|---|---|---|
| Session model | Designed around the Chrome session already open on your machine, with an extension plus MCP server. | Controls and inspects a live browser through the documented DevTools MCP server. |
| Connection options | Uses the extension connector and an open DevTools window. | Documents automatic connection with --autoConnect, manual connection with --browser-url, WebSocket endpoints, headless mode, channel selection and isolated profiles. |
| Installation shape | Load an unpacked chrome-extension directory and add the npm/npx server entry. |
Use the installation and launch options documented for the DevTools MCP server and your client. |
| Best fit | Inspecting the exact tab and session you are already debugging, including its console and network activity. | Automated browser control, isolated profiles or headless runs where the documented connection flags are more suitable. |
| Security consideration | The connected extension can expose data in the chosen Chrome session. | Chrome warns that an existing-session connection can grant access to logged-in accounts, cookies and other browser data; remote debugging ports should not remain exposed while sensitive sites are open. |
Choose based on the session model you need, not on the name alone. For an interactive debugging session in your existing tab, BrowserTools MCP is the direct fit. For repeatable automation with isolation or headless operation, evaluate Chrome DevTools MCP’s documented connection modes.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Or skip the browser setup
If you only need a clean image or PDF of a URL—not live console and network data—ScreenshotNeo is a simpler alternative. It removes cookie banners, newsletter popups and chat widgets before capture; bot checks, blank pages and failed loads are never billed; and its MCP server lets AI agents take screenshots.
Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallCrashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteOne GET request returns PNG, JPEG, WebP or a PDF. The API supports full-page captures with lazy images loaded, CSS-selector element shots, dark mode, 12 device presets or a custom viewport, retina scale, PDF paper size/margins/landscape/page ranges, HTML/CSS rendering, custom JavaScript, clicks before capture, hidden selectors, waits for a selector/delay/network idle, blocking ads/trackers/requests/resource types, custom headers/cookies/user agents/Authorization, timezone and geolocation, transparent backgrounds, resizing, user-selected cache TTLs, signed links, asynchronous jobs with signed webhooks, bulk capture of up to 100 URLs per call, a usage API and an OpenAPI specification. Common screenshot-API parameter names also work, which eases migration.
cURL
See the ScreenshotNeo documentation for parameter details.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
Python
import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)
Node.js
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
Each response reports whether the page was clean and billable through the X-Page-Verdict and X-Billed headers. The Free plan includes 1,000 shots per month with no card; paid plans start at $5 for 3,000 shots. Every feature is available on every plan, and yearly billing provides two months free.
Create a free ScreenshotNeo account to get 1,000 screenshots a month without adding a card.
Free tools Windows power users keep installed
One-click scans. No signup required.
FAQ
Does BrowserTools MCP work with a closed DevTools window?
No. The documented capture flow begins when DevTools is open on the target page, so leave it open while collecting events.
Can I treat a BrowserTools screenshot as an API screenshot of a URL?
No. BrowserTools captures the live Chrome tab and its current state. A URL screenshot API loads the address in its own capture process and is better suited to scheduled or server-side jobs.
Best Value
Should I use the legacy three-process setup?
No. The current README describes the MCP server and extension connector; the older instructions should not be assumed current.
Can I expose the connected browser to a remote agent?
Only with a deliberate security design. An existing browser session may contain logged-in accounts and cookies, and Chrome warns against leaving remote debugging ports exposed while sensitive sites are open.
Recommended Free Tools
Frequently Asked Questions
What Node.js version is required?
The current AgentDeskAI README specifies Node.js 22.19 or newer.
Where do I load the extension from?
Load the repository’s chrome-extension directory through chrome://extensions with Developer mode enabled.
What is the fastest health check?
Run npx @agentdeskai/browser-tools-mcp –doctor, then retry with –verbose while DevTools is open on the intended tab.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →

