SHAFT MCP Server

Web automation and testing server using SHAFT Engine (Selenium-based)

Remote serverstreamable-httpGo

What is the SHAFT MCP MCP server?

Connect SHAFT MCP to Claude, Cursor or any other MCP client and it stops being a tab you switch to. Web automation and testing server using SHAFT Engine (Selenium-based). The shaft mcp mcp server is what makes that connection.

What the server does

SHAFT MCP is a Model Context Protocol (MCP) server that enables Claude Desktop to perform web automation tasks using the SHAFT Engine (a Selenium-based test automation framework). This gives Claude powerful browser automation capabilities including:

Installation

Because this one is hosted, setup is mostly authentication — you point your client at the endpoint and approve access. Nothing runs on your machine, so there is no runtime to keep patched.

Available tools

The toolset is worth reading before you wire it up, because it tells you what the integration is really for:

  • driver_initialize — Launch browser (Chrome/Firefox/Safari/Edge)
  • driver_quit — Close browser
  • browser_navigate — Navigate to URL
  • browser_refresh — Refresh page
  • browser_maximize_window — Maximize browser window
  • browser_set_window_size — Set custom window size
  • browser_fullscreen_window — Set fullscreen mode
  • element_click — Click elements using locators (ID, CSS, XPath, etc.)
  • element_click_ai — Click elements using AI (natural language)
  • element_click_js — JavaScript-based clicking
  • element_double_click — Double-click elements
  • element_hover — Hover over elements

Credentials and setup notes

Configuration is passed through the environment: GITHUB_PERSONAL_ACCESS_TOKEN, REMOTE_DRIVER_ADDRESS. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.

  • Claude Desktop App (latest version) - Java 25 (OpenJDK 25 or newer) - for JAR-based installation - OR Docker - for Docker-based installation - Maven (only if building from source)

Worth knowing first

  • Your data travels to the provider's service, so the usual questions apply about what you send and what they retain.
  • With 14 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch SHAFT MCP.
  • Missing credentials fail quietly in some clients — if no tools show up, check the environment block first.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

Where it fits

Among the browser automation options, the useful question is rarely "what can it do" but "what does it cost you to run" — permissions, credentials, and how much of your context its toolset consumes. SHAFT MCP's toolset — driver_initialize, driver_quit, browser_navigate and 11 more — is a fair guide to whether it matches your workflow. It is maintained by ShaftHQ; worth a glance at recent repository activity before you build anything load-bearing on it.

SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.

Available tools

ToolWhat it does
driver_initializeLaunch browser (Chrome/Firefox/Safari/Edge)
driver_quitClose browser
browser_navigateNavigate to URL
browser_refreshRefresh page
browser_maximize_windowMaximize browser window
browser_set_window_sizeSet custom window size
browser_fullscreen_windowSet fullscreen mode
element_clickClick elements using locators (ID, CSS, XPath, etc.)
element_click_aiClick elements using AI (natural language)
element_click_jsJavaScript-based clicking
element_double_clickDouble-click elements
element_hoverHover over elements
element_typeType text into elements
element_type_aiType using AI element detection

How to install the SHAFT MCP MCP server

**For macOS and Windows:**
```json
{
  "mcpServers": {
    "shaft-mcp": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e", "REMOTE_DRIVER_ADDRESS=http://host.docker.internal:4444/wd/hub",
        "ghcr.io/shafthq/shaft-mcp:latest"
      ]
    }
  }
}

Configuration as documented by the project. Restart the client after saving.

Configuration

  • Claude Desktop App (latest version) - Java 25 (OpenJDK 25 or newer) - for JAR-based installation - OR Docker - for Docker-based installation - Maven (only if building from source)
VariableDescriptionRequired
GITHUB_PERSONAL_ACCESS_TOKENCredential the server authenticates with.Yes
REMOTE_DRIVER_ADDRESSConfiguration value read at startup.Optional

Example prompts to try

  • Use SHAFT MCP to driver initialize.
  • Use SHAFT MCP to driver quit.
  • Use SHAFT MCP to browser navigate.

Frequently asked questions

It connects SHAFT MCP to MCP-compatible AI assistants such as Claude and Cursor, exposing 14 tools (driver_initialize, driver_quit, browser_navigate, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with SHAFT MCP directly.