google-surf-mcp
io.github.HarimxChoi/google-surf-mcp
About google-surf-mcp
google-surf-mcp is an MCP server published by the GitHub account HarimxChoi. Web, academic and code search with graph RAG, data lineage, ontology and cross-project schema links.
It runs on your own machine: your AI client starts it from the npm package google-surf-mcp at version 1.1.4.
It asks for 4 secrets: SEARCH_API, GITHUB_TOKEN, ANTHROPIC_API_KEY and ORCAROUTER_API_KEY. Give it a key with the least access that still works.
Version 1.1.4 was published on 20 October 2026, and the source code is public, so you can read it before installing.
Written from the registry entry. 9 automated checks on the registry entry and the package code: 6 pass, 2 warn, 0 fail, 1 info. How we check.
What it asks for
| Variable | Required | Secret | Description |
|---|---|---|---|
SEARCH_API | No | Yes | SearchApi API key. Required only for SearchApi primary or fallback modes. |
SURF_SEARCH_PROVIDER | No | No | Provider for search and search_parallel: browser, searchapi, or fallback. Defaults to browser. |
SURF_SCHOLAR_PROVIDER | No | No | Provider for scholar_search: browser, searchapi, or fallback. Defaults to browser. |
SURF_BROWSER_ENGINE | No | No | Browser engine: auto, native, or playwright. Auto uses one hidden native Chrome broker shared across local MCP sessions. |
CHROME_PATH | No | No | Absolute path to the Chrome binary. Auto-detected on Windows/macOS/Linux when omitted. |
SURF_PROFILE_ROOT | No | No | Directory for the warm Chrome profile. Defaults to ~/.google-surf-mcp. |
SURF_RESEARCH | No | No | Enable local project memory and hybrid retrieval. Defaults to true. |
SURF_RETRIEVAL_MODE | No | No | Shared route for search and search_parallel: live or hybrid. Defaults to hybrid. |
SURF_RESEARCH_ROOT | No | No | Embedded SurrealDB data directory. Defaults to <profile>/research. |
SURF_RESEARCH_VECTOR_MODEL | No | No | Local model for HNSW retrieval and shared reranking. Defaults to Xenova/multilingual-e5-small; use off to disable. |
SURF_RESEARCH_VECTOR_LOW_MEMORY | No | No | Disable ONNX CPU memory arena and memory pattern. Defaults to true. |
SURF_RESEARCH_VECTOR_THREADS | No | No | ONNX intra-op thread count from 1 to 16. Defaults to 4. |
SURF_RESEARCH_REPO_AUTO | No | No | Sparse-index at most one eligible small GitHub repository per search call. Defaults to true. |
SURF_RESEARCH_REPO_AUTO_MAX_MB | No | No | Maximum searchable repository source-text size in MB. Assets are excluded. Defaults to 20. |
SURF_RESEARCH_REPO_AUTO_MAX_FILES | No | No | Maximum repository source file count for automatic indexing. Defaults to 2000. |
SURF_RESEARCH_BROKER_IDLE_MS | No | No | Shared research broker idle lifetime in milliseconds. Defaults to 60000. |
SURF_RESEARCH_READ_CONCURRENCY | No | No | Maximum concurrent research broker reads. Defaults to 4. |
SURF_RESEARCH_QUERY_TIMEOUT_MS | No | No | Timeout per embedded SurrealDB query in milliseconds. Defaults to 120000; timed-out retrieval lanes are reported as partial. |
GITHUB_TOKEN | No | Yes | Optional token that raises GitHub API limits for repository inspection. |
SURF_LOCALE | No | No | Browser locale, e.g. en-US. |
SURF_TZ | No | No | IANA timezone, e.g. America/New_York. Defaults to system timezone. |
SURF_HEADLESS | No | No | Controls Playwright extraction, compatibility, and recovery paths. Native search hides normal system Chrome and shows it only for CAPTCHA recovery. |
SURF_IDLE_CLOSE_MS | No | No | Idle ms before closing the sequential ctx and pool. 0 disables idle auto-close. Defaults to 30000. |
SURF_ALLOW_PRIVATE | No | No | Set to 'true' to allow extract on private/loopback addresses (localhost, 10.x, 192.168.x, 169.254.x, etc). Default blocks them as an SSRF guard. |
SURF_LLM_HEAL | No | No | Enable the optional workflow-only LLM selector repair path. Defaults to false. |
SURF_LLM_PROVIDER | No | No | LLM selector repair provider: anthropic or orcarouter. Defaults to anthropic. |
SURF_LLM_MODEL | No | No | Optional model override. OrcaRouter defaults to orcarouter/auto. |
ANTHROPIC_API_KEY | No | Yes | Anthropic API key for optional LLM-assisted selector repair. |
ORCAROUTER_API_KEY | No | Yes | OrcaRouter API key for optional LLM-assisted selector repair. |
Checks
| Check | Result | Detail |
|---|---|---|
| Source repository linked | Pass | https://github.com/HarimxChoi/google-surf-mcp |
| Version pinned | Pass | Every package has an explicit version |
| Secrets requested | Warn | Asks for 4 secrets: SEARCH_API, GITHUB_TOKEN, ANTHROPIC_API_KEY, ORCAROUTER_API_KEY |
| Known package registry | Pass | All packages come from npm, PyPI, OCI, NuGet or MCPB |
| Namespace ownership | Info | Name verified via GitHub account HarimxChoi |
| Registry text aimed at the AI | Pass | Description and settings contain no hidden characters or instructions to the AI |
| Install scripts | Pass | google-surf-mcp@1.1.4 runs nothing at install |
| Code red flags | Warn | Reads browser or wallet data (build/browser.js:206: "Login Data") |
| Text aimed at the AI | Pass | No hidden characters or instructions to the AI in 85 files, including comments and the README |
Popularity & health: 56 / 100
Worked out from public numbers and our own checks, not from user reviews or ratings. It says how used and how looked-after a server is, not whether it is safe.
32 forks, 7 merged pull requests. Sources: GitHub, npm, PyPI (pypistats.org) and Hacker News (Algolia), fetched 2026-10-31.
What people say
No Hacker News threads link to its source code.
Look further: search Reddit, search Hacker News, read its GitHub issues. These are not reviews we checked.
Facts
| Registry name | io.github.HarimxChoi/google-surf-mcp |
|---|---|
| Publisher | GitHub account HarimxChoi |
| How the name is verified | Name verified via GitHub account HarimxChoi. The registry ties the name prefix to that account or domain; it does not check the code. |
| Type | Local: runs on your machine from a package |
| Packages | npm google-surf-mcp 1.1.4 (stdio) |
| Version | 1.1.4 |
| Published | |
| Last updated | |
| Source repository | https://github.com/HarimxChoi/google-surf-mcp |
| Website | None linked |
| Category | Search & web (assigned by keyword rule, not by hand) |
Related servers in Search & web
- project-knowledge-mcp7/7Cross-project knowledge graph for MCP — map features across mobile,…
- surf7/8Point Gecko at an OpenAPI spec; get first-call-correct, auth-hidden…
- graph-atlas-mcp4/4Tracks documented and undocumented Microsoft Graph API schema…
- CGraph7/7Code graph for coding agents: symbol search, callers, blast radius…
- tableau-graphql-mcp7/7Ask any Tableau lineage question, in any MCP client, through the…
- OpenMetadata3/3Official OpenMetadata MCP: 21 read and write tools for search,…