Server data from the Official MCP Registry
Google search via Playwright with a warm Chrome profile. No API key, no proxies.
Google search via Playwright with a warm Chrome profile. No API key, no proxies.
This MCP server implements Google search via Playwright with appropriate security controls for its use case. Authentication is not applicable (no API keys required). Code quality is solid with proper error handling, input validation, and permissions appropriately scoped to browser automation. Minor concerns around error message exposure and lack of logging do not significantly impact the security posture. Supply chain analysis found 2 known vulnerabilities in dependencies (0 critical, 2 high severity). Package verification found 1 issue.
7 files analyzed · 7 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Set these up before or after installing:
Environment variable: CHROME_PATH
Environment variable: SURF_PROFILE_ROOT
Environment variable: SURF_LOCALE
Environment variable: SURF_TZ
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-harimxchoi-google-surf-mcp": {
"env": {
"SURF_TZ": "your-surf-tz-here",
"CHROME_PATH": "your-chrome-path-here",
"SURF_LOCALE": "your-surf-locale-here",
"SURF_PROFILE_ROOT": "your-surf-profile-root-here"
},
"args": [
"-y",
"google-surf-mcp"
],
"command": "npx"
}
}
}From the project's GitHub README.
MCP server for Google search. No API key. Playwright with a warm Chrome profile.
Free Google search MCPs out there mostly don't work in 2026 — Google blocks them in seconds. After ~30 failed attempts I found two things matter:
--enable-automation from Chrome's launch args. Playwright sets it by default. Stealth plugins don't touch it. Google checks it first.With those two: ~2s per query, parallel works, no keys, no proxies.
| result | |
|---|---|
| sequential, warm | ~2s/query |
| parallel x4 | ~9s wall |
| parallel x10 | ~16s wall |
| cold profile | CAPTCHA every time |
--enable-automation left on | CAPTCHA every time |
Requires Node 18+ and Google Chrome (or Chromium) on the system.
npx google-surf-mcp --help # nothing yet, just to pull the package
npx google-surf-mcp # actual MCP — register in client config
Or local clone:
git clone https://github.com/HarimxChoi/google-surf-mcp
cd google-surf-mcp
npm install
npm run bootstrap
bootstrap opens a Chrome window. Run one Google search in it. Close. Profile is now warm.
Override paths if needed:
CHROME_PATH=/path/to/chrome SURF_TZ=America/New_York npm run bootstrap
~/.claude.json:
{
"mcpServers": {
"google-surf": {
"command": "npx",
"args": ["-y", "google-surf-mcp"]
}
}
}
Or with a local clone:
{
"mcpServers": {
"google-surf": {
"command": "node",
"args": ["/abs/path/to/google-surf-mcp/build/index.js"]
}
}
}
search(query, limit?) — single query, ~2ssearch_parallel(queries[], limit?) — pool of 4, max 8 queries per call| var | default | notes |
|---|---|---|
CHROME_PATH | auto-detected | absolute path to Chrome binary |
SURF_PROFILE_ROOT | ~/.google-surf-mcp | where the warm profile lives |
SURF_LOCALE | en-US | browser locale |
SURF_TZ | system tz | e.g. America/New_York |
npm run bootstrapCHROME_PATHMIT
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.