Enables deployment and management of Selenium Grid browser instances in Docker containers, supporting Chrome, Firefox, and Edge browsers with configurable authentication and scaling options.
Provides commands for deploying and uninstalling Selenium Grid in Kubernetes using Helm charts with configurable parameters.
Provides support for deploying Selenium Grid in K3s lightweight Kubernetes environments for local development and testing of browser automation workflows.
Enables deployment and management of Selenium Grid browser instances in Kubernetes clusters, with support for scalable browser automation through pod orchestration and Helm-based deployments.
Provides a management interface for Selenium Grid browser instances, enabling creation and control of Chrome, Firefox, and Edge browsers for automation and testing workflows with VNC access support.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP Selenium Gridlaunch a Chrome browser instance for testing"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
π€ MCP Selenium Grid
A Model Context Protocol (MCP) server for managing Selenium Grid browser instances. Useful for browser automation and testing workflows.
The MCP Selenium Grid provides a MCP Server for creating and managing browser instances in both Docker and Kubernetes environments. It's designed to work with AI agents and automation tools that need browser automation capabilities.
Key Features
Multi-browser support: Chrome, Firefox and Edge
Dual backend support: Docker and Kubernetes deployment modes
Secure API: Token-based authentication for browser management
Scalable architecture: Support for multiple browser instances
MCP compliance: Follows Model Context Protocol standards
π Quick Start
Prerequisites
uv (Python dependency manager)
Docker (for Docker deployment mode)
K3s (for Kubernetes deployment mode, optional)
π Usage
The MCP Selenium Grid provides a Web API for creating and managing browser instances. The server runs on localhost:8000 and exposes MCP endpoints at /mcp (Http Transport) and /sse (Server Sent Events).
Note: All requests to the server root
http://localhost:8000will be redirected to either/mcpor/sseendpoints, depending on the request, but you can choose to use directly/mcp(Http Transport) or/sse(Server Sent Events) endpoints.
Known Issues & Limitations
When you use STDIO transport with the
--stdioflag, the MCP Servers do not shut down the same way they do in the terminal. To clean up resources and remove containers or pods, run:uv run mcp-selenium-grid cleanuv run mcp-selenium-grid clean -d kubernetes
MCP Client Configuration
π³ Docker Deployment
For Docker-based deployment, ensure Docker is running and use the Docker configuration in your MCP client setup.
The server will be available at
http://localhost:8000with interactive API documentation athttp://localhost:8000/docs.
βΈοΈ Kubernetes Deployment
3. Kubernetes Setup (Optional)
This project supports Kubernetes deployment for scalable browser instance management. We use K3s for local development and testing.
Install K3s (https://docs.k3s.io/quick-start)
Create K3s Kubernetes Context
After installing K3s, you might want to create a dedicated kubectl context for it:
Deploy Selenium Grid
Please run for help to get to know the available commands and parameters:
Deploy using default parameters:
Uninstall using default parameters:
The server will be available at
http://localhost:8000with interactive API documentation athttp://localhost:8000/docs.
Server with auth enabled
UVX
Using default args
Custom args
Docker
Default args
Custom args
Note: All environment variables have default values.
MCP Server configuration (mcp.json)
π€ Contributing
For development setup, testing, and contribution guidelines, please see CONTRIBUTING.md.
π License
MIT