README
🚀 MCP - 未被检测到的ChromeDriver
MCP - 未被检测到的ChromeDriver是一个基于undetected - chromedriver构建的MCP服务,它提供全面的浏览器控制接口,可用于自动化Chrome浏览器操作,还能有效绕过反 - bot检测机制,适用于数据抓取和自动化测试等场景。
🚀 快速开始
安装
通过Smithery自动安装MCP - 未被检测到的ChromeDriver以供Claude Desktop使用:
npx -y @smithery/cli install @dragons96/mcp-undetected-chromedriver --client claude
配置
在Claude Desktop中配置Undetected Chromedriver服务器,如下所示:
{
"mcp": {
"servers": [
{
"id": "undetected-chromedriver",
"url": "http://localhost:9001"
}
],
"options": {
"browser": "chrome",
"serverId": "undetected-chromedriver"
}
}
}
要求
- Python版本:Python 3.8或更高
- 浏览器:安装最新版Chrome浏览器
安装步骤
使用以下命令安装:
pip install mcp-wf
创建虚拟环境并激活(可选):
uv venv
source venv/bin/activate # 在Windows上运行:.venv\Scripts\activate
启动服务
mcp-wf start
✨ 主要特性
- 基于undetected - chromedriver构建,能绕过现代网站(如Cloudflare、Distil Networks等)的反 - bot检测机制。
- 提供全面的浏览器控制接口,适用于数据抓取和自动化测试场景。
- 维护全局浏览器实例,首次调用需要浏览器的操作时自动创建,也可通过API显式关闭。
- 提供
browser_iframe_clickAPI直接操作iframe内的元素,无需手动切换帧上下文。
📦 安装指南
自动安装(供Claude Desktop使用)
npx -y @smithery/cli install @dragons96/mcp-undetected-chromedriver --client claude
常规安装
pip install mcp-wf
虚拟环境创建与激活(可选)
uv venv
source venv/bin/activate # 在Windows上运行:.venv\Scripts\activate
💻 使用示例
基础用法
导航到指定URL
from mcp import client
cli = client.Client()
cli.navigation.goto("https://example.com")
获取页面内容
content = cli.executor.execute("return document.body.innerHTML;")
print(content)
关闭浏览器实例
cli.executor.close()
📚 详细文档
工作原理
该服务通过undetected - chromedriver绕过反 - bot检测机制,并利用MCP协议提供一系列API接口,简化浏览器操作流程。
待办事项
- 支持Firefox浏览器
- 实现多线程支持
- 添加日志记录功能
- 优化错误处理机制
常见问题解答(FAQ)
Q: 为什么选择undetected - chromedriver而不是标准的Selenium Webdriver? A: undetected - chromedriver专为绕过现代网站的反 - bot检测机制而设计,如Cloudflare、Distil Networks等,在数据抓取和自动化测试场景中更为可靠。
Q: 服务如何处理浏览器实例?
A: 该服务维护一个全局浏览器实例,首次调用需要浏览器的操作时会自动创建。您可以使用browser_closeAPI显式关闭浏览器。
Q: 如何处理iframe中的元素?
A: browser_iframe_click API可以直接操作iframe内的元素,无需手动切换帧上下文。
贡献指南
欢迎提交bug报告和功能请求!如需贡献代码,请先与我们讨论您的计划。
📄 许可证
本项目遵循MIT License协议。请查阅LICENSE文件以获取详细信息。
扫码联系在线客服