Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.

Short answer: add Browser Use’s local stdio command to OpenCode’s MCP configuration, then verify it with opencode mcp list. For current OpenCode v2 releases, the server belongs under mcp.servers and its command is an array. Browser Use documents this launcher: uvx --from 'browser-use[cli]' browser-use --mcp. After the connection is healthy, ask OpenCode to perform a harmless navigation and title-reading task before attempting logins or state-changing actions.

Browser Use (the browser-use project) is distinct from products and packages that happen to be called “Browser MCP.” The instructions below use Browser Use’s documented interface and OpenCode’s v2 schema. If your installed OpenCode release has different documentation, use that release’s schema rather than mixing examples from older guides.

What you need before configuring the server

  • An installed OpenCode release and access to its configuration file.
  • uvx available to the OpenCode process. The Browser Use integration uses the browser-use[cli] package extra and an unpinned package specification, so check the current installation instructions before relying on a particular package version.
  • A public, low-risk URL for the first test. Do not begin with an account that can make purchases, delete data, or submit forms.

Browser Use’s repository manifest currently displays package version 0.13.5, but that is a repository detail, not a promise that it is the newest release. The command intentionally resolves the package through uvx; review the project’s current instructions when you install or update.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

OpenCode starts a local MCP server as a child process and communicates over standard input/output (stdio). The server therefore needs to be executable in the environment seen by OpenCode, not merely in an interactive shell where you tested it.

Choose the OpenCode configuration schema that matches your release

OpenCode v2 documentation places named servers under mcp.servers. Older OpenCode documentation shows a flatter layout. These shapes are not interchangeable: an otherwise correct Browser Use command will appear broken if it is nested according to a different release.

For a current v2 installation, create or edit the OpenCode configuration using this JSON-with-comments example (remove the comment if your parser accepts strict JSON only):

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "servers": {
      "browser-use": {
        "type": "local",
        "command": [
          "uvx",
          "--from",
          "browser-use[cli]",
          "browser-use",
          "--mcp"
        ]
      }
    }
  }
}

This combines the command documented by Browser Use with the local-server object documented by OpenCode v2; neither project presents this exact combined snippet as a single, vendor-published recipe. For an older OpenCode release, follow that release’s MCP documentation and preserve the same Browser Use command arguments.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Why the command is an array

OpenCode’s local configuration separates the executable from its arguments. The first array item is uvx; the remaining items reproduce uvx --from 'browser-use[cli]' browser-use --mcp. Do not put the entire command in one string unless your installed OpenCode documentation explicitly requires that form.

Do not substitute the other Browser Use MCP flag casually

Browser Use’s CLI source distinguishes --mcp from --cli-mcp. They are separate modes with potentially different tool surfaces. Use --mcp for the interface documented in the integration guide, and only choose --cli-mcp after confirming the intended mode for your installed Browser Use version.

Install and launch Browser Use through OpenCode

  1. Install and verify the uv/uvx tooling using the installation method appropriate for your operating system.
  2. Put the v2 configuration above in the OpenCode configuration location described by your release.
  3. Restart OpenCode so it reloads the server definition.
  4. From a shell in the same user environment, run uvx --from 'browser-use[cli]' browser-use --mcp once if you want to expose package-download or Python-runtime errors directly. The process is expected to wait for MCP traffic rather than print a normal interactive prompt.
  5. In another shell, ask OpenCode to list or use the configured MCP tools.

Keep the first run on a network where package installation and browser startup are permitted. Corporate proxies, endpoint controls, or a restricted PATH can prevent OpenCode from seeing an executable that works in your terminal.

Check connection status with OpenCode

Run the documented status command:

opencode mcp list

Confirm that browser-use is listed as connected. A disconnected or failed status means OpenCode could not start the configured process or complete the MCP handshake; it does not prove that a later web page will be reachable.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Run a safe verification task

Once the server is connected, give OpenCode a narrowly scoped request such as:

“Use Browser Use to open https://example.com, report the page title and the first visible heading, and do not click, log in, or submit anything.”

Browser Use documents browser automation tasks and MCP browser tools, while OpenCode makes connected MCP tools available to its agent. Treat this as a verification procedure, not a guaranteed result for every machine: the page, network, browser dependencies, and permissions can still affect execution.

Local versus Browser Use Cloud MCP

Browser Use documents an optional hosted endpoint at https://api.browser-use.com/mcp. Its integration guide authenticates requests with an x-browser-use-api-key header and describes tools including browser_task, execute_skill, and task-monitoring operations. Use the cloud route only after checking the provider’s current account requirements, endpoint behavior, pricing, data handling, and terms.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Decision factor Local MCP Cloud MCP
Where execution starts Your machine, launched by OpenCode as a stdio process. Browser Use’s hosted service at the documented MCP endpoint.
Configuration A local server object and the uvx command. A remote MCP connection plus the API-key header required by the integration guide.
Credentials The cited local setup does not specify a Browser Use cloud key. Requires an x-browser-use-api-key; obtain and manage it according to current Browser Use instructions.
Runtime dependencies Your PATH, uv/Python tooling, browser dependencies, network, and profile are relevant. The hosted service supplies its execution environment, but availability and account conditions apply.
Cost and data policy Not established by the cited setup documentation. Current price and data-handling terms are not established by the integration page; verify them before adoption.
Best fit Local control, development, and tasks that must run in your environment. Delegated or hosted browser tasks when the service’s current terms meet your requirements.

The documentation establishes transport and authentication, not a complete feature, price, privacy, or reliability comparison. Do not infer those missing values from the transport choice alone.

Troubleshoot a server that will not connect

browser-use is missing from the status list

  • Check that the configuration file is the one OpenCode actually loads.
  • Confirm your release expects mcp.servers. If you are on an older release, consult its schema instead of copying the v2 nesting.
  • Restart OpenCode after editing the file.

“Command not found” or an immediate process exit

  • Run command -v uvx (or the platform equivalent) in the environment that launches OpenCode.
  • If OpenCode is started by an app launcher, service, or IDE, its PATH may differ from your terminal’s PATH. Configure that environment or use the absolute executable path permitted by your OpenCode version.
  • Run uvx --from 'browser-use[cli]' browser-use --mcp directly to expose missing Python, uv, package-download, or permission errors.

The MCP handshake fails after the process starts

  • Ensure the command is split into the array shown above and that --mcp, not an unverified alternative flag, is present.
  • Check for malformed JSON, unsupported comments, or a server name collision.
  • Inspect the process output according to your OpenCode release. A local MCP server must keep its protocol traffic on stdio; diagnostic text written to the protocol stream can interfere with the handshake.

The server connects but a browser task fails

  • Retry with a public page and a read-only request.
  • Check DNS, proxy, firewall, certificate, and browser-startup restrictions.
  • Reduce the task: navigate first, then read a title or heading, rather than combining navigation, login, downloads, and form submission.
  • Remember that a successful MCP connection does not guarantee that every destination permits automation or that a site will load in the same way as your everyday browser.

Cloud requests are rejected

Verify the endpoint exactly, send the x-browser-use-api-key header in the way required by the current integration documentation, and check that the key and account are active. Do not hard-code a key in a shared configuration or repository. Current quotas, pricing, and retention rules must be confirmed with Browser Use because they are not specified in the cited setup material.

Operational and security practices

  • Start with least-privilege tasks. Explicitly tell the agent what it may read and what it must not click or submit.
  • Keep credentials out of prompts and source control. If a task needs authentication, use the credential mechanism recommended by your environment and understand where the browser profile is stored.
  • Separate development and production browser profiles. A local automation process can access any profile or network resource you intentionally expose to it.
  • Pin or review package versions when reproducibility matters. The documented launcher is unpinned, and Browser Use releases can change over time.
  • Record the OpenCode release, Browser Use package resolution, operating system, and configuration schema when diagnosing a failure.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Or skip the browser setup

If your goal is a clean image or PDF of a page rather than interactive browser control, ScreenshotNeo is a simpler API route. It accepts a URL and removes cookie/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.

One GET request is enough:

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

See the complete parameter reference in the ScreenshotNeo documentation. The same request in Python is:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
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)

And in 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}`);

ScreenshotNeo also provides an MCP server with take_screenshot, get_page_info, and capture_pdf for Claude, Cursor, and other MCP clients. Every feature is included on every plan: full-page and element captures, device and viewport controls, dark mode, retina scale, PDF settings, custom CSS/JavaScript, clicks and waits, request blocking, headers, cookies, user agents, authorization, timezone and geolocation, transparent backgrounds, resizing, selectable caching TTLs, signed links, asynchronous webhooks, bulk capture of up to 100 URLs per call, usage reporting, and an OpenAPI specification. Common parameter names from other screenshot APIs are accepted to ease migration.

Plans include 1,000 screenshots per month free with no card; paid plans start at $5 for 3,000 screenshots. Create a free ScreenshotNeo account to try the API without a card.

Frequently asked questions

Is Browser Use MCP the same as every “Browser MCP” package?

No. This guide refers to the browser-use project and its documented browser-use --mcp mode. Check the repository and command before installing a similarly named package.

Can I use the local and cloud servers at the same time?

OpenCode can be configured with multiple MCP servers, but the cited documentation does not define a special Browser Use pairing workflow. Give each server a distinct name and validate each connection independently.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Why does a configuration copied from an older guide fail?

OpenCode’s schema has changed. Current v2 documentation uses named objects under mcp.servers, whereas older documentation may show a flatter mcp object. Match the schema to the installed release.

Where can I check the official syntax?

Use OpenCode’s MCP server documentation and Browser Use’s integration guide. The repository’s server manifest and CLI source provide additional implementation context.

Frequently Asked Questions

Does OpenCode need a separate Browser Use account for the local command?

The documented local setup launches Browser Use through uvx over stdio; the cited instructions do not specify a cloud account requirement for that local path.

What should I test first after connecting?

Use a public page and request only its title or a visible heading, with explicit instructions not to click, log in, or submit forms.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

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.