About BrowserSolver
BrowserSolver is an MCP server for calling the BrowserSolver web unlocker API from AI clients. It provides tools for fetching, rendering, crawling and inspecting public websites, with hosted and locally run options.
Key features
- 01Fetch pages with anti-bot handling
- 02Crawl public HTML
- 03Render pages with a managed browser
- 04Capture screenshots and PDF assets
- 05Detect website technologies
Use cases
- 01Retrieve content from a public website
- 02Render pages that depend on client-side scripts
- 03Capture a page as an image or PDF
- 04Identify a site's CMS and frameworks
MCP support
Exposes BrowserSolver API operations as tools to MCP clients over stdio or Streamable HTTP. Clients provide an API key; the hosted endpoint is available, or the package can run locally or be self-hosted.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://mcp.browsersolver.com/claude mcp add --transport http com-browsersolver https://mcp.browsersolver.com/{"mcpServers":{"com-browsersolver":{"type":"http","url":"https://mcp.browsersolver.com/"}}}Open in Cursor{"servers":{"com-browsersolver":{"type":"http","url":"https://mcp.browsersolver.com/"}}}Open in VS Code{"mcpServers":{"com-browsersolver":{"type":"http","url":"https://mcp.browsersolver.com/"}}}{"mcpServers":{"com-browsersolver":{"serverUrl":"https://mcp.browsersolver.com/"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
https://mcp.browsersolver.com/Auth requiredTools
Details
From the project READMEBrowserSolver MCP Server
Official Model Context Protocol server for the BrowserSolver web unlocker API.
Unlock, render, crawl and screenshot any website — anti-bot bypass and technology detection through one API.
It lets Claude, Cursor, VS Code, Windsurf and any MCP client call the API as tools. Runs over stdio (local) or Streamable HTTP (self-hosted).
Requirements
Hosted server (recommended)
BrowserSolver runs this server for you at https://mcp.browsersolver.com/ (Streamable HTTP). Send your API key in the x-api-key header; nothing to install.
claude mcp add --transport http browsersolver https://mcp.browsersolver.com/ --header "x-api-key: YOUR_API_KEY"
{
"mcpServers": {
"browsersolver": {
"url": "https://mcp.browsersolver.com/",
"headers": {
"x-api-key": "YOUR_API_KEY"
}
}
}
}
The hosted server and this package expose the same API; run the package locally when you want stdio, your own network egress, or to self-host it.
Run it locally
Claude Code
claude mcp add browsersolver --env BROWSERSOLVER_API_KEY=YOUR_API_KEY -- npx -y @browsersolver/mcp
Claude Desktop, Cursor, Windsurf and other clients
Add the server to the client's MCP configuration (claude_desktop_config.json, .cursor/mcp.json…):
{
"mcpServers": {
"browsersolver": {
"command": "npx",
"args": ["-y", "@browsersolver/mcp"],
"env": {
"BROWSERSOLVER_API_KEY": "YOUR_API_KEY"
}
}
}
}
VS Code
{
"servers": {
"browsersolver": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@browsersolver/mcp"],
"env": {
"BROWSERSOLVER_API_KEY": "${input:browsersolver-api-key}"
}
}
},
"inputs": [
{
"type": "promptString",
"id": "browsersolver-api-key",
"description": "BrowserSolver API key",
"password": true
}
]
}
Claude Desktop extension
Download the .mcpb bundle from the releases page and open it; Claude Desktop asks for your API key.
Docker
docker build -t browsersolver-mcp .
docker run -i --rm -e BROWSERSOLVER_API_KEY=YOUR_API_KEY browsersolver-mcp
Tools
| Tool | Description |
|---|---|
stats | Infrastructure health for an engine or endpoint over the last hour. Not scoped to your account or tenant. Enabled per account: HTTP 403 means contact support to activate it. |
usage | Retrieve real-time usage statistics and credit balance for your BrowserSolver account. |
website_antibot | Single-pass scan that names the bot-protection vendor in front of a URL so you can choose the right BrowserSolver fetch tier next. |
website_crawler | Fast HTTP pull of public HTML with no browser session. Ideal when the first response already contains the content you need. |
website_rendering | Run a managed browser session against a public URL and collect the HTML after client-side scripts finish. Prefer Crawler for static markup; escalate to WebUnlocker on approved hosts when challenges p… |
website_screenshot | Turn any public URL into a PNG, JPEG, WebP, or PDF asset rendered by BrowserSolver. No local Chromium fleet to operate. |
website_technology | Map CMS, frameworks, analytics, CDN, and security tooling exposed by a public URL. Choose simple lists or expert metadata with confidence scores. |
website_webunlocker | BrowserSolver's highest HTML fetch tier for retail and marketplace hosts on your account whitelist. Solves persistent bot challenges that still block Rendering. |
Every tool that calls the API consumes credits. JSON results are returned as text; images are returned inline and other files (PDF…) as embedded resources, up to 4 MB.
Streamable HTTP
npx @browsersolver/mcp --http --port 3000
The endpoint is POST /mcp (stateless, JSON responses). Each client sends its own key in the x-api-key header (or Authorization: Bearer <key>); the server never uses a key of its own. It binds to 127.0.0.1 by default and rejects browser origins unless you allow them — put it behind TLS before exposing it.
createHttpHandler() is exported for Fetch-compatible runtimes (Cloudflare Workers, Deno, Bun):
import { createHttpHandler } from "@browsersolver/mcp";
export default { fetch: createHttpHandler({ allowedOrigins: [] }) };
Security
- The API key is read from
BROWSERSOLVER_API_KEY(stdio) or the request headers (HTTP) and removed from error messages. - Content fetched from websites is untrusted: the server instructions tell the model to treat it as data, not instructions.
- See SECURITY.md to report a vulnerability.
Development
npm install
npm test
npm run build
npx @modelcontextprotocol/inspector node dist/stdio.js
Built on the SDK
The server uses the official Node.js SDK (@browsersolver/sdk).
All BrowserSolver SDKs
| SDK | Package | Install |
|---|---|---|
| Node.js | @browsersolver/sdk | npm install @browsersolver/sdk |
| Python | browsersolver | pip install browsersolver |
| Go | browsersolver-go | go get github.com/browsersolver/browsersolver-go |
| .NET | BrowserSolver | dotnet add package BrowserSolver |
| Ruby | browsersolver | gem install browsersolver |
| PHP | browsersolver/sdk | composer require browsersolver/sdk |
| Java | browsersolver-java | build from source, see its README |
| CLI | @browsersolver/cli | npm install -g @browsersolver/cli |
| MCP server | @browsersolver/mcp | npx -y @browsersolver/mcp |
License
MIT — see LICENSE.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.