Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
NAVIGATOR_STATSNoLocal usage counters for usage_report.true
CAPSOLVER_API_KEYNoCaptcha provider key for CapSolver.
NAVIGATOR_STEALTHNoFingerprint + runtime patches for stealth.true
NAVIGATOR_API_KEYSNoHTTP auth keys (comma-separated) for remote access.
NAVIGATOR_HEADLESSNoHeadless mode (set false for captchas/anti-bot).true
NAVIGATOR_HUMANIZENoHuman-like input synthesis.true
TWOCAPTCHA_API_KEYNoCaptcha provider key for 2Captcha.
NAVIGATOR_CDP_ENDPOINTNoDrive an external (patched) browser via a CDP endpoint.
NAVIGATOR_MAX_SESSIONSNoResource cap on parallel sessions.64
NAVIGATOR_PROXY_SERVERNoDefault proxy for all sessions.
NAVIGATOR_AUTO_SNAPSHOTNoInclude snapshots in action results.true
NAVIGATOR_ALLOWED_DOMAINSNoOptional navigation lockdown (allowlist of domains).

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
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
navigator_statusB

One-call status: version, sessions, scope, providers, limits.

usage_reportA

Local usage stats: tool call counts, per-day breakdown, totals.

Purely local counters (~/.navigator/usage.json) for your own insight — no URLs or page content are ever recorded. Disable with NAVIGATOR_STATS=false.

browser_navigateB

Navigate the active (or specified) tab to a URL.

Returns the new page state; includes a fresh snapshot when the page content changed (configurable via NAVIGATOR_AUTO_SNAPSHOT).

browser_navigate_backC

Go back one history step in the tab.

browser_navigate_forwardB

Go forward one history step in the tab.

browser_reloadC

Reload the current page.

browser_wait_forC

Wait until text appears, a selector matches, or a fixed time passes.

browser_get_urlA

Return the current URL and title of the tab.

browser_clickA

Click an element by its ref from the snapshot (e.g. e12).

Uses human-like mouse movement when the session has humanization enabled.

browser_click_textB

Fallback click by visible text (use when no ref is available).

browser_fillC

Fill a field by ref. Set submit=true to press Enter afterwards.

browser_fill_formA

Fill multiple fields in one call — much faster than one fill per field.

Each item: {"ref": "e5", "value": "text"}. Optionally submits the form (presses Enter on the last field).

browser_select_optionB

Select an option in a dropdown (combobox) by ref. Value = option label.

browser_hoverC

Hover over an element by ref (reveals menus/tooltips).

browser_press_keyB

Press a key (e.g. Enter, Escape, Tab, ArrowDown, Control+a).

browser_dragC

Drag element ref_a onto element ref_b.

browser_upload_fileC

Upload a local file. Ref may point to the file input or its trigger button.

browser_scrollB

Scroll the page. Directions: down, up, top, bottom. Optional pixel amount.

browser_snapshotA

Capture the page as a compact, ref-annotated accessibility snapshot.

Elements get stable refs (e.g. [ref=e12]) that interaction tools accept. If the page is unchanged since the last snapshot, returns a short "unchanged" notice instead of re-sending the tree (major token savings). Set force=true to always re-render, deep=true to include child frames.

browser_findA

Search the current page for elements matching a text pattern (regex ok) and/or an ARIA role. Returns matching elements with their refs — cheaper than a full snapshot when you know what you're looking for.

By default only actionable elements (links, buttons, fields, headings, images) are searched; set include_structural=true to also match containers (banner/navigation/form/...).

browser_extract_textA

Extract text — whole page (smart main-content) or a specific element.

Supports pagination via offset/limit for very long pages.

browser_extract_htmlB

Extract HTML — whole document or a specific element (by ref).

browser_extract_linksB

List all links (deduplicated) with their resolved hrefs.

browser_extract_formsA

List forms and their fields — the map for browser_fill_form.

browser_extract_tablesC

Extract content as row arrays (token-cheap vs HTML).

browser_extract_metaB

Extract page metadata: title, meta tags, OpenGraph, canonical.

browser_read_consoleB

Read console messages and page errors (JS errors, logs, failed asserts).

Set drain=true to clear the buffer after reading.

browser_read_dialogsC

Read captured alert/confirm/prompt dialogs.

browser_tab_listB

List the tabs of a session with their URLs.

browser_tab_newA

Open a new tab (optionally navigating it to a URL) and make it active.

browser_tab_selectA

Make another tab active (subsequent tools act on it).

browser_tab_closeB

Close a tab (the active one cannot be the last tab).

browser_session_listA

List all active sessions with their tabs, fingerprints and proxies.

browser_session_newB

Create a new isolated browser session.

  • stealth: apply anti-detection fingerprinting (default on)

  • profile: restore a saved auth profile (from browser_session_save_auth)

  • proxy: per-session proxy server (e.g. http://user:pass@host:port)

  • fingerprint: specific fingerprint name (see stealth docs), random by default

  • bypass_csp: disable CSP enforcement (for pages that block inline scripts)

  • record_har: file path to record a HAR archive of all traffic

browser_session_closeA

Close a session and all its tabs (cookies/storage are discarded unless saved with browser_session_save_auth).

browser_session_save_authA

Persist the session's cookies + localStorage to a named profile.

Restore later via browser_session_new(profile=profile_name) — survives restarts, perfect for staying logged in across engagements.

browser_screenshotB

Take a screenshot and return it as an image (for vision-capable LLMs).

area: "viewport" (visible part), "full" (entire page), or "element" (requires ref). format: png or jpeg (jpeg is much smaller — prefer it for large pages).

browser_save_pdfC

Save the current page as a PDF (Chromium only).

browser_network_capture_startB

Start recording network requests on this tab.

Optional filters: resource_types (document/xhr/fetch/script/image/...), url_contains (substring), methods (GET/POST/...). Default records everything.

browser_network_capture_stopB

Stop recording network requests (buffer is kept until next start).

browser_network_listB

List captured network requests (most recent first).

browser_network_getB

Fetch full details + response body of a captured request (by index).

browser_network_blockA

Block requests matching URL globs across all sessions.

Examples: ["/*.css", "/ads.js", "doubleclick"]. Blocks ads and trackers to speed up automation dramatically.

browser_network_unblockA

Remove all URL blocking rules.

browser_discover_apisC

Discover background API endpoints (fetch/XHR) used by the page — including internal/undocumented APIs, from capture or live observation.

browser_set_dialog_modeA

Set dialog handling: "auto" (accept + record — default) or "manual" (pause dialogs so browser_dialog_respond can answer them).

browser_dialog_respondB

Respond to a pending manual-mode dialog (accept/dismiss, optional text).

browser_evaluateA

Evaluate JavaScript in the page and return the result.

Prefer a function expression: "() => document.title" or "(x) => fetch(x).then(r => r.status)" with arg passed as parameter. Everything the page can do is allowed — this is raw power, use responsibly.

browser_captcha_detectA

Detect captcha widgets on the current page (type, evidence, sitekeys).

browser_captcha_solveA

Solve the captcha on the current page automatically.

Needs a provider API key (TWOCAPTCHA_API_KEY or CAPSOLVER_API_KEY). Supports reCAPTCHA v2, hCaptcha, Turnstile and plain image captchas (via ref pointing at the image element).

browser_captcha_manual_waitA

Wait for a human to solve the captcha (requires a visible browser: NAVIGATOR_HEADLESS=false or VNC). Polls until the captcha disappears.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.2/5.0

Scored across 51 tools

Disambiguation4/5

Tools are organized around clearly separate actions and resources (navigation, clicks, fills, extractions, tabs, sessions, network, captchas), so an agent can usually pick the right one. A few pairs like browser_click vs browser_click_text or browser_snapshot vs browser_find overlap in intent, but the descriptions frame them as ref-based vs fallback/filtered alternatives.

Naming Consistency4/5

The vast majority follow a predictable browser_<verb>_<noun> snake_case pattern, with clear groups like browser_extract_*, browser_network_*, browser_tab_*, and browser_session_*. Exceptions such as navigator_status and usage_report break the prefix pattern, and dialog/network verbs are not perfectly parallel, but the system is still easy to navigate.

Tool Count2/5

Fifty-one tools is well past the 25+ threshold and creates a heavy surface for an agent to evaluate, even for a browser-automation domain. The set could be consolidated (e.g., extraction variants, captcha helpers, network controls) without losing core capability, so the count feels too high rather than well-scoped.

Completeness5/5

The server covers the full browser lifecycle: session/tab management, navigation, interaction, extraction, network capture/blocking, dialogs, console, screenshots, PDF, and captcha handling. There are no obvious dead ends, and browser_evaluate provides an escape hatch for anything not explicitly exposed.

Maintenance

ActivityMaintained
ResponsivenessNo issues