Selenium Mcp
@amandeep-sg
MCP tools build using selenium to automate web testing or scraping
Overview
What is Selenium Mcp?
Selenium Mcp is a Python server that bridges AI assistants or custom MCP clients with Selenium Webdrivers by exposing Selenium webdriver functionalities as MCP tools, enabling web automation, web testing, and web scraping.
How to use Selenium Mcp?
Clone the repository, create a Python virtual environment, install dependencies from requirements.txt, then run python server.py. Optionally set a Google GenAI API key in a .env file as GEMINI_API_KEY and use the built-in lightweight MCP client for testing.
Key features of Selenium Mcp
- Humanised error handling for LLM reconfiguration
- Comprehensive element interaction with visibility checks
- Full navigation control: open URLs, forward, backward, refresh
- Supports creating and quitting browser sessions
- Manages cookies (add, delete, get, clear)
- Performs clicks (left, right, double, drag‑and‑drop)
- Scrolls and resizes browser windows
Use cases of Selenium Mcp
- Automate web form filling and submission
- Perform web scraping and capture page content as Markdown, HTML, or screenshots
- Execute JavaScript to interact dynamically with webpages
- Upload and download files through browser automation
- Handle browser alerts and dialogs programmatically
FAQ from Selenium Mcp
How does Selenium Mcp differ from other Selenium automation tools?
It exposes Selenium Webdriver capabilities as MCP tools, allowing an AI assistant or MCP client to directly use them without writing raw Selenium code, with built‑in error interpretation for LLMs.
What are the runtime dependencies?
Python 3.10+, FastMCP 3.1.1, Selenium 4.41.0, and Google GenAI. It can communicate via stdio when hosted locally or via HTTP when hosted on a cloud server.
Where does data (cookies, downloads, screenshots) live?
Data is managed within the browser session controlled by the Selenium Webdriver; screenshots and saved files are stored on the local filesystem.
What transports and authentication are supported?
The MCP server uses stdio for local communication and HTTP for cloud deployment. Authentication is not explicitly described; the built‑in client uses a Gemini API key for the AI assistant integration.
What are the current limitations of Selenium Mcp?
It currently only supports one browser (Chrome via Selenium), with future plans to add Firefox, Edge, Safari, and Chrome DevTools/BiDi support.