Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SURF_TZNoTimezone for the browser (e.g. America/New_York, default: system timezone)
CHROME_PATHNoAbsolute path to Chrome binary (auto-detected if not set)
SURF_LOCALENoBrowser locale (default: en-US)
SURF_HEADLESSNoSet to 'false' to run Chrome visibly (default: 'true')
SURF_PROFILE_ROOTNoDirectory where the warm Chrome profile lives (default: ~/.google-surf-mcp)
SURF_IDLE_CLOSE_MSNoIdle milliseconds before closing browser contexts (default: '30000')

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
searchA

Single Google search via browser, SearchApi primary, or browser-to-SearchApi fallback. Returns title, URL, and snippet. Results are cached 24h. For latest/today/breaking queries set SURF_CACHE_TTL_SEARCH_MS=0 to bypass the cache. Browser is the default provider and requires no API key. Default limit 10, max 20.

scholar_searchA

Search Google Scholar via browser, SearchApi primary, or fallback. Returns title, authors, publication, year, snippet, citation count, related/version links, and an available full-text link. Results are cached with the same TTL as search. Max 10 papers per call.

search_parallelA

Run 2-10 Google searches with the provider selected by SURF_SEARCH_PROVIDER. Browser mode uses a worker pool. SearchApi primary and fallback work in cloud mode. Per-query browser failures are isolated and replaced individually in fallback mode.

extractA

Fetch one public URL -> clean article text. HTML via Mozilla Readability; academic PDFs (arxiv/biorxiv/Nature/OpenReview/NeurIPS/JMLR/PMLR/Springer/PubMed-via-PMC) auto-detected via Content-Type, %PDF magic, citation_pdf_url meta, and per-domain URL rules. Tiered depth: mode="abstract" returns ~1500 chars (PDF page 1 or HTML meta description) -- cheap survey to triage relevance before paying for full body. mode="full" (default) returns the whole article. Best-effort: failures return an errorInfo instead of throwing.

search_extractA

One-shot Google search + parallel extract of the top results. Default mode="abstract" returns SERP enriched with ~1500-char abstracts per result -- a cheap survey of what the top results actually contain, far fewer tokens than fetching all bodies. Switch to mode="full" only when you need the actual article texts (slower, much more tokens). Per-page extract failures are isolated. Disabled in cloud mode.

healthA

MCP server status: cascade mode + transitions, rate-limiter usage, cache size, config. Call this if searches start failing or returning empty -- check cascade.totalCaptchas and rateLimiter.queueSize, and reduce search volume if they are high.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/HarimxChoi/google-surf-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server