home / mcp / undetected chromedriver mcp server
undetected-chromedriver server.
Configuration
View docs{
"mcpServers": {
"dragons96-mcp-undetected-chromedriver": {
"command": "npx",
"args": [
"-y",
"@smithery/cli@latest",
"run",
"@dragons96/mcp-undetected-chromedriver",
"--config",
"{}"
]
}
}
}You have an MCP server that wraps undetected-chromedriver to automate Chrome while reducing anti-bot detection. This makes web automation, testing, and data gathering more reliable on sites with strict bot defenses by providing a straightforward API surface built on a robust browser driver.
To use this MCP server, connect via an MCP client and call the browser APIs to navigate pages, interact with elements, take screenshots, and extract content. You can drive a single browser instance through a sequence of API calls, including navigating to URLs, clicking elements, filling forms, dragging, and saving pages as PDFs. The client interactions are designed around a clear set of endpoints that resemble typical browser automation tasks.
Prerequisites you need before installing are Python 3.11+ and the Chrome browser. You will also use Node tools to install the MCP server via the Smithery CLI.
# Install the MCP server via Smithery for Claude Desktop
npx -y @smithery/cli install @dragons96/mcp-undetected-chromedriver --client claude
# Optional: ensure Python and Chrome are available for local dependenciesUse the following MCP configuration to run the Undetected Chromedriver server through the MCP client. This setup tells the MCP system how to start the server process and how to pass configuration.
{
"mcpServers": {
"mcp-undetected-chromedriver": {
"command": "npx",
"args": [
"-y",
"@smithery/cli@latest",
"run",
"@dragons96/mcp-undetected-chromedriver",
"--config",
"{}"
]
}
}
}If you prefer to run dependencies in a Python virtual environment, you can install the project using uv.
# Create virtual environment
uv venv
# Activate virtual environment
# Windows
.venv\Scripts\activate
# Linux/MacOS
source .venv/bin/activate
# Install dependencies
uv pip install -e .Ensure you have Python 3.11 or newer and the Chrome browser installed before starting. The server relies on undetected-chromedriver under the hood to bypass common anti-bot detections.
This MCP server provides a commandable API surface that includes operations for navigating pages, taking screenshots, clicking elements, interacting with iframes, filling inputs, selecting options, hovering, evaluating JavaScript, and saving pages as PDFs. It is designed to work alongside other MCP tools and can manage a global browser instance that is created as needed by the first API call that requires a browser.
The following Python example demonstrates how you can interact with the MCP server from a client to perform common browser actions.
from mcp.client import Client
# Create MCP client
client = Client()
client.start("undetected-chromedriver-mcp-server")
# Navigate to website
response = client.call("browser_navigate", {"url": "https://example.com"})
print(response)
# Take a screenshot
response = client.call("browser_screenshot", {"name": "example"})
print(response)
# Get page text
response = client.call("browser_get_visible_text")
print(response.content[0].text)
# Close the browser
client.call("browser_close")Navigate the browser to a specified URL.
Capture a screenshot of the current page and save it with a given name.
Click on a page element identified by a selector.
Click on elements inside an iframe without manually switching frames.
Fill content into input fields matched by selectors.
Select options within dropdown menus.
Hover the mouse over a specified element.
Execute JavaScript code within the current page context.
Close the active browser instance.
Retrieve the visible text content from the page.
Retrieve the visible HTML of the page.
Navigate backward in the browser history.
Navigate forward in the browser history.
Drag elements on the page.
Simulate key presses in the active page.
Save the current page as a PDF file.