Install Browser MCP for opencode
Give opencode control of your real, already-logged-in Chrome - about 90 seconds, four steps. Your cookies, your sessions, your 2FA, instead of a blank browser that hits every login wall as a stranger.
The whole thing, in four steps
1 - Install the Chrome extension. One click from the Chrome Web Store.
2 - Open your config. opencode.jsonc (or opencode.json), in the project or your global config.
3 - Add the server under mcp:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"browser-mcp": {
"type": "local",
"command": ["npx", "-y", "@agent360/browser-mcp@latest"]
}
}
}4 - Say this, to check it worked:
Take a screenshot of my current Chrome tab.
You get an image back instead of "I don't have browser access". That's it - you're running.
What it looks like
You: Open the admin dashboard and tell me yesterday's signups.
opencode: [browser_navigate]
[browser_get_page_content]
41 signups yesterday. No login step - you were already signed in.The one thing that trips people up here
command is an array, not a string. Every other MCP client splits this into command plus args:
"command": "npx", "args": ["-y", "@agent360/browser-mcp@latest"]
opencode does not. It takes one array with the executable first:
"command": ["npx", "-y", "@agent360/browser-mcp@latest"]
If you copy a config from a Claude Code or Cursor guide, this is the line that breaks, and the failure looks like the server never starting rather than a config error.
And "type": "local" is required. It is what marks the server as stdio. Leave it out and opencode looks for a remote one.
Things worth knowing before you hit them
No one-click link. Trae and VS Code publish install-link formats; opencode does not, as of September 2026. The four lines above are the whole install.
The badge stays grey until you ask for something. The server only takes a port the first time real work arrives. Ask for a screenshot and it appears.
environment if you need the pairing key. Running two Chrome profiles with an agent in each? Add "environment": { "BROWSER_MCP_TOKEN": "your-key" } and type the same key in the extension popup under Pairing. Leave it out otherwise.
Frequently asked questions
Global or per project? Either. A global opencode.json gives every project the browser; a project-level file keeps it to one.
Why does it say the server never started? Almost always command written as a string instead of an array. See above.
Does it work with the Chrome I am already using? That is the whole point - it drives your existing profile, with your sessions, rather than launching a clean one.