MCP Server Browser vs CDPM

A side-by-side look at the MCP Server Browser and CDPM MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

MCP Server Browser logoMCP Server BrowserBrowser Automation · Local subprocess (stdio)Browser automation capabilities using Puppeteer, both support local and remote browser connection.67GreatAuth: no auth requiredCDPM logoCDPMBrowser Automation · Local subprocess (stdio)Shares numbered, logged-in Chrome instances over CDP across multiple Claude Code sessions, with per-tab command queues. Local stdio server.64GoodAuth: no auth required

Verdict: choose MCP Server Browser for browser automation work as a local process; choose CDPM for browser automation as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

MCP Server Browser logoChoose MCP Server Browser when

  • You need dedicated capabilities in the Browser Automation domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: No auth required.
  • You want tools like browser_click, browser_close, browser_close_tab.
Explore MCP Server Browser

CDPM logoChoose CDPM when

  • You need dedicated capabilities in the Browser Automation domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: No auth required.
  • You want tools like browser_status, browser_launch, browser_close.
Explore CDPM

Feature & specification comparison

Rows where the two servers differ are marked.

SpecMCP Server Browser logoMCP Server BrowserCDPM logoCDPM
CategoryBrowser AutomationBrowser Automation
Quality signal67/100 · Great64/100 · Good
Install commandConfirmedConfirmed
TransportLocal subprocess (stdio)Local subprocess (stdio)
AuthNo auth requiredNo auth required
PricingFreeFree
Required env varsNone listedNone listed
Verified ownerCommunity listingCommunity listing
GitHub stars39,3682
Directory activity 6 views 0 installs 0 upvotes 1 views 0 installs 0 upvotes
Tools2336

Tools & capabilities

MCP Server Browser tools 23

  • browser_clickClick an element on the page, before using the tool, use `browser_get_clickable_elements` to get the index of the element, but not call `browser_get_clickable_elements` multiple times
  • browser_closeClose the browser when the task is done and the browser is not needed anymore
  • browser_close_tabClose the current tab
  • browser_evaluateExecute JavaScript in the browser console
  • browser_form_input_fillFill out an input field, before using the tool, Either 'index' or 'selector' must be provided
  • browser_get_clickable_elementsGet the clickable or hoverable or selectable elements on the current page, don't call this tool multiple times
  • browser_get_download_listGet the list of downloaded files
  • browser_get_markdownGet the markdown content of the current page
  • browser_get_textGet the text content of the current page
  • browser_go_backGo back to the previous page
  • browser_go_forwardGo forward to the next page
  • browser_hoverHover an element on the page, Either 'index' or 'selector' must be provided
  • +11 more on the listing page

CDPM tools 36

  • browser_statusShows running Chrome slots (1-30) with their tabs, opener, last action and one-line summary. Pass slot for just that slot.
  • browser_launchStarts slot Chrome. Call only when the user explicitly asks (other tools never start a closed slot). Without slot, uses the lowest free slot. If already running, just attaches. The user decides windowed (visible) vs headless (hidden): headless: true only if they say "headless/hidden". If unstated, don't guess; ask first, then call with headless. Starting a closed slot without headless only returns a confirmation request. Start several slots at once with slots (list) or count (lowest first). For different jobs per slot, after launching give each slot its own subagent in parallel.
  • browser_closeCloses slot Chrome cleanly (session and cookies saved). The profile (logins) is kept. Reports if another agent used it recently.
  • browser_tabsSlot tab list: number, ID, title, URL, opener, last action, per-tab summary (updated only by actions with summary). "·front" marks the tab currently in front in its window (one per window).
  • browser_tab_newOpens a new tab in the slot and returns its ID. When agents share a slot, open your own tab and work only by its ID to avoid mixing.
  • browser_tab_closeCloses a tab. tab is required.
  • browser_tab_selectBrings a tab to the front of its Chrome window. Changes what the user sees, so use only when the user wants it. (Background tabs can be read, operated and captured; no need to bring them forward to work.)
  • browser_snapshotReads the tab as accessibility-tree text. Clickable/typable elements get refs like [e12]. Long pages are split; only page 1 (top) is shown (page=2 to continue; refs stay the same across pages). find="text" shows only matching elements with their parent context; ref="e40" shows only that element's subtree. Refs change when the page changes, so re-snapshot before acting.
  • browser_textReads the page body text (main/article if present). With ref, only that element's text. Shorter and easier than a snapshot for articles/documents. Use page for long text.
  • browser_screenshotCaptures the visible area of the tab as PNG, even background tabs (without switching). Never changes window size or viewport, so full-page capture is unsupported (scroll then capture, or use snapshot/text).
  • browser_navigateNavigates the tab to a URL and waits for the body to load.
  • browser_backGo back.
  • +24 more on the listing page

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

MCP Server Browser

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "agent-infra-mcp-server-browser": {
      "command": "npx",
      "args": [
        "-y",
        "@agent-infra/mcp-server-browser"
      ]
    }
  }
}

CDPM

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "igelharine-cdpm": {
      "command": "npx",
      "args": [
        "-y",
        "cdpm-mcp"
      ]
    }
  }
}

Frequently asked questions

MCP Server Browser is categorized under Browser Automation and uses a local stdio subprocess. CDPM belongs to Browser Automation and uses a local stdio subprocess. Pick MCP Server Browser for browser automation work and CDPM for browser automation.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

MCP Server Browser is listed as free. Auth: no auth required. CDPM is listed as free. Auth: no auth required. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add agent-infra-mcp-server-browser and igelharine-cdpm as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, MCP Server Browser has a quality signal of 67/100 (Great) with 6 views, 0 installs and 39,368 GitHub stars. CDPM has 64/100 (Good) with 1 views, 0 installs and 2 GitHub stars.