Selenix MCP Server
Connect Claude Desktop to Selenix via the Model Context Protocol. Chat with Claude to create, run, debug, and manage browser automation tests — just like using the built-in AI Assistant, but powered by Claude.
Prerequisites
- Selenix desktop app installed
- Claude Desktop installed
- Node.js 18 or later
Enable the Bridge in Selenix
Before using any setup method below, enable the bridge inside Selenix:
- Open Selenix
- Go to System Settings (gear icon in the sidebar)
- Scroll to the MCP Server section
- Set Enable MCP Server to Yes
This starts a local bridge server that the MCP server connects to.
Setup
Choose one of the following methods:
Option A: Install via npm (recommended)
npm install -g @selenix/mcp-server
Then find your global npm path:
npm root -g
Open your Claude Desktop config file:
- Windows: Press
Win+R, paste%APPDATA%\Claude\claude_desktop_config.json, press Enter - macOS: Open
~/Library/Application Support/Claude/claude_desktop_config.json
Add the Selenix MCP server, replacing the path with the output from npm root -g:
{
"mcpServers": {
"selenix": {
"command": "node",
"args": ["<npm-root-path>/@selenix/mcp-server/dist/bundle.js"]
}
}
}
Example (Windows with nvm):
{
"mcpServers": {
"selenix": {
"command": "node",
"args": ["C:/Users/YourName/AppData/Local/nvm/v18.20.8/node_modules/@selenix/mcp-server/dist/bundle.js"]
}
}
}
Example (macOS/Linux):
{
"mcpServers": {
"selenix": {
"command": "node",
"args": ["/usr/local/lib/node_modules/@selenix/mcp-server/dist/bundle.js"]
}
}
}
If you already have other MCP servers configured, add "selenix" alongside them inside the existing "mcpServers" object.
Option B: Use the bundled version (no npm required)
If you installed Selenix as a desktop app, the MCP server is already bundled. No need to install anything — just point Claude Desktop to the bundled file.
Find your Selenix install folder and look for resources/mcp-server/index.js, then add to your Claude Desktop config:
{
"mcpServers": {
"selenix": {
"command": "node",
"args": ["C:/path/to/Selenix/resources/mcp-server/index.js"]
}
}
}
Typical Windows path:
C:/Users/YourName/AppData/Local/Programs/Selenix/resources/mcp-server/index.js
Option C: Manual download
- Download
bundle.jsfrom the npm package page or from the releases page - Save it somewhere on your machine (e.g.,
C:/selenix-mcp/bundle.js) - Add to your Claude Desktop config:
{
"mcpServers": {
"selenix": {
"command": "node",
"args": ["C:/selenix-mcp/bundle.js"]
}
}
}
Node.js is still required — the MCP server is a single JavaScript file with no other dependencies.
Verify
Restart Claude Desktop after editing the config. You should see the Selenix tools icon (hammer) in the chat input area.
Try asking Claude:
- "What tests are in my Selenix project?"
- "Create a test that opens google.com and searches for 'selenium automation'"
- "Run the current test and fix any failures"
- "Take a screenshot of the browser"
How It Works
Claude Desktop <--stdio--> MCP Server <--HTTP--> Bridge Server (inside Selenix)
The MCP server translates Claude's tool calls into HTTP requests to a bridge server running inside Selenix. The bridge has full access to Selenix internals — the same capabilities as the built-in AI Assistant.
- The bridge only listens on
127.0.0.1(localhost) — no network exposure - Auth is handled via a bearer token auto-generated each time Selenix starts
- Connection config is stored at
~/.selenix/bridge.jsonand re-read on every call, so restarting Selenix does not require restarting Claude Desktop
Available Tools
Reading & Inspection
| Tool | Description |
|---|---|
get_screenshot |
Capture a screenshot of the browser window |
get_page_html |
Get the page HTML with interactive elements annotated |
get_search_html |
Search page HTML by regex pattern |
get_selected_command_info |
Get DOM context for a command's target element |
get_current_test |
Get all commands in the current test |
get_test_list |
List all tests in the project |
get_test_by_name |
Get a test by its name |
get_command_list |
List all available Selenix comm |
Tools 8
get_screenshotCapture a screenshot of the browser windowget_page_htmlGet the page HTML with interactive elements annotatedget_search_htmlSearch page HTML by regex patternget_selected_command_infoGet DOM context for a command's target elementget_current_testGet all commands in the current testget_test_listList all tests in the projectget_test_by_nameGet a test by its nameget_command_listList all available Selenix commands