Quest Browser MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ADB_PATH | No | Path to ADB executable | adb |
| CDP_ENDPOINT | No | CDP endpoint URL | http://localhost:9222 |
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 | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| adb_checkA | Check if ADB is available and get version |
| adb_list_devicesA | List all ADB devices (connected and disconnected) |
| adb_get_connected_devicesB | Get only connected ADB devices |
| adb_forward_portA | Set up ADB port forwarding (default: tcp:9222 -> localabstract:chrome_devtools_remote) |
| adb_list_forwardingsA | List all active ADB port forwardings |
| adb_remove_forwardingB | Remove ADB port forwarding |
| adb_ensure_forwardingA | Ensure port forwarding is set up (check first, then set up if needed) |
| browser_initializeB | Initialize browser connection and get available pages |
| browser_connectB | Connect to a specific page by index (default: 0) |
| browser_navigateB | Navigate to a URL |
| browser_wait_for_loadC | Wait for page to finish loading |
| browser_evaluateB | Evaluate JavaScript expression in the page context |
| browser_get_titleA | Get the page title |
| browser_get_urlB | Get the current page URL |
| browser_screenshotB | Take a screenshot of the current page |
| browser_get_contentA | Get the full HTML content of the page |
| browser_clickB | Click an element by CSS selector |
| browser_typeB | Type text into an element |
| browser_wait_for_selectorB | Wait for an element to appear in the page |
| browser_list_pagesB | List all available pages |
| browser_get_current_pageC | Get information about the currently connected page |
| browser_go_backA | Navigate back in browser history |
| browser_go_forwardA | Navigate forward in browser history |
| browser_reloadA | Reload the current page |
| browser_wait_for_navigationC | Wait for navigation to complete |
| browser_wait_for_urlC | Wait for URL to match pattern |
| browser_fillA | Fill form field with value (more robust than type) |
| browser_select_optionC | Select option(s) in a dropdown |
| browser_checkB | Check a checkbox or radio button |
| browser_uncheckC | Uncheck a checkbox |
| browser_hoverC | Hover over an element |
| browser_double_clickC | Double click an element |
| browser_right_clickB | Right click an element |
| browser_press_keyC | Press a keyboard key |
| browser_drag_and_dropC | Drag and drop an element |
| browser_query_selectorC | Query a single element by CSS selector |
| browser_query_selector_allB | Query multiple elements by CSS selector |
| browser_get_textC | Get text content of an element |
| browser_get_attributeB | Get attribute value of an element |
| browser_get_inner_htmlB | Get inner HTML of an element |
| browser_get_outer_htmlB | Get outer HTML of an element |
| browser_wait_for_timeoutB | Wait for specified time |
| browser_wait_for_responseB | Wait for network response matching URL pattern |
| browser_get_network_logsB | Get network activity logs |
| browser_set_viewport_sizeB | Set viewport size |
| browser_set_geolocationC | Set geolocation |
| browser_set_permissionsC | Set browser permissions |
| browser_add_init_scriptA | Add initialization script to run on every page load |
| browser_get_accessibility_treeB | Get accessibility tree snapshot (Playwright MCP specific) |
| browser_closeB | Close the browser connection |
| browser_console_messagesA | Get console messages from the page |
| browser_file_uploadB | Upload a file to a file input element |
| browser_fill_formA | Fill multiple form fields at once |
| browser_handle_dialogA | Handle a JavaScript dialog (alert, confirm, prompt) |
| browser_network_requestsC | Get list of network requests |
| browser_resizeB | Resize the browser viewport |
| browser_snapshotA | Get accessibility snapshot of the page (alias for browser_get_accessibility_tree) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 57 tools
Multiple tools have overlapping purposes, such as browser_resize vs browser_set_viewport_size, browser_snapshot vs browser_get_accessibility_tree, and browser_get_network_logs vs browser_network_requests. The wait_for_* family also has several similar options (load, navigation, url, response) that can be confused.
Tool names consistently follow the pattern of prefix (adb_ or browser_) plus verb_noun, e.g., browser_navigate, browser_get_title, browser_set_geolocation. Minor deviations like browser_resize (verb only) and browser_snapshot (noun) are exceptions but the overall pattern is readable and predictable.
With 57 tools, the set is excessively large for a browser automation server. Many are near-duplicates (resize/set_viewport_size, snapshot/get_accessibility_tree, network_logs/network_requests), inflating the count without adding genuine functionality. This is well beyond the typical heavy range of 25+.
The tool set covers a broad range of browser automation needs, including navigation, interaction, waiting, network monitoring, accessibility, file upload, and ADB port forwarding. However, it lacks cookie management and cannot create new browser pages (only connects to existing ones), which are notable gaps for a fully complete browser automation surface.