Jyothishkumarav/selenium-mcp-server-python
If you are the rightful owner of selenium-mcp-server-python and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
A Model Context Protocol (MCP) server implementation for Selenium WebDriver automation using Python, enabling programmatic control of web browsers through Claude's desktop application.
Selenium MCP Server
A Model Context Protocol (MCP) server implementation for Selenium WebDriver automation using Python. This server allows you to control web browsers programmatically through Claude's desktop application.
Features
- Browser automation with Chrome and Firefox support
- Comprehensive set of Selenium WebDriver operations
- Easy integration with Claude desktop application
- Support for various browser interactions:
- Navigation
- Element interaction (click, send keys, etc.)
- Screenshot capture
- Window and iframe handling
- Local storage management
- And much more!
Prerequisites
- Python 3.7+
- Chrome or Firefox browser installed
- Claude desktop application
Installation
- Clone this repository:
git clone https://github.com/Jyothishkumarav/selenium-mcp-server-python.git
cd selenium-mcp-server-python
- Install the required dependencies:
pip install -r requirements.txt
- Install the MCP server in Claude:
mcp install server.py
Usage
- Start the server:
python server.py
- In Claude desktop application:
- Go to Settings > Developer Options
- You should see "MCP-Selenium" listed as an available server
- Enable the server to start using Selenium automation features
Available Tools
The server provides the following automation capabilities:
-
Browser Management:
- Start browser sessions
- Close sessions
- Switch between windows
-
Navigation:
- Navigate to URLs
- Refresh pages
- Wait for page loads
-
Element Interaction:
- Find elements
- Click elements
- Send keys
- Clear fields
- Double click
- Right click
-
Element Information:
- Get element text
- Get element attributes
- Check element presence
- Check element visibility
- Check element selection
-
Page Operations:
- Take screenshots
- Get page content
- Scroll pages
- Manage local storage
-
Frame Handling:
- Switch to iframes
- Return to default content
Example Usage
Here's a simple example of how to use the server with Claude:
- Start a browser session
- Navigate to a website
- Find and interact with elements
- Take screenshots
- Close the session
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the file for details.