PlugWiki
OpenChrome logo

OpenChrome MCP Server: Control Your Real Chrome with AI

CommunityLocal
Getnpmopenchrome-mcpshaun0927/openchrome

Lets your AI assistant drive a real Chrome browser on your computer: browse, click, fill forms and read pages.

OpenChrome is a community server that connects your AI assistant to a real Chrome browser through Chrome's debugging port. It runs on your computer, needs no account, and can launch Chrome for you.

It has over 100 tools, but the setup command starts with 15 browser basics and the rest load when the assistant asks for them. Because it can reach any site your Chrome is logged in to, use a separate Chrome profile for it.

Good for

  • Developers who want Claude Code or Codex to test and debug pages in real Chrome
  • People automating sites that need an existing login
  • Teams running several browser tasks in parallel tabs

Works in

12 should work

Tap an app to see how to set it up and any known problems.

Install OpenChrome MCP

Claude Code

  1. 1

    Copy this prompt.

    Add the OpenChrome MCP server to Claude Code. Run this command:
    
    claude mcp add openchrome -- openchrome serve --auto-launch --auto-elect --minimal
    
    Then check that it loaded and tell me if I need to sign in or restart.
  2. 2

    Paste it into Claude Code. It shows the change and asks before running it.

Requires Node.js 20 or newer, Google Chrome installed, npm install -g openchrome-mcp.

Read-only mode: There is no read-only mode. Use a dedicated Chrome profile and the domain blocklist.

Install the package first with npm install -g openchrome-mcp; the command it adds is called openchrome, not openchrome-mcp, so npx openchrome-mcp will not start the server. You can also run openchrome setup once to write this entry for you (Claude Code by default, or add --client codex or --client opencode). Restart your app afterwards. The README gives the serve command; this tab puts it in this app's own config format.

Built from the package data we hold. Not yet tested by us.

Tools

  • Opens a web address or goes back and forward

    Loads a URL in the browser tab, or moves forward or back in history.

    Try: “Open https://example.com”

    Write · navigate

  • Moves the mouse, types and takes screenshots

    Does mouse and keyboard actions on a tab, including clicks, typing and screenshots.

    Try: “Click the Sign in button and take a screenshot”

    Write · computer

  • Reads a page as text, DOM or accessibility tree

    Returns the page as DOM, an accessibility tree, a CSS diagnostic, a short semantic summary or clean markdown.

    Try: “Read this page as markdown”

    Read · read_page

  • Finds elements on the page

    Looks for elements that match a query and returns them so the assistant can act on them.

    Try: “Find the checkout button”

    Read · find

  • Looks up elements by CSS selector or XPath

    Runs a CSS selector or XPath query on the page and returns the matching elements.

    Try: “Get all links inside the nav bar”

    Read · query_dom

  • Clicks or hovers on an element you describe

    Finds an element from a plain-language description, clicks, hovers or double-clicks it, waits for the page to settle and returns the new state.

    Try: “Click the "Add to cart" button”

    Write · interact

  • Sets the value of a form field

    Sets one form element to a value using a reference from the page.

    Try: “Set the email field to test@example.com”

    Write · form_input

  • Lists the tabs OpenChrome manages

    Returns the tab IDs of the current session, grouped by worker.

    Try: “What tabs are open?”

    Read · tabs_context

  • Checks a tab or pauses input for you

    Observes a managed tab, checks conditions you supply, or pauses automatic input so you can take control.

    Try: “Pause automation so I can log in myself”

    Write · oc_browser_control

  • Opens a new tab

    Creates a new tab at a URL.

    Try: “Open a new tab at example.com”

    Write · tabs_create

  • Closes tabs

    Closes one or more tabs by tab ID or worker ID.

    Try: “Close the tabs you opened”

    Delete · tabs_close

  • Waits for a condition

    Waits until a condition on the page is true before the next step.

    Try: “Wait until the results table appears”

    Read · wait_for

Read from the source code

Permissions

high risk · 5 things to watch

High risk

The assistant can click, type, read cookies and storage and run JavaScript in any site your Chrome can reach, including logged-in accounts. Use a dedicated Chrome profile with no sensitive logins, and add banking and other high-risk sites to the domain blocklist.

What it can do

  • Read your data
  • Create and change things
  • Delete things
  • Read-only mode

Watch out for

  • It can use every account your Chrome is logged in to

    The security policy says the assistant gets access to the browser's authenticated sessions, such as banking and email. Use a dedicated Chrome profile and keep sensitive accounts out of it. github.com

  • It can read and export cookies and login state

    The cookies, storage and context export tools hand login tokens to the assistant, and a TOTP tool generates 2FA codes. These load on demand, so skip or disable them if you do not need them. github.com

  • It runs JavaScript in pages

    javascript_tool executes code you or the assistant supply in the page, and request_intercept can change traffic. There is no read-only mode. github.com

  • Web pages can try to steer the assistant

    The project states it has no way to detect prompt injection from visited pages. Use the domain blocklist and audit log options, and review what the assistant does. github.com

  • It writes files and keeps local state

    Screenshots, PDFs, evidence bundles, recordings and a task ledger are saved on your machine. github.com

Security advisories

No published security advisories as of Nov 1, 2026.

Technical details
Talks toAny site you or the assistant open in Chrome
Sign-in and keysNo credentials of its own. It uses the sessions already in the Chrome profile it controls.
Scopes
  • Whatever the Chrome profile is signed in to

Questions

Is it official?

No. It is a community project by shaun0927, not made by Google or Anthropic.

How many tools does it have?

More than 100. The list on this page is partial. The setup command starts with 15 basics, and the assistant loads the rest on demand, though newer clients can see all of them at once.

Does it use my own Chrome and logins?

It controls a real Chrome through its debugging port and can launch one for you. Whatever that Chrome profile is signed in to is reachable, so use a dedicated profile.

Do I need an API key?

No. You need Node.js 20 or newer and Chrome installed. There is no sign-in.

Can it run read-only?

No. There is no read-only mode. You can narrow what the assistant does with a dedicated profile, a domain blocklist and audit logging.

Which AI apps does it work with?

The setup command supports Claude Code, Codex CLI and OpenCode. Other apps that can start a local program can use the same command. It runs on your computer, so it is not a web connector for ChatGPT or claude.ai.

Can several tools share one Chrome?

Yes. The default setup elects one owner for the Chrome profile and the other clients connect to it. There is also an HTTP mode with a token for sharing one daemon.

How do I install it?

Use the install box above. It needs a global npm install first, then the command starts the server.

Information

updated Nov 2, 2026

Publisher
Community
Package
openchrome-mcp
Registry
npm
Transport
stdio, Streamable HTTP
Version
1.15.0
License
MIT
Last commit
Sep 29, 2026

GitHubnpmChangelogIssues

Sources

Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.

Show all 5
  1. github.com · github.com
  2. github.com · github.com
  3. github.com · github.com
  4. github.com · github.com
  5. github.com · github.com

Facts from the official MCP registry, GitHub, npm, PyPI and the Docker catalog. Updated Nov 2, 2026.