chromedp
MCP server for browser automation using chromedp
claude mcp add --transport stdio kepatrick-chromedp-mcp /path/to/chromedp-mcp \ --env CHROME_TTL="15" \ --env CHROME_EXE_TIMEOUT="300" \ --env CHROME_MAXIMUM_INSTANCE="5"
How to use
chromedp-mcp is an MCP server that provides browser automation capabilities using the Go-based chromedp library. It enables an AI agent to manage multiple Chrome instances, navigate pages, interact with elements, fill forms, manage cookies, download files, generate PDFs, capture screenshots, and extract DOM information. The server exposes tools for instance management, page navigation, element interaction, visual data access, input operations, cookies, file operations, and document generation. Use it to run automated web tasks, test flows, or assist a larger automation pipeline by querying a clean DOM or capturing structured page data for decision making.
To get started, run the server as a standalone executable or via your preferred process manager. Once running, connect your MCP client and begin issuing commands such as create-chrome-instance, navigate, click-element, get-all-elements, screenshot, generate_pdf, and others defined by the Tools Specification. You can manage multiple instances concurrently, configure headless mode and security options, and tune resources through environment variables or client configuration.
How to install
Prerequisites:
- Go 1.19+ installed and available in PATH
- Git installed
- A supported environment (Linux/macOS/Windows) with Chrome/Chromium in PATH when needed
Install steps:
-
Clone the repository: git clone https://github.com/KePatrick/chromedp-mcp.git cd chromedp-mcp
-
Build the project:
- Linux/macOS: go build -o chromedp-mcp ./cmd/chromedp-mcp/main.go
- Windows: go build -o chromedp-mcp.exe .\cmd\chromedp-mcp\main.go
-
Run the server:
- Basic (no extra env): ./chromedp-mcp
- With environment tuning (as in README): CHROME_MAXIMUM_INSTANCE=10 CHROME_TTL=30 CHROME_EXE_TIMEOUT=600 ./chromedp-mcp
-
Configure your MCP client to connect to the server using the appropriate path to the executable and any needed environment variables. A basic client configuration example: { "mcpServers": { "chromedp-mcp": { "command": "/path/to/chromedp-mcp", "args": [] } } }
Additional notes
Tips and notes:
- Ensure Chrome/Chromium is installed and accessible in PATH for best performance.
- Use the environment variables to control the number of concurrent instances and timeouts to optimize resource usage.
- Always close Chrome instances when finished to free resources.
- Review terms of service for target websites and comply with robots.txt when automating interactions.
- The server provides both DOM-related tools (get-all-elements, select-element, get-element-withtext) and visual tools (screenshot, generate_pdf) to support both structural analysis and visual verification.
Related MCP Servers
context-space
Ultimate Context Engineering Infrastructure, starting from MCPs and Integrations
k8s
Manage Your Kubernetes Cluster with k8s mcp-server
tasker
An MCP server for Android's Tasker automation app.
tempo
An MCP ( Model Context Protocol ) Server for Grafana Tempo
homebutler
๐ Manage your homelab from chat. Single binary, zero dependencies.
gridctl
๐งช Local Stack for testing Agents