Auto-Browser
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| APP_ENV | No | Set to 'production' to enable stricter security requirements. | |
| GEMINI_API_KEY | No | API key for Google Gemini provider. | |
| OPENAI_API_KEY | No | API key for OpenAI provider. | |
| API_BEARER_TOKEN | No | The bearer token used to protect the controller API. | |
| CLAUDE_AUTH_MODE | No | Set to 'cli' to use subscription-backed CLI auth for Anthropic. | |
| GEMINI_AUTH_MODE | No | Set to 'cli' to use subscription-backed CLI auth for Gemini. | |
| MCP_TOOL_PROFILE | No | The tool surface to expose. Set to 'full' for the entire legacy/internal tool surface. Default is curated. | |
| OPENAI_AUTH_MODE | No | Set to 'cli' to use subscription-backed CLI auth instead of API keys. | |
| ANTHROPIC_API_KEY | No | API key for Anthropic/Claude provider. | |
| MCP_ALLOWED_ORIGINS | No | Comma-separated list of exact allowed origins for MCP browser clients. | |
| REQUIRE_OPERATOR_ID | No | Set to 'true' if every non-health request must carry an operator ID header. | |
| AUTO_BROWSER_BASE_URL | Yes | The base URL where the Auto Browser FastAPI server is running (e.g., http://127.0.0.1:8000/mcp). | |
| AUTH_STATE_ENCRYPTION_KEY | No | A 44-char Fernet key used for encrypting auth-state storage at rest. | |
| AUTO_BROWSER_BEARER_TOKEN | No | Bearer token for authenticating the bridge with the Auto Browser API. | |
| REQUIRE_AUTH_STATE_ENCRYPTION | No | Whether to force encryption for auth state files. |
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
| Capability | Details |
|---|---|
| tools | {} |
| resources | {
"subscribe": true
} |
| experimental | {
"autoBrowser": {
"workflowProfiles": [
"fast",
"governed"
],
"resumableAgentJobs": true,
"cancellableAgentJobs": true,
"discardableAgentJobs": true
}
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| browser.create_session | Create a new browser session and optionally navigate to a start URL. |
| browser.save_memory_profile | Save a named memory profile with context from the current session. Loaded into future sessions via memory_profile=name in create_session. |
| browser.get_memory_profile | Retrieve a saved memory profile by name. |
| browser.list_memory_profilesA | List all saved memory profiles. |
| browser.list_sessions | List live and persisted browser sessions. |
| browser.get_session | Get the full record for one browser session by ID: the live session summary (status, current page, tabs) when the session is active, or the persisted session record when it has been closed. Use browser.list_sessions to discover session IDs. |
| browser.observe | Capture the current browser observation with screenshot, interactables, and perception summary. |
| browser.screenshot | Capture a lightweight screenshot for one session without the full observe payload. |
| browser.get_console | Read recent browser console messages for an active session. |
| browser.get_page_errors | Read recent uncaught page errors for an active session. |
| browser.get_request_failures | Read recent failed network requests for an active session. |
| browser.stop_trace | Finalize the current Playwright trace for an active session and return its artifact path. |
| browser.list_auth_profiles | List reusable saved auth profiles that can be loaded into a new session. |
| browser.get_auth_profile | Inspect one saved auth profile by name: its normalized name, on-disk profile directory, storage-state metadata, and any saved profile metadata. Profiles are created with browser.save_auth_profile and loaded into new sessions via browser.create_session; discover names with browser.list_auth_profiles. |
| browser.list_downloads | List files captured from browser downloads for one session. |
| browser.list_tabs | List currently open tabs/pages for one session. |
| browser.activate_tab | Bring one tab to the foreground so subsequent observations and actions target it. Tab indexes come from browser.list_tabs. Returns the activated index, the updated session summary, and the current tab list. |
| browser.close_tab | Close one tab index if more than one tab is open. |
| browser.execute_action | Execute one browser action (navigate, click, hover, type, press, select_option, scroll, …) in a session, using the same action schema the agent planner emits. Actions are policy-checked and audited, and governed actions may require a granted approval_id. Call browser.observe first to get targetable element IDs and selectors; returns the executed action's result payload. |
| browser.save_auth_profile | Save the current session storage state into a reusable named auth profile. |
| browser.request_human_takeover | Ask for a human to take over the shared browser desktop. |
| browser.close_session | Close a session and finalize its trace/artifacts. |
| harness.get_status | Read one convergence run record and current status. |
| harness.get_trace | Read the latest or selected trace for one convergence run. |
| harness.list_runs | List recent Agent Skill Induction convergence runs, newest first, with each run's ID, contract, provider, attempt count, and current status. Optionally filter by status (created, running, converged, unconverged, failed, over_budget). Feed run IDs into harness.get_status or harness.get_trace. |
| browser.readiness_check | Run a deployment readiness check. Returns pass/warn/fail for encryption, operator identity, bearer token, session isolation, Witness audit, host allowlist, PII scrubbing, and upload approval. Pass mode='confidential' for stricter checks. |
| browser.get_network_log | Return captured HTTP request/response entries for a session. Filtered by method (GET/POST/...) or URL substring. All sensitive headers and bodies are automatically PII-scrubbed. |
| browser.verify_witness | Verify the integrity of a session's Witness receipt hash chain. Walks every receipt, recomputes the chain, and reports the first divergent receipt if the log was altered, reordered, or truncated. |
| browser.fork_session | Fork a session: snapshot its cookies, storage state, and current URL, then create a new independent session with that state. Useful for branching workflows or running parallel variants. |
| browser.eval_js | Execute a JavaScript expression in the current page context and return the result. Use for DOM queries, value extraction, or lightweight scripting that has no dedicated tool. |
| browser.wait_for_selector | Wait for a CSS selector to reach a specific state (visible, hidden, attached, detached). Returns when the condition is met or raises on timeout. |
| browser.get_html | Get the HTML source of the current page. Set text_only=true to strip tags and return plain text. Set full_page=false (default) for visible viewport only. |
| browser.find_elementsA | Find all elements matching a CSS selector and return their text, href, value, bounding box, and visibility. Useful before clicking or scraping multiple items. |
| browser.drag_drop | Drag from one element or coordinate to another. Provide source_selector OR (source_x, source_y), and target_selector OR (target_x, target_y). |
| browser.set_viewport | Resize the browser viewport to the specified width and height. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| Active Sessions | List of all active browser sessions |
| Recent Audit Events | Recent browser audit events across sessions |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/LvcidPsyche/auto-browser'
If you have feedback or need assistance with the MCP directory API, please join our Discord server