Labsco
MCP SERVER · OFFICIAL PROJECT

Browser MCP

by bytedance

Drive a real browser from the accessibility tree — navigate, click, fill and read pages back as markdown, no vision model needed.

Browser Automation, Control & ScreenshotsOfficial source
Summary
Structured page data instead of pixels — which is why it works on models with no vision at all.

Elements are addressed by index from a single clickable-elements listing, so a page costs a fraction of what a screenshot loop costs in context. When structure genuinely is not enough — a canvas, a chart, a visual layout — --vision switches it over to screenshots for that run. browser_evaluate is the escape hatch for everything the tool list does not name.

What it is

A Puppeteer-based browser automation server that works from the page's structured accessibility data and element indexes rather than pixels, with an optional screenshot mode for layouts where structure is not enough.

What you get
  • Navigation: open a URL, move back and forward, and shut the browser down when the task ends — browser_navigate, browser_go_back, browser_go_forward, browser_close
  • Interaction by element index, after listing the page's clickable elements once — browser_get_clickable_elements, browser_click, browser_hover, browser_select, browser_form_input_fill
  • Keyboard and scrolling — browser_press_key, browser_scroll
  • Page content back as markdown or plain text, and every link on the page — browser_get_markdown, browser_get_text, browser_read_links
  • Screenshots of the full page or one element, with an option to highlight it — browser_screenshot
  • Tabs opened, listed, switched and closed — browser_new_tab, browser_tab_list, browser_switch_tab, browser_close_tab
  • JavaScript executed in the page console — browser_evaluate
  • The files downloaded during the session — browser_get_download_list
Requirements

No account and no key. Node.js 18 or newer, and npx to run @agent-infra/mcp-server-browser over stdio; adding --port turns the same binary into a remote server that serves Streamable HTTP at /mcp and SSE at /sse. --browser chooses chrome, edge or firefox, --executable-path points at a specific binary, and --cdp-endpoint or --ws-endpoint attaches to a browser that is already running. --proxy-server and --proxy-bypass route its traffic, --vision switches it from the default Aria snapshots to screenshots, and DISPLAY covers rendering on a virtual display.

Setup effort

One command — npx @agent-infra/mcp-server-browser@latest