Skip to main content
Glama
real-browser-mcp-server
by codeiva11

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
HEADLESSNoRun browser headless (no visible window). Values: true/false/1/0/yes/no.auto (CI + no-display detection)
TURNSTILENoAssist with Cloudflare Turnstile challenges. Values: true/false/1/0/yes/no/on/off.false
AI_HEALINGNoAuto-repair broken CSS selectors in click/type. Values: true/false/1/0/yes/no/on/off.true
ENABLE_BLOCKERNoBlock ads and trackers. Values: true/false/1/0/yes/no/on/off.true
CHROME_NO_SANDBOXNoForce-disable or force-enable the Chromium OS sandbox. Values: true/1/yes/false/0.auto (CI/root detection)
REAL_BROWSER_LOG_LEVELNoStructured JSON log verbosity. Values: debug/info/warn/error.info
REAL_BROWSER_VIDEO_DIRNoWhere recordVideo writes .webm recordings.$TMPDIR/real-browser-mcp/videos
REAL_BROWSER_USER_AGENTNoOverride/rotate the browser User-Agent. A comma-separated list rotates one entry per browser_init call.auto (built from Chromium version)
REAL_BROWSER_ALLOW_DECRYPTNoOpt-in for extract_data's auto key-discovery AES conversion. Values: true/1/yes.off
REAL_BROWSER_SEND_PROGRESSNoEmit notifications/progress JSON-RPC messages to the MCP client. Values: true/1.off
REAL_BROWSER_TOOL_TIMEOUT_MSNoHard watchdog budget per tool call in milliseconds (integer).120000
REAL_BROWSER_ALLOW_PRIVATE_NETWORKNoAllow navigate/replay_request/redirect_tracer to target localhost/private IPs (off by default — SSRF guard). Values: true/1/yes.off

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
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
browser_initB

Initialize a browser session with configurable options: headless mode, proxy, viewport, video recording, resource filtering, biometric anti-detection hardware spoofing (WebGL, Canvas, AudioContext), and WebRTC leak protection. Automatically recovers stale sessions.

navigateB

Navigate to a URL or manage browser tabs (list, switch, new tab, close tab). Supports configurable wait conditions, timeout, automatic retry on failure, and waitForChallenge to auto-solve Cloudflare-style JS challenges.

get_contentB

Get page content in multiple formats: html, text, markdown, rawHttp, or elements. Extracts text, attributes, or bounding box coordinates. Can save directly to a file.

waitB

Wait for a selector, navigation event, networkidle state, or a fixed timeout before continuing.

clickA

Click or drag a page element by CSS selector or annotation ID. Supports drag-and-drop / slider manipulation via dragTo, iframe context, hover before click, video player API, and automatic retry with fallback selectors.

typeB

Type text into an input field with configurable keystroke delay, field clearing, and iframe support.

browser_closeA

Close the browser session and release all browser resources.

solve_captchaB

Automate form completion and interactive widget verification on web pages. Supports JavaScript-based challenge widgets, image text transcription, and intelligent form field mapping for QA and automated browsing workflows.

random_scrollA

Scroll the page with configurable direction, amount, and automatic lazy-load triggering.

redirect_tracerA

Trace the complete redirect chain of a URL. Tracks HTTP 301/302, JavaScript navigation (window.location, setTimeout), and meta refresh tags. Returns the full path with status codes and headers.

extract_dataB

Extract structured data from the current page in multiple modes: regex, json, meta, structured, auto, apiDiscovery, parse (string conversion), transform (data format conversion), or links (all links including nested iframes).

press_keyC

Press keyboard keys with configurable modifier keys, repeat count, and keystroke delay.

deep_analysisA

Inspect the current page in depth: DOM structure, scripts, stylesheets, accessibility, performance metrics, SEO tags, response headers, loaded technologies, and content-loading strategy recommendations.

network_recorderB

Record, inspect, and control network activity. Supports 14 actions: start, stop, get, clear, get_media, get_navigations, get_api_calls, get_intercepted_apis, get_websockets, get_graphql, export_har, block_urls (block images/trackers to boost speed 3x-5x), mock_route (intercept & mock API responses), clear_routes.

media_extractorB

Extract and control media from the current page. Supports 6 actions: extract (find video/audio/HLS/DASH/download URLs including nested iframes), list_iframes, switch_iframe, player_control (play/pause/seek/sources via player API), decode_url (inspect converted string and token formats), batch_extract.

execute_jsA

Execute custom JavaScript in the page context with async support, return value capture, and iframe targeting. Also supports action="fetch" to replay HTTP requests with the page session (cookies/auth inherited, 30s timeout, structured status/headers/body output).

storage_inspectorA

Inspect and manage client-side storage & sessions. Supports 7 actions: cookies (get all current cookies), save_session (persist cookies & storage state to file), load_session (restore state from file without re-logging), clear_cookies, autosave (auto-save session on every navigation), indexeddb, service_workers.

see_pageA

Capture a snapshot of the current page. Returns a screenshot image together with optional full-page text, an interactive element map (buttons, links, inputs with position and selector), and an iframe inventory — all in a single call.

Workflow: Call once with fullPage:true and annotate:true. From that snapshot, run all planned actions (click, type, scroll, wait, extract) as a steps array without re-capturing the page. Call see_page again only when the page genuinely changes (new navigation, modal, or dynamic content load).

async_jobA

Poll or cancel background jobs started with async:true on media_extractor batch_extract, see_page steps, or execute_js. Read-only except cancel.

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 19 tools

Disambiguation3/5

Core interaction tools (click, type, press_key, wait, navigate) are clearly distinct, but the read/extract cluster overlaps heavily: get_content, extract_data, see_page, and deep_analysis all retrieve page information, and an agent must read long descriptions to choose. Several tools (network_recorder, media_extractor, storage_inspector, extract_data) bundle many actions behind one name, adding internal selection ambiguity.

Naming Consistency3/5

Most names are snake_case, but conventions are mixed: noun-first compounds (browser_init, browser_close), verb-first (get_content, execute_js), and bare verbs (wait, navigate, click, type). Individually readable, yet there is no single predictable pattern to infer names.

Tool Count3/5

19 tools is on the heavy side for a browser automation server, and the multi-action mega-tools effectively expand the surface well beyond 19. Most tools are justified by real capabilities, but some inspection tools could be folded into see_page/extract_data.

Completeness4/5

The lifecycle is well covered: init/close, navigation and tabs, interaction, scrolling, waiting, content/media/network/storage extraction, captcha, redirect tracing, and async jobs. Minor gaps exist for dropdown selection, file upload, and dialog/alert handling, but agents can work around these with execute_js.

Maintenance

ActivityNo data
ResponsivenessSyncing