Webdriverio MCP logo

Webdriverio MCP

by webdriverio

Automates browsers, Electron apps, and Android or iOS devices through WebdriverIO, WebDriver, and Appium over MCP.

Install Webdriverio MCP

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "webdriverio-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@wdio/mcp@latest"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Install not yet sandbox-tested— we haven't run this command through our automated sandbox yet. Not a red flag; we're working through the catalog.

Overview

webdriverio/mcp MCP server connects AI agents to WebdriverIO-controlled browsers, local Electron applications, and mobile apps through WebDriver and Appium. It supports session creation or attachment, page navigation, accessibility snapshots, element interaction, screenshots, JavaScript execution, cookies, tabs, frames, mocks, and device emulation. Browser and mobile sessions can run locally or through BrowserStack, Sauce Labs, LambdaTest, TestingBot, and Digital.ai Testing. Reach for it when an agent needs to inspect and operate a live web UI, Electron application, or native Android or iOS app.

Use cases

  • Automate browser workflows across Chrome, Firefox, Edge, or Safari
  • Test local Electron interfaces and main-process behavior
  • Drive native Android and iOS apps through Appium
  • Inspect pages with accessibility snapshots before interacting
  • Run browser or mobile sessions on supported cloud providers

Key features

  • WebDriver and Appium session control
  • Accessibility snapshots and element references
  • Browser, Electron, and mobile interaction tools
  • JavaScript execution and session-scoped mocks
  • Screenshots, cookies, tabs, frames, and device emulation
  • Local or cloud-based session support

Tools40

What Webdriverio MCP lets your agent do. Expand a tool for its parameters.

Self-reported~1.1k tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

17/18 checks healthy over the last 78d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 6d ago via OSV.dev · @wdio/mcp@latest (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars43Stargazers on the source repository.
npm downloads27kPackage downloads in the last 30 days.
Last commit1d agoMost recent push to the default branch.
Tools exposed40Callable tools this server registers over MCP.
Directory activity3 viewsConfig copies, upvotes, and views on AllMCPs.

How Webdriverio MCP works

What webdriverio/mcp does

webdriverio/mcp exposes WebdriverIO automation through the Model Context Protocol. It can control Chrome, Firefox, Edge, Safari, local Electron applications, and native Android or iOS apps. Agents can start a new session, attach to an existing WebDriver or Appium session, or launch Chrome with remote debugging for an attachable session.

The server is suited to interactive browser automation, UI exploration, cross-platform application checks, and agent-driven test flows. It can also connect sessions to supported cloud testing providers: BrowserStack, Sauce Labs, LambdaTest, TestingBot, and Digital.ai Testing.

How it works

The default transport is stdio, allowing an MCP client to launch the server as a subprocess. HTTP transport is available for clients that cannot start subprocesses; the server listens on a configurable port and exposes MCP at /mcp. Host and origin controls are available for DNS rebinding protection and CORS configuration.

A typical flow starts with start_session, followed by navigate or application-specific actions. snapshot returns an accessibility-oriented view with references that can be passed to interaction tools. Sessions may also be attached to an existing remote WebDriver or Appium connection, and closed or detached when work is complete.

Mobile automation uses Appium. iOS requires the XCUITest driver and Xcode on macOS, while Android uses the UiAutomator2 driver and Android Studio. An emulator or physical device must be available, and the Appium server should be running before mobile actions begin.

Setup and configuration

The standard installation runs the latest package through npx:

config.json
{
  "mcpServers": {
    "wdio-mcp": {
      "command": "npx",
      "args": ["-y", "@wdio/mcp@latest"]
    }
  }
}

The package can also be installed globally with npm install -g @wdio/mcp, then started with the wdio-mcp command. After changing client configuration, restart the MCP client.

For HTTP mode, run npx @wdio/mcp --http --port 3000. The default port is 3000, allowed hosts default to localhost addresses, and browser origins are blocked unless explicitly allowed.

Cloud sessions require credentials in environment variables or MCP client configuration. BrowserStack uses BROWSERSTACK_USERNAME and BROWSERSTACK_ACCESS_KEY; Sauce Labs uses SAUCE_USERNAME and SAUCE_ACCESS_KEY; LambdaTest uses TESTMU_USERNAME and TESTMU_ACCESS_KEY; and TestingBot uses TESTINGBOT_KEY and TESTINGBOT_SECRET.

Tools and capabilities

  • Start, attach, close, or detach browser, Electron, and mobile sessions.
  • Navigate pages, list and switch browser tabs, and switch into or out of iframes.
  • Inspect accessibility snapshots, visible interactable elements, screenshots, and Electron accessibility trees.
  • Click, fill, select, press keys, scroll, and batch multiple actions with perform_actions.
  • Execute browser JavaScript, Appium mobile commands, or privileged Electron main-process scripts.
  • Set, retrieve, and delete cookies.
  • Emulate mobile and tablet presets in BiDi sessions, including viewport, device pixel ratio, user agent, and touch behavior.
  • Install and drive web extensions, trigger configured Electron deeplinks, and configure session-scoped browser or Electron mocks.

Tool groups such as mocks, cookies, device, extensions, attach, elements, and cloud-apps can be enabled as needed.

Limitations and notes

Some capabilities are platform-specific. Tabs and scrolling are browser-only; Electron accessibility trees require Electron sessions; and device emulation requires a BiDi session. Element discovery through get_elements is available for mobile and Electron sessions after the elements tool group is enabled, while browser interaction is commonly driven through snapshot references.

Screenshots are returned as base64 data and automatically resized to a maximum of 2000 pixels or 1 MB. Session mocks are scoped to the session and can be inspected, cleared, reset, or restored.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Webdriverio MCP

webdriverio/mcp is an MCP server that connects AI agents to WebdriverIO-controlled browsers, Electron applications, and native Android or iOS apps. Its main tools start or attach sessions, inspect pages, interact with elements, execute scripts, capture screenshots, manage cookies, and run Appium mobile commands.

Install it by configuring your MCP client to run `npx -y @wdio/mcp@latest`. You can alternatively install `@wdio/mcp` globally with npm and use the `wdio-mcp` command. Restart the client after changing its MCP configuration.

Yes, webdriverio/mcp works with Cursor through Cursor Settings → MCP or a `.cursor/mcp.json` entry. Configure Cursor to launch `npx` with `-y` and `@wdio/mcp@latest`, then restart the client.

Use an Appium server with the required platform driver and an available emulator or physical device. Android uses UiAutomator2 and Android Studio; iOS uses XCUITest and Xcode on macOS. Start Appium before creating a mobile session.

Yes, it supports BrowserStack, Sauce Labs, LambdaTest, TestingBot, and Digital.ai Testing. Set the provider's credentials as environment variables or in the MCP client configuration, then create a session for the selected cloud service.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewWebdriverio MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/webdriverio-mcp?style=directory)](https://allmcps.com/mcp/webdriverio-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/webdriverio-mcp"><img src="https://allmcps.com/api/badge/webdriverio-mcp?style=directory" alt="Webdriverio MCP on AllMCPs" /></a>