SeleniumMCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SELENIUM_BROWSER | No | Browser type (chrome, firefox, etc.) | chrome |
| SELENIUM_HEADLESS | No | Run browser in headless mode | true |
| SELENIUM_HTTP_HOST | No | HTTP server host | 0.0.0.0 |
| SELENIUM_HTTP_PORT | No | HTTP server port | 8000 |
| SELENIUM_REMOTE_URL | No | URL of remote Selenium Grid | |
| SELENIUM_WINDOW_WIDTH | No | Window width in pixels | 1440 |
| SELENIUM_MCP_TRANSPORT | No | MCP transport (stdio or http) | stdio |
| SELENIUM_WINDOW_HEIGHT | No | Window height in pixels | 1000 |
| SELENIUM_ALLOW_FILE_URLS | No | Allow file:// URLs | false |
| SELENIUM_DEFAULT_DOWNLOAD_DIR | No | Default download directory | /tmp/selenium-downloads |
| SELENIUM_IMPLICIT_WAIT_SECONDS | No | Implicit wait timeout in seconds | 2 |
| SELENIUM_SCRIPT_TIMEOUT_SECONDS | No | Script timeout in seconds | 30 |
| SELENIUM_PAGE_LOAD_TIMEOUT_SECONDS | No | Page load timeout in seconds | 30 |
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 | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| browser_startA | Start a Selenium browser session if one is not already running. |
| browser_stopA | Stop the current Selenium browser session. |
| browser_resetB | Restart the Selenium browser session. |
| browser_stateA | Return session id, URL, title, and window information. |
| navigateB | Navigate the browser to an http, https, or allowed file URL. |
| go_backA | Navigate one step back in browser history. |
| go_forwardA | Navigate one step forward in browser history. |
| refreshA | Refresh the current page. |
| set_window_sizeC | Set the browser window size. |
| open_new_tabB | Open a new browser tab and optionally navigate it to a URL. |
| switch_windowC | Switch to a browser window or tab by Selenium window handle. |
| close_windowA | Close the active browser window or tab. |
| find_elementD | Find an element and return a compact summary of it. |
| clickC | Click an element located by CSS selector, XPath, id, name, text, tag, or class. |
| type_textC | Type text into an element, optionally clearing it first. |
| get_textC | Return the visible text for an element. |
| get_attributeB | Return one DOM attribute for an element. |
| wait_for_elementC | Wait until an element exists, or until it is visible when requested. |
| execute_scriptC | Execute JavaScript in the active page and return the JSON-serializable result. |
| scrollC | Scroll the current page by the given x and y offsets. |
| page_sourceA | Return the current page HTML. |
| screenshotA | Return a PNG screenshot as base64. |
| save_screenshotB | Save a PNG screenshot to a server-local path and return the path. |
| list_cookiesA | Return browser cookies for the current domain. |
| add_cookieB | Add a Selenium cookie dict to the current domain. |
| delete_cookiesA | Delete all browser cookies. |
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 26 tools
Tools are mostly distinct; find_element and wait_for_element have some conceptual overlap but descriptions clarify their different return behaviors. Overall, tools serve clear, separate purposes.
All tools use consistent snake_case with verb_noun pattern (e.g., add_cookie, close_window, browser_start). Naming is predictable and follows a clear convention.
26 tools cover browser lifecycle, navigation, element interaction, cookies, screenshots, and scripting. Each tool earns its place; the count is well-scoped for a Selenium automation server.
Core workflows are covered (start/stop, navigation, elements, cookies, screenshots). Minor gaps exist (frame switching, alert handling) but do not hinder primary use cases.