VS Code does not require an external MCP server for browser automation. Its agent sessions include built-in browser tools when workbench.browser.enableChatTools is enabled. Open Chat in Agent mode, select the browser tools, and give the agent a concrete task: start or find your app, open a route, follow a user journey, inspect the page and console, then fix or report defects. Add Playwright MCP or Chrome DevTools MCP only when you need a separately managed browser integration.
What “browser tools MCP” means in VS Code
Several integrations are commonly grouped together under “browser MCP,” but they are different:
| Integration | Where it runs | What it provides | When to choose it |
|---|---|---|---|
| VS Code built-in browser tools | Shipped with VS Code’s agent experience | Navigation, page and accessibility reading, screenshots, clicking, hovering, dragging, typing, dialog handling, custom Playwright code and console inspection | Most app-testing and debugging tasks inside VS Code |
| External MCP server (for example, Playwright MCP) | Installed and managed separately | A browser tool set supplied by that server | You need a particular server’s behavior, version or deployment model |
| Extension tool | Contributed by a VS Code extension through the Language Model Tools API | Tools specific to that extension | A feature is available only through an extension |
Microsoft describes these as three tool classes: built-in tools, MCP tools supplied by MCP servers, and extension tools. MCP itself is an open standard; it is not synonymous with the browser tools that already ship in VS Code.
Enable VS Code’s built-in browser tools
- Open Settings. Use the Settings gear or the Command Palette and search for
workbench.browser.enableChatTools. - Enable the setting. Turn on
workbench.browser.enableChatTools. The exact label or policy behavior can vary with your VS Code version and administrator settings. - Start an Agent session. Open Chat and change the mode to Agent, not a plain question-and-answer chat.
- Select the tools. Open Configure Tools and make sure the browser tools are selected. Selecting only the tools needed for a task keeps the agent’s authority easier to review.
- Check project trust and policy prompts. If VS Code asks whether you trust a workspace, extension or server, review the source and permissions before accepting. Organization policy can disable tools or restrict network access.
If the setting is unavailable, the tool picker is empty or an administrator policy locks the option, update VS Code according to your organization’s process and check its current documentation. Labels and availability are version-sensitive.
#1 Best Overall
Give the agent an observable test task
An agent can only verify behavior it can observe. Include the startup command, the URL, the route, the user journey, expected results and boundaries. A useful prompt looks like this:
Start the app with npm run dev and use the URL it prints. Open /checkout in the browser.
Test a signed-out user journey: add one item, open checkout, submit an empty form,
then enter valid test data. Check the rendered page, accessibility information and
browser console after each step. Use a 1440×900 viewport. Do not use real payment data.
If you find a defect, explain the reproduction steps and propose a code fix; make changes
only after I approve them.
This tells the agent what “done” means without assuming that it knows your scripts, test accounts or risk tolerance. For an existing server, provide its complete URL instead of asking the agent to guess a port. For a stateful flow, say which test credentials or seeded data are allowed.
What the built-in browser loop can do
Start or locate the application
Ask the agent to run your documented development command, or to locate an already running app. The agent should report the URL it used; verify that it is the intended environment before testing data-changing actions.
Navigate and read
It can open routes, read page content and accessibility information, and inspect whether headings, controls and labels are present. Ask for the exact text or selector it used when a result matters.
PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchExercise interactions
Built-in actions include clicking, hovering, dragging, typing and handling dialogs. Describe the user journey in order and include negative cases such as invalid input, an empty result, a cancelled dialog or a network failure.
Rank #2
Inspect visual and runtime output
Request a screenshot at a named viewport when layout matters. Ask the agent to inspect console errors and warnings separately from visible page text; a page can look correct while JavaScript failures are recorded in the console.
Use custom Playwright code carefully
For a repeated or precise check, ask the agent to run custom Playwright code and show the important assertions. Keep destructive operations behind explicit approval. A browser session is not a substitute for a committed end-to-end test: save stable checks in your test suite once the behavior is understood.
Understand browser session state before testing
Isolated agent-opened pages
A page opened by the agent uses an isolated, in-memory session. Cookies, local storage and other state are not your normal browser profile. This is useful for repeatable, signed-out tests and avoids accidentally exposing personal sessions.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Shared pages
A page shared by the user can retain cookies, storage and sign-in state. Share an existing page only when an authenticated or otherwise stateful flow requires it. Never paste production credentials into an agent prompt; use a safe test account and least-privilege data.
Make state an explicit test input
- State whether the test is signed in or signed out.
- Specify the account, tenant or seeded records to use.
- Say whether the agent may modify data, send messages or trigger external services.
- Reset or recreate data between runs when results depend on prior actions.
Add an external browser MCP server when you need one
An external server is optional. Use one when you require a separately installed integration, a particular browser implementation, DevTools-oriented inspection or a server lifecycle independent of VS Code.
- Open Extensions and search
@mcp(or@mcp playwright). - Install the Playwright MCP server or another suitable server from the gallery.
- When prompted, confirm that you trust the server. Review its publisher, requested access and network behavior.
- Open Chat and ask the agent to use the server’s tools.
- Use Configure Tools to enable only the capabilities required for the task.
- For project-level configuration, inspect or edit
.vscode/mcp.json. Use VS Code’s commands to start, stop or restart configured servers.
Configuration keys, transport support and gallery entries can change. VS Code’s MCP developer guidance currently discusses local stdio, streamable HTTP and legacy SSE transports, plus tools, prompts, resources, authentication, sampling, roots, server instructions, elicitation and MCP Apps. Treat the installed server’s own instructions and your VS Code version as authoritative.
Chrome DevTools MCP as another external option
Chrome for Developers documents Chrome DevTools MCP as a server that connects compatible AI agents to a live browser instance. It is a reasonable choice when your work depends on DevTools-style inspection of a browser that is already running. It remains an external integration: confirm current Chrome documentation for installation, compatibility, authentication and supported clients before adopting it.
Built-in tools or external MCP? A practical decision
| Question | Prefer built-in VS Code tools | Prefer an external server |
|---|---|---|
| Do you need to install anything? | No separate browser MCP server | Yes; install and maintain the server |
| Where should state live? | Use isolated agent pages, or deliberately share a page for sign-in | Follow the server’s browser and profile model |
| What tool surface is enough? | Navigation, reading, screenshots, interaction, dialogs, console and Playwright code | A server-specific surface or DevTools-oriented workflow |
| Who controls access? | VS Code tool picker, trust prompts, network filtering and administrator policies | Those controls plus the server’s configuration and process permissions |
| Who handles updates? | VS Code releases and policies | VS Code plus the server package, browser and its configuration |
Start with built-in tools for ordinary UI verification. Add one external server only when you can name the capability it supplies and the maintenance cost you accept.
Troubleshoot common failures
The agent cannot see browser tools
Confirm workbench.browser.enableChatTools is enabled, the session is in Agent mode and the tools are selected under Configure Tools. A workspace or organization policy may override your setting.
The app will not open
Run the start command yourself and verify the printed URL, port and protocol. Tell the agent the exact URL. Check terminal output for a crashed process, a port already in use, a certificate warning or a server bound only to a different interface.
Rank #4
The page is blank or stale
Ask for the page URL, a screenshot and console output. Confirm that the route exists, the frontend build completed and the agent is not using an isolated session that lacks required local storage. Reload after a code change and verify the network response rather than relying only on visual output.
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 →Clicks or typing target the wrong element
Ask the agent to read the page and accessibility information first, then identify the control by its accessible name or a stable selector. Remove duplicate labels and make test selectors deterministic in the application.
Authentication does not persist
This is expected when using an isolated in-memory page. Share an existing page only for an approved test account, or create a deterministic login setup for the test environment.
An external MCP server fails to start
Check the server’s installation output, executable path, required runtime, .vscode/mcp.json syntax and transport choice. Stop and restart it from VS Code after configuration changes. Recheck trust prompts and administrator restrictions before changing permissions.
The agent reports a defect without fixing it
State whether it may edit files, which directories are in scope and what validation is required afterward. A safe loop is reproduce, capture evidence, propose a patch, obtain approval, apply the patch and rerun the same journey.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Reliability, safety and maintainability
- Use deterministic environments: fixed seed data, test accounts and stable URLs produce more useful comparisons than a personal browser profile.
- Separate evidence types: screenshot for layout, page/accessibility reading for semantics, and console output for runtime failures.
- Control network reach: do not allow an agent or server to access production systems unless that access is intentional and governed.
- Keep permissions narrow: enable only the tools needed for the current task and avoid sharing authenticated pages unnecessarily.
- Promote discoveries to tests: once a manual agent check is stable, encode it in your normal unit or end-to-end test suite.
- Record versions: note VS Code, browser, extension and external-server versions when a result must be reproduced.
Or skip the browser setup
For a server-side image or PDF of a URL, ScreenshotNeo provides a website screenshot API and MCP server. One GET request returns PNG, JPEG, WebP or PDF. It removes cookie and consent banners, newsletter popups and chat widgets before capture; bot checks, blank pages, timeouts, failed loads and cache hits are not billed, and response headers identify the page verdict and billing result. Its MCP tools—take_screenshot, get_page_info and capture_pdf—can be used by Claude, Cursor and other MCP clients.
See the full parameter reference in the ScreenshotNeo documentation. The same endpoint supports full-page captures with lazy images, CSS-selector element captures, dark mode, device presets or custom viewports, retina scale, PDF paper and page options, custom CSS and JavaScript, clicks, waits, request and resource blocking, headers, cookies, user agents, authorization, timezone, geolocation, transparent backgrounds, resizing, chosen cache TTLs, signed image links, asynchronous webhooks, bulk capture of up to 100 URLs per call, a usage API and an OpenAPI specification.
cURL
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}`);
The free plan includes 1,000 shots per month without a card; paid plans start at $5 for 3,000 shots. Sign up for the free ScreenshotNeo plan when an API or MCP capture fits your workflow.
Frequently asked questions
Frequently Asked Questions
Is MCP required to use browser automation in VS Code?
No. VS Code’s built-in browser tools work in Agent sessions without an external MCP server. MCP servers are an optional addition.
Recommended Free Tools
Can I test an authenticated application?
Yes, but use a dedicated test account. Share an existing page only when its cookies and storage are intentionally needed; otherwise use the isolated agent session.
Should I install Playwright MCP and Chrome DevTools MCP together?
Usually not. Choose the one that supplies the capability you actually need, because each adds its own installation, permissions and update lifecycle.
Where should a team keep MCP configuration?
Use project-level .vscode/mcp.json when the server is part of a project workflow, and review the file and trust requirements with your organization’s policy.
The Bottom Line
Enable workbench.browser.enableChatTools, run an Agent session and describe a reproducible journey before installing anything else. Add an external MCP server only for a specific browser or DevTools capability, and keep session state, permissions and test data deliberate.
Free tools Windows power users keep installed
One-click scans. No signup required.
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.

