Browserless MCP server
io.browserless · Updated
Official Browserless MCP server: browser automation, scraping, screenshots and PDFs for AI agents.
At a glance
Browserless is an MCP server in the Design & Media category. It runs locally over stdio via `npx -y @browserless.io/mcp`, and needs BROWSERLESS_TOKEN and Authorization. It exposes 14 tools, including browserless_smartscraper, browserless_search and browserless_map. It scores A (91/100) on the MCP Skills Hub health score as of Oct 27, 2026.
One-click install
Opens your editor and pre-fills the config. Your editor will ask before adding it.
How to install Browserless in your AI client
Setup for Claude Code, Claude Desktop, Cursor, Codex, Windsurf, Cline and VS Code — copy-paste ready.
How to install Browserless in Claude CodeAnthropic's agentic CLI
Add the server
bashclaude mcp add browserless -e 'BROWSERLESS_TOKEN=<BROWSERLESS_TOKEN>' -- npx -y @browserless.io/mcpFill in your credentials
Replace <BROWSERLESS_TOKEN>, Bearer <YOUR_TOKEN> with your real values. Keep secrets out of any config file you commit.
Verify it's connected
bashclaude mcp listSharing it with your team?
Add `--scope project` to write it to .mcp.json in the repository root, which you can commit (with the secrets left as environment variables).
Use it in a session
Ask Claude to use the tools this server exposes (e.g. browserless_smartscraper, browserless_search, browserless_map). It discovers them automatically.
How to install Browserless in Claude DesktopDesktop app (MCP config)
Open your MCP config
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json · Windows: %APPDATA%\Claude\claude_desktop_config.json
Add this server
json{ "mcpServers": { "browserless": { "command": "npx", "args": [ "-y", "@browserless.io/mcp" ], "env": { "BROWSERLESS_TOKEN": "<BROWSERLESS_TOKEN>" } } } }Fill in your credentials
Replace <BROWSERLESS_TOKEN>, Bearer <YOUR_TOKEN> with your real values. Keep secrets out of any config file you commit.
Restart Claude Desktop
The tools appear under the 🔌 menu once the app reloads.
How to install Browserless in CursorAI-first code editor
Create / edit .cursor/mcp.json in your project
json{ "mcpServers": { "browserless": { "command": "npx", "args": [ "-y", "@browserless.io/mcp" ], "env": { "BROWSERLESS_TOKEN": "<BROWSERLESS_TOKEN>" } } } }Fill in your credentials
Replace <BROWSERLESS_TOKEN>, Bearer <YOUR_TOKEN> with your real values. Keep secrets out of any config file you commit.
Enable it
Cursor Settings → MCP → toggle the server on. Tools become available to the Composer/Agent.
How to install Browserless in Codex CLIOpenAI coding agent
Add to ~/.codex/config.toml
toml[mcp_servers.browserless] command = "npx" args = ["-y", "@browserless.io/mcp"] env = { BROWSERLESS_TOKEN = "<BROWSERLESS_TOKEN>" }Fill in your credentials
Replace <BROWSERLESS_TOKEN>, Bearer <YOUR_TOKEN> with your real values. Keep secrets out of any config file you commit.
Run Codex
Codex loads MCP servers from config.toml on startup and exposes their tools to the agent.
How to install Browserless in WindsurfCodeium's agentic IDE
Edit ~/.codeium/windsurf/mcp_config.json
json{ "mcpServers": { "browserless": { "command": "npx", "args": [ "-y", "@browserless.io/mcp" ], "env": { "BROWSERLESS_TOKEN": "<BROWSERLESS_TOKEN>" } } } }Fill in your credentials
Replace <BROWSERLESS_TOKEN>, Bearer <YOUR_TOKEN> with your real values. Keep secrets out of any config file you commit.
Reload
Windsurf → Cascade → refresh MCP servers. Cascade can now call the tools.
How to install Browserless in ClineVS Code autonomous agent
Open Cline → MCP Servers → Configure
Adds to cline_mcp_settings.json.
Add the server
json{ "mcpServers": { "browserless": { "command": "npx", "args": [ "-y", "@browserless.io/mcp" ], "env": { "BROWSERLESS_TOKEN": "<BROWSERLESS_TOKEN>" } } } }Fill in your credentials
Replace <BROWSERLESS_TOKEN>, Bearer <YOUR_TOKEN> with your real values. Keep secrets out of any config file you commit.
How to install Browserless in VS CodeCopilot / MCP support
Create .vscode/mcp.json
json{ "servers": { "browserless": { "type": "stdio", "command": "npx", "args": [ "-y", "@browserless.io/mcp" ], "env": { "BROWSERLESS_TOKEN": "<BROWSERLESS_TOKEN>" } } } }Fill in your credentials
Replace <BROWSERLESS_TOKEN>, Bearer <YOUR_TOKEN> with your real values. Keep secrets out of any config file you commit.
Start it
VS Code shows a ▶ Start action above the server entry. Agent mode (Copilot Chat) can then use the tools.
What does Browserless need from you?
OAuth or bearer token — Bearer token for your Browserless API key (Bearer <token>). Optional: the hosted server also supports OAuth sign-in.
BROWSERLESS_TOKENrequiredsecretEnvironment variableYour Browserless API token
BROWSERLESS_API_URLoptionalEnvironment variableBrowserless API endpoint (regional or self-hosted)
AuthorizationoptionalsecretHTTP headerBearer token for your Browserless API key (Bearer <token>). Optional: the hosted server also supports OAuth sign-in.
x-browserless-api-urloptionalHTTP headerRegional Browserless endpoint, e.g. https://production-lon.browserless.io. Defaults to San Francisco.
Pass secrets through your shell environment rather than committing them into a config file.
What tools does Browserless expose? (14)
Taken from the project's README — the server itself was not queried, so check its docs for the exact schemas.
- browserless_smartscraperScrape a single webpage and return its content as markdown or HTML. Handles JavaScript-heavy pages and anti-bot measures automatically. For content across multiple pages, use `browserless_crawl`; to list a site's URLs, use `browserless_map`
- browserless_searchSearch the web using Browserless and optionally scrape each result. Supports web, news, and image search with geo-targeting and time filters.
- browserless_mapDiscover and map all URLs on a website. Scans via sitemaps and link extraction. Returns URLs with optional titles and descriptions. Useful for site audits and content discovery.
- browserless_crawlCrawl a website and scrape every discovered page. Supports depth control, path filtering, sitemap strategies, and configurable scrape options. Returns scraped content and metadata for each page.
- browserless_performanceRun Lighthouse audits on any URL. Returns category scores inline and saves the full JSON report outside the conversation: a local path (stdio) or authenticated single-use download URL (HTTP). Download to disk and inspect only needed fields
- browserless_functionExecute custom Puppeteer JavaScript on the Browserless cloud. The function receives a `page` object and optional `context`; return `{ data, type }` to control the payload and Content-Type.
- browserless_exportExport a webpage via the Browserless `/export` API. Fetches the URL and returns its native content (HTML, PDF, image, etc.) with automatic content-type detection.
- browserless_agentDrive a persistent browser session via a ReAct loop: snapshot the page, plan, batch interactions (click, type, scroll, evaluate, etc.), and re-snapshot. Uses ref-based selectors derived from snapshots, supports multi-tab workflows, screensh
- browserless_skillLoad an on-demand recipe for a non-trivial page mechanic (shadow DOM, cookie consent, modals, captchas, dynamic content, snapshot misses, screenshots, tabs). Companion to `browserless_agent`.
- browserless_profilesList the authentication profiles saved for the current token, with cookie and origin counts. Pass a profile's name as `profile` to another tool to reuse its logged-in state.
- browserless_accountRead the account behind the current token: plan, unit balance, billing period, and API key names. Never returns API token values.
- browserless_usageRead request and unit consumption: successes, errors, timeouts, queueing, peak concurrency, captchas, proxy bytes and units. Optionally scoped to specific API keys.
- browserless_sessionsInspect the account's sessions — browsers running now, persistent sessions on dedicated workers, recorded session replays, and 1Password credential integrations. Also downloads a replay as a fully self-contained rrweb player page (`action:
- browserless_logsRead Browserless's own record of recent requests: what was attempted, whether it failed, why it stopped, how long it took and what it cost. The tool for diagnosing a run that failed on the Browserless side. Available window is plan-dependen
What the code can do
Read from the published package source — never executed. Parsed 62 of 62 source files.
This server can run other programs on your machine, read and write files and make network requests.
How it was published
- Runs postinstall on install — this executes when you install the package, before you deliberately run anything.
- Published by a verified CI identity (github trusted publishing) rather than a personal token.
- Has a provenance attestation tying this artifact to the commit it was built from.
- 3 npm maintainers · last published by GitHub Actions.
Maintainer of this package and think something here is wrong? Tell us and we'll correct it.
Before you install
Signals gathered from the source repo and package registry — not a safety verdict.
What it can reach
- Runs code on your machine — Executes as a local process with your user's permissions, including filesystem access.
- Downloads at launch — The package is fetched from its registry each run unless you pin a version.
- Last commit today — Actively maintained.
- 17 GitHub stars — Community adoption signal.
- 1.8k weekly downloads — Regularly installed by other developers.
Client compatibility
Health score
A · 91Maintenance, adoption, transparency and packaging — not a safety audit. How this is calculated
- Maintenance30%100%
Last commit 0 days ago.
- Adoption20%57%
17 stars, 1776 weekly downloads.
- Transparency20%100%
4/4: ✓ public source repo, ✓ declared license, ✓ documentation, ✓ discoverable tool list.
- Provenance15%100%
Package and registry entry point at the same repository.
- Packaging15%100%
Publishes a pinned version (1.40.2).
Documentation
Full READMEBrowserless MCP Server
MCP (Model Context Protocol) server for Browserless.io — expose the Browserless smart scraper API to LLM clients like Claude Desktop, Cursor, VS Code, and Windsurf.
Quick Start
Get an API token from browserless.io (free tier available), then point your MCP client at the hosted server:
{
"mcpServers": {
"browserless": {
"url": "https://mcp.browserless.io/mcp?token=your-token-here"
}
}
}No local install — see Configuration for per-client snippets.
Tools
| Tool | Description | | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | browserless_smartscraper | Scrape a single webpage and return its content as markdown or HTML. Handles JavaScript-heavy pages and anti-bot measures automatically. For content across multiple pages, use browserless_crawl; to list a site's URLs, use browserless_map. | | browserless_search | Search the web using Browserless and optionally scrape each result. Supports web, news, and image search with geo-targeting and time filters. | | browserless_map | Discover and map all URLs on a website. Scans via sitemaps and link extraction. Returns URLs with optional titles and descriptions. Useful for site audits and content discovery. | | browserless_crawl | Crawl a website and scrape every discovered page. Supports depth control, path filtering, sitemap strategies, and configurable scrape options. Returns scraped content and metadata for each page. | | browserless_performance | Run Lighthouse audits on any URL. Returns category scores inline and saves the full JSON report outside the conversation: a local path (stdio) or authenticated single-use download URL (HTTP). Download to disk and inspect only needed fields with jq; files expire after 15 minutes or when the MCP session ends. Optionally filter by category, emulate a mobile or desktop device, supply a custom Lighthouse config, or supply performance budgets. | | browserless_function | Execute custom Puppeteer JavaScript on the Browserless cloud. The function receives a page object and optional context; return { data, type } to control the payload and Content-Type. | | browserless_export | Export a webpage via the Browserless /export API. Fetches the URL and returns its native content (HTML, PDF, image, etc.) with automatic content-type detection. | | browserless_agent | Drive a persistent browser session via a ReAct loop: snapshot the page, plan, batch interactions (click, type, scroll, evaluate, etc.), and re-snapshot. Uses ref-based selectors derived from snapshots, supports multi-tab workflows, screenshots, captcha solving, live URLs, and file upload/download (captured downloads auto-surface as handles; bytes never enter context). | | browserless_skill | Load an on-demand recipe for a non-trivial page mechanic (shadow DOM, cookie consent, modals, captchas, dynamic content, snapshot misses, screenshots, tabs). Companion to browserless_agent. | | browserless_profiles | List the authentication profiles saved for the current token, with cookie and origin counts. Pass a profile's name as profile
…
Excerpt — the full document is on GitHub.
Alternatives to Browserless
- ZennoPoster: browser in ProjectMakerB · 69Drive the browser of ZennoPoster ProjectMaker: open pages, read and click elements, screenshots.
- Figma MCP ServerA · 88The Figma MCP server brings Figma design context directly into your AI workflow.
- CanvashandC · 59Figma MCP server and plugin: AI agents read and edit live Figma files, no Figma API token.
- Remote Browser MCP Server from MCPBundlesB · 63Automate cloud Chrome—navigate, click, type, screenshot, run code, record screen video
Maintain Browserless? Add a badge to your README
Shows its health grade, and links readers to install steps for every client.
[](https://mcp-skills-hub.vercel.app/mcps/io-browserless-mcp)Catalog data refreshed . Something wrong? Report it.