内容
# Selenix MCP 服务器
[](https://www.npmjs.com/package/@selenix/mcp-server)
通过模型上下文协议将 [Claude Desktop](https://claude.ai/download) 连接到 [Selenix](https://selenix.io)。与 Claude 聊天以创建、运行、调试和管理浏览器自动化测试 — 就像使用内置的 AI 助手一样,但由 Claude 提供支持。
[](https://glama.ai/mcp/servers/markmircea/Selenix-MCP-Server)
## 前置条件
- 已安装 [Selenix](https://selenix.io) 桌面应用程序
- 已安装 [Claude Desktop](https://claude.ai/download)
- Node.js 18 或更高版本
## 在 Selenix 中启用桥梁
在使用以下任何设置方法之前,请在 Selenix 中启用桥梁:
1. 打开 Selenix
2. 进入 **系统设置** (侧边栏中的齿轮图标)
3. 滚动到 **MCP 服务器** 部分
4. 将 **启用 MCP 服务器** 设置为 **是**
这将启动一个本地桥梁服务器,MCP 服务器将连接到该服务器。
## 设置
选择以下方法之一:
### 选项 A:通过 npm 安装(推荐)
```bash
npm install -g @selenix/mcp-server
```
然后查找您的全局 npm 路径:
```bash
npm root -g
```
打开您的 Claude Desktop 配置文件:
- **Windows**:按 `Win+R`,粘贴 `%APPDATA%\Claude\claude_desktop_config.json`,按 Enter
- **macOS**:打开 `~/Library/Application Support/Claude/claude_desktop_config.json`
添加 Selenix MCP 服务器,替换路径为 `npm root -g` 的输出:
```json
{
"mcpServers": {
"selenix": {
"command": "node",
"args": ["<npm-root-path>/@selenix/mcp-server/dist/bundle.js"]
}
}
}
```
**示例(Windows with nvm):
```json
{
"mcpServers": {
"selenix": {
"command": "node",
"args": ["C:/Users/YourName/AppData/Local/nvm/v18.20.8/node_modules/@selenix/mcp-server/dist/bundle.js"]
}
}
}
```
**示例(macOS/Linux):
```json
{
"mcpServers": {
"selenix": {
"command": "node",
"args": ["/usr/local/lib/node_modules/@selenix/mcp-server/dist/bundle.js"]
}
}
}
```
如果您已经配置了其他 MCP 服务器,请在现有的 `"mcpServers"` 对象中添加 `"selenix"`。
### 选项 B:使用捆绑版本(无需 npm)
如果您已将 Selenix 安装为桌面应用程序,则 MCP 服务器已经捆绑。无需安装任何内容 — 只需将 Claude Desktop 指向捆绑文件即可。
找到您的 Selenix 安装文件夹并查找 `resources/mcp-server/index.js`,然后将其添加到您的 Claude Desktop 配置中:
```json
{
"mcpServers": {
"selenix": {
"command": "node",
"args": ["C:/path/to/Selenix/resources/mcp-server/index.js"]
}
}
}
```
**典型的 Windows 路径:**
```
C:/Users/YourName/AppData/Local/Programs/Selenix/resources/mcp-server/index.js
```
### 选项 C:手动下载
1. 从 [npm 包页面](https://www.npmjs.com/package/@selenix/mcp-server) 或 [发布页面](https://github.com/AiBrainOrg/selenix/releases) 下载 `bundle.js`
2. 将其保存在您的计算机上的某个位置(例如 `C:/selenix-mcp/bundle.js`)
3. 将其添加到您的 Claude Desktop 配置中:
```json
{
"mcpServers": {
"selenix": {
"command": "node",
"args": ["C:/selenix-mcp/bundle.js"]
}
}
}
```
仍然需要 Node.js — MCP 服务器是一个单独的 JavaScript 文件,没有其他依赖项。
## 验证
编辑配置后重启 Claude Desktop。您应该在聊天输入区域看到 Selenix 工具图标(锤子)。
尝试询问 Claude:
- "我的 Selenix 项目中有哪些测试?"
- "创建一个测试,打开 google.com 并搜索 'selenium automation'"
- "运行当前测试并修复任何故障"
- "截取浏览器的屏幕截图"
## 工作原理
```
Claude Desktop <--stdio--> MCP 服务器 <--HTTP--> 桥梁服务器(在 Selenix 内)
```
MCP 服务器将 Claude 的工具调用转换为对在 Selenix 内运行的桥梁服务器的 HTTP 请求。桥梁服务器具有对 Selenix 内部的完全访问权限 — 与内置的 AI 助手相同的功能。
- 桥梁服务器仅监听 `127.0.0.1` (localhost)— 无网络暴露
- 身份验证通过每次 Selenix 启动时自动生成的 bearer token 处理
- 连接配置存储在 `~/.selenix/bridge.json` 并在每次调用时重新读取,因此重启 Selenix 不需要重启 Claude Desktop
## 可用工具
### 读取和检查
| 工具 | 描述 |
|------|-------------|
| `get_screenshot` | 捕获浏览器窗口的屏幕截图 |
| `get_page_html` | 获取带有交互元素注释的页面 HTML |
| `get_search_html` | 按正则表达式模式搜索页面 HTML |
| `get_selected_command_info` | 获取命令的目标元素的 DOM 上下文 |
| `get_current_test` | 获取当前测试中的所有命令 |
| `get_test_list` | 列出项目中的所有测试 |
| `get_test_by_name` | 按名称获取测试 |
| `get_command_list` | 列出所有可用的 Selenix 命令 |
| `get_command_info` | 获取特定命令的详细文档 |
| `get_project_info` | 获取项目元数据 |
| `get_active_suite` | 获取活动的测试套件 |
| `get_step_results` | 获取上一次测试运行的通过/失败结果 |
| `get_logs` | 获取最近的日志(所有类型),每页 20 个,最近的优先。可选 `page` 参数用于分页。 |
| `get_workspace_context` | 获取当前工作区的摘要 |
### 编写和执行
| 工具 | 描述 |
|------|-------------|
| `add_commands` | 在特定位置向测试添加命令 |
| `run_test` | 运行测试并等待结果(最多 2 分钟) |
| `clear_and_replace_commands` | 替换测试中的所有命令 |
| `fix_commands` | 应用有针对性的修复 — 更新、删除或插入命令 |
## 故障排除
**"无法读取 Selenix 桥梁配置"**
Selenix 未运行或 MCP 服务器未启用。打开 Selenix → 系统设置 → 将启用 MCP 服务器设置为 是。
**"无法连接到 Selenix 桥梁"**
Selenix 可能刚刚重新启动。尝试再次发送请求 — MCP 服务器将自动获取新的连接详细信息。
**Claude Desktop 中工具未显示**
确保在编辑配置文件后重启了 Claude Desktop。验证配置文件 JSON 是否有效(无尾随逗号,括号正确)。
**Claude Desktop 在配置文件更改后无法打开**
配置文件 JSON 可能格式不正确。打开配置文件编辑器,修复 JSON 语法,然后重试。常见问题:条目之间缺少逗号,最后一个条目后有尾随逗号。
## 卸载
```bash
npm uninstall -g @selenix/mcp-server
```
然后从您的 Claude Desktop 配置文件中删除 `"selenix"` 条目并重启 Claude Desktop。