pshivapr avatar

Selenium Mcp

pshivapr/selenium-mcp

Bridges AI assistants to Selenium WebDriver for full browser automation through MCP. You get the complete toolset: launch Chrome, Firefox, Safari, or Edge, navigate and interact with pages, find and click elements, type text, manage cookies, switch between windows, take screenshots, and execute JavaScript. Built with TypeScript and Zod validation, it exposes around 30+ discrete tools covering everything from basic navigation (browser_navigate, browser_click, browser_type) to advanced operations like drag and drop, file uploads, and wait strategies. Reach for this when you need Claude or another AI to drive actual browser sessions for testing, scraping, or automating complex web workflows that require JavaScript rendering and user interaction.

GitHub stars
6
tools
56
auth
Secret needed
transport
STDIO
env var
1
last updated
Oct 12, 2025

Tools

56 tools

Public tool metadata for what this MCP can expose to an agent.

browser_openOpen a new browser session2 params

Open a new browser session

Parameters* required
browserstring
Browser to launchone of chrome · firefox · edge · safari
optionsobject
browser_navigateNavigate to a URL1 params

Navigate to a URL

Parameters* required
urlstring
URL to navigate to
browser_navigate_backNavigate back in the browser

Navigate back in the browser

No parameter schema in public metadata yet.

browser_navigate_forwardNavigate forward in the browser

Navigate forward in the browser

No parameter schema in public metadata yet.

browser_titleGet the current page title

Get the current page title

No parameter schema in public metadata yet.

browser_get_urlGet the current page URL

Get the current page URL

No parameter schema in public metadata yet.

browser_get_page_sourceGet the current page source

Get the current page source

No parameter schema in public metadata yet.

browser_maximizeMaximize the browser window

Maximize the browser window

No parameter schema in public metadata yet.

browser_resizeResize the browser window2 params

Resize the browser window

Parameters* required
heightnumber
New height of the browser window
widthnumber
New width of the browser window
browser_refreshRefresh the current page

Refresh the current page

No parameter schema in public metadata yet.

browser_switch_to_windowSwitch to a different browser window1 params

Switch to a different browser window

Parameters* required
windowHandlestring
The handle of the window to switch to
browser_switch_to_original_windowSwitches back to the original browser window

Switches back to the original browser window

No parameter schema in public metadata yet.

browser_switch_to_window_by_titleSwitch to a window by its title1 params

Switch to a window by its title

Parameters* required
titlestring
The title of the window to switch to
browser_switch_window_by_indexSwitch to a window by its index1 params

Switch to a window by its index

Parameters* required
indexnumber
The index of the window to switch to
browser_switch_to_window_by_urlSwitch to a window by its URL1 params

Switch to a window by its URL

Parameters* required
urlstring
The URL of the window to switch to
browser_closeClose the current browser session

Close the current browser session

No parameter schema in public metadata yet.

browser_find_elementFind an element3 params

Find an element

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_find_elementsFind multiple elements3 params

Find multiple elements

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_clickPerform a click on an element3 params

Perform a click on an element

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_typeType into an editable field4 params

Type into an editable field

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
textstring
Text to enter into the element
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_clearClears the value of an input element3 params

Clears the value of an input element

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_get_element_textGets the text of an element3 params

Gets the text of an element

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_get_attributeGets the value of an attribute from an element4 params

Gets the value of an attribute from an element

Parameters* required
attributestring
Name of the attribute to get
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_element_is_displayedChecks if an element is displayed3 params

Checks if an element is displayed

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_element_is_enabledChecks if an element is enabled3 params

Checks if an element is enabled

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_element_is_selectedChecks if an element is selected3 params

Checks if an element is selected

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_switch_to_frameSwitches to an iframe element3 params

Switches to an iframe element

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_switch_to_default_contentSwitches to the default content

Switches to the default content

No parameter schema in public metadata yet.

browser_switch_to_parent_frameSwitches to the parent iframe

Switches to the parent iframe

No parameter schema in public metadata yet.

browser_file_uploadUploads a file using a file input element4 params

Uploads a file using a file input element

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
filePathstring
Absolute path to the file to upload
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_hoverHover over an element3 params

Hover over an element

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_wait_for_elementWait for an element to be present3 params

Wait for an element to be present

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Timeout in milliseconds
valuestring
Value for the locator strategy
browser_drag_and_dropPerform drag and drop between two elements5 params

Perform drag and drop between two elements

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
targetBystring
Locator strategy to find target elementone of id · css · xpath · name · tag · class
targetValuestring
Value for the target locator strategy
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_double_clickPerform double click on an element3 params

Perform double click on an element

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_right_clickPerform right click (context click) on an element3 params

Perform right click (context click) on an element

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_select_dropdown_by_textSelect dropdown by visible text4 params

Select dropdown by visible text

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
textstring
Visible text of the option to select
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_select_dropdown_by_valueSelect dropdown by value3 params

Select dropdown by value

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value of the option to select
browser_key_pressPress a key on the keyboard1 params

Press a key on the keyboard

Parameters* required
keystring
Key to press (e.g., 'Enter', 'Tab', 'a', etc.)
browser_execute_scriptExecute JavaScript in the context of the current page1 params

Execute JavaScript in the context of the current page

Parameters* required
scriptstring
JavaScript code to execute
browser_scroll_to_elementScroll to an element3 params

Scroll to an element

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_scroll_to_topScroll to the top of the page

Scroll to the top of the page

No parameter schema in public metadata yet.

browser_scroll_to_bottomScroll to the bottom of the page

Scroll to the bottom of the page

No parameter schema in public metadata yet.

browser_scroll_to_coordinatesScroll to specific coordinates2 params

Scroll to specific coordinates

Parameters* required
xnumber
X coordinate
ynumber
Y coordinate
browser_scroll_by_pixelsScroll by a specific number of pixels2 params

Scroll by a specific number of pixels

Parameters* required
xnumber
Number of pixels to scroll horizontally
ynumber
Number of pixels to scroll vertically
browser_select_checkboxSelect a checkbox3 params

Select a checkbox

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_unselect_checkboxUnselect a checkbox3 params

Unselect a checkbox

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_submit_formSubmit a form3 params

Submit a form

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_focus_elementFocus on a specific element3 params

Focus on a specific element

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_blur_elementRemove focus from a specific element3 params

Remove focus from a specific element

Parameters* required
bystring
Locator strategy to find elementone of id · css · xpath · name · tag · class
timeoutnumber
Maximum time to wait for element in milliseconds
valuestring
Value for the locator strategy
browser_screenshotTake a screenshot of the current page1 params

Take a screenshot of the current page

Parameters* required
outputPathstring
Optional path where to save the screenshot. If not provided, returns base64 data.
browser_get_cookiesGet all cookies

Get all cookies

No parameter schema in public metadata yet.

browser_get_cookie_by_nameGet a cookie by name1 params

Get a cookie by name

Parameters* required
namestring
Name of the cookie to get
browser_add_cookie_by_nameAdd a cookie to the browser2 params

Add a cookie to the browser

Parameters* required
namestring
Name of the cookie to add
valuestring
Value of the cookie to add
browser_set_cookie_objectSet a cookie in the browser1 params

Set a cookie in the browser

Parameters* required
cookiestring
Cookie string to set, e.g. 'name=value; Path=/; HttpOnly'
browser_delete_cookieDelete a cookie from the browser1 params

Delete a cookie from the browser

Parameters* required
namestring
Name of the cookie to delete
browser_delete_cookiesDelete cookies from the browser

Delete cookies from the browser

No parameter schema in public metadata yet.

Sponsors

Configuration

YOUR_API_KEYsecret

Your API key for the service

Readme

Add to Cursor Add to VS Code Add to Claude Add to ChatGPT Add to Codex Add to Gemini

Selenium MCP Server

npm version

npm downloads

GitHub issues

smithery badge


View the full README on GitHub

Details

Repository
github.com/pshivapr/selenium-mcp
Category
Web & Browser Automation
Package
selenium-webdriver-mcp
Transport
STDIO
Auth
Required
Registry
MCP registry, active

Related Web & Browser Automation MCP servers

View all
1ykshah1309 avatarStealth Agent Browserykshah1309/stealth-agent-browser-mcpStealth Chromium MCP server with hybrid AOM + Set-of-Mark vision and Readability extraction.1stars
2dinesh-nalla-se avatarChrome DevTools MCPdinesh-nalla-se/chrome-devtools-mcpMCP server for Chrome DevTools0stars
3microsoft avatarPlaywright Mcpmicrosoft/playwright-mcpPlaywright Tools for MCP39.5Kstars
4benjaminr avatarChrome DevToolsbenjaminr/chrome-devtools-mcpAn MCP Server for Chrome DevTools, following the Chrome DevTools Protocol. Integrates with Claude Desktop and Claude Code.297stars
5blackwhite084 avatarPlaywrightblackwhite084/playwright-plus-python-mcpExposes Playwright-based tools to automate browsing, capture content, and summarize stored notes via an MCP client.186stars
6runbook-ai avatarBrowser Agentrunbook-ai/runbook-ai-mcpMCP server for browser automation with AI agent3stars