← 返回目录
S

Selenium MCP Server

社区
为AI代理提供Selenium WebDriver浏览器自动化能力的MCP服务器。
GitHub 源仓库 ↗
★ 425 Stars 分类 · 浏览器自动化 热门 源版本 363ecf0f7195
52FMRS · D
可靠性
6/20
安全与权限
8/20
维护活跃度
8/20
文档质量
16/20
安装易用性
14/20

该MCP服务器提供了全面的浏览器自动化工具集,支持主流浏览器,并可通过自然语言指令由AI代理调用。社区维护,非官方,但文档清晰,易于安装。适合开发者和测试人员,需注意潜在的安全风险和网站检测。未提供官方客户端集成列表,但支持通用配置。

查看 FMRS 评分方法 →

这是一个Model Context Protocol (MCP)服务器,封装了Selenium WebDriver,使AI代理能够通过自然语言指令控制浏览器,执行导航、点击、输入、截图等操作。支持Chrome、Firefox、Edge和Safari。无需手动编写脚本,代理可调用API完成自动化任务。

工具能力

start_browser
启动浏览器会话。
navigate
导航到指定URL。
interact
对元素执行鼠标操作(点击、双击、右键、悬停)。
send_keys
向元素输入文本,先清空字段。
get_element_text
获取元素的文本内容。
get_element_attribute
获取元素的属性值。
press_key
按下键盘按键。
upload_file
通过文件输入元素上传文件。
take_screenshot
捕获当前页面的截图。
close_session
关闭当前浏览器会话。
execute_script
在浏览器中执行JavaScript代码,用于高级交互。
window
管理浏览器窗口和标签页。
frame
切换焦点到框架或返回主页面。
alert
处理浏览器警告、确认或提示对话框。
add_cookie
添加Cookie。
get_cookies
获取Cookie。
delete_cookie
删除Cookie。
diagnostics
获取通过WebDriver BiDi捕获的浏览器诊断信息(控制台、错误、网络)。

安装接入

安装方式:

  1. 使用Goose桌面版:在浏览器地址栏粘贴 goose://extension?cmd=npx&arg=-y&arg=%40angiejones%2Fmcp-selenium%40latest&id=selenium-mcp&name=Selenium%20MCP&description=automates%20browser%20interactions
  2. 使用Goose CLI:运行 goose session --with-extension "npx -y @angiejones/mcp-selenium@latest"
  3. 使用Claude Code:运行 claude mcp add selenium -- npx -y @angiejones/mcp-selenium@latest
  4. 对于Cursor、Windsurf等其他MCP客户端,在配置中添加 {"mcpServers":{"selenium":{"command":"npx","args":["-y","@angiejones/mcp-selenium@latest"]}}}
  5. 也可以通过Smithery安装:npx -y @smithery/cli install @angiejones/mcp-selenium --client claude
  6. 全局安装:npm install -g @angiejones/mcp-selenium,然后运行 mcp-selenium
claude_desktop_config.json
{"mcpServers":{"selenium":{"command":"npx","args":["-y","@angiejones/mcp-selenium@latest"]}}}

选型与风险

适合谁

  • 开发者和测试人员希望在AI辅助下快速进行浏览器自动化。
  • 需要无头浏览器进行集成测试或爬虫的场景。
  • 希望通过自然语言指令控制浏览器,减少手动脚本编写的用户。
  • 已经使用Selenium并希望将AI代理接入现有工作流的团队。

不适合谁

  • 不适合需要细粒度控制浏览器内部机制的场景(尽管提供了execute_script)。
  • 不适合不需要浏览器自动化的场景,如纯API测试。
  • 不适合要求官方支持或企业级保障的生产环境,因为该项目由社区维护。
  • Safari用户需要额外配置,且不支持无头模式,可能不适合所有自动化需求。

所需权限

  • 网络访问权限,用于下载浏览器驱动(如chromedriver)和与浏览器通信。
  • 本地文件系统访问权限,用于上传文件或保存截图。
  • 可能需要系统权限(如Safari的`sudo safaridriver --enable`)。
  • 运行npx命令的执行权限。

风险与副作用

  • 浏览器自动化可能被网站检测,导致IP封锁或服务条款违规。
  • 使用无头模式可能被某些网站识别,影响测试结果。
  • 服务器本身不包含恶意代码,但执行任意JavaScript(execute_script)可能带来安全风险,如果代理收到恶意指令。
  • 依赖npx执行,可能下载未知版本或依赖,存在供应链风险。
  • 如果使用不当,可能会意外提交表单、删除数据或进行其他破坏性操作。
  • Safari的配置需要管理员权限,可能引入系统改动风险。

常见排障

  1. 确认Chrome或Firefox已安装,并且chromedriver在PATH中(对于测试)。
  2. 如果Safari无法启动,运行`sudo safaridriver --enable`并在Safari设置中启用“允许远程自动化”。
  3. 检查npx命令是否能正确解析包,必要时使用明确的版本号。
  4. 如果浏览器无法启动,检查是否被防火墙或代理阻止。
  5. 查看返回的错误信息,确认参数是否合法(如定位器策略、超时设置)。
  6. 在MCP客户端中检查服务器日志,确认连接状态。

使用场景

让AI代理自动打开Chrome浏览器,访问指定网站并截图。
自动化数据采集,如抓取网页内容、获取元素属性。
执行跨浏览器测试,验证网页在不同浏览器上的表现。
处理需要登录或Cookie的会话状态。
在无头模式下运行自动化测试,连续执行多个操作。

支持客户端

Goose完整支持
Claude Code完整支持
Cursor完整支持
Windsurf完整支持