wdio-mcp-server

siri100/wdio-mcp-server

3.2

If you are the rightful owner of wdio-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

The wdio-mcp-server is a custom Model Context Protocol server designed to automate WebdriverIO browser-based testing using GitHub Copilot Agent's Agent Mode.

Tools
  1. openBrowser

    Opens a new browser instance.

  2. navigate

    Navigates to a specified URL.

  3. clickElement

    Clicks on a specified element.

  4. setValue

    Sets a value for a specified input field.

  5. getText

    Retrieves text from a specified element.

  6. isDisplayed

    Checks if a specified element is displayed.

  7. closeBrowser

    Closes the current browser instance.

wdio-mcp-server

A custom Model Context Protocol (MCP) server for automating WebdriverIO (WDIO) browser-based testing using GitHub Copilot Agent's Agent Mode. It enables LLM-powered QA automation: provide a test scenario in plain English, and the server performs testing and auto-generates WebdriverIO test code using the registered tools.


📦 What is MCP Server?

The MCP (Model Context Protocol) Server allows developers to expose tools that can be invoked by GitHub Copilot Agents through LLMs.
This project extends MCP to support WebdriverIO automation, so your agent can:

  • Interpret test scenarios
  • Perform real-time UI testing
  • Generate WDIO test automation code

🤖 Integration with GitHub Copilot Agent (Agent Mode)

Once configured, GitHub Copilot Agent (in Agent Mode) can:

  • Communicate with this local MCP server
  • Utilize WDIO-based tools to run and generate tests
  • Dynamically interact with browsers using defined tools

⚙️ Local Setup Instructions

1. Clone and install dependencies

git clone https://github.com/your-username/wdio-mcp-server.git
cd wdio-mcp-server
npm install

2. Start the MCP Server

  • Start the server by clicking the Start button on the mcp.json file in your IDE.
  • Start MCP Server

3. Validate the server is running

  • Ensure the server is running and all tools are available.
  • Validate Tools

4. Connect GitHub Copilot Agent with MCP Server

  1. Launch GitHub Copilot Agent.

  2. Go to ⚙️ Settings and enable Agent Mode.

  3. (Optional) Disable the default LLM model if you prefer your own.

  4. Click on Configure Tools.

  5. Select all the tools exposed by this project:

    • openBrowser
    • navigate
    • clickElement
    • setValue
    • getText
    • isDisplayed
    • closeBrowser

You're now ready to test!
Write your test scenarios in plain English and let the Copilot Agent automate your browser testing with WDIO.


🛠️ Available Tools

ToolDescription
openBrowserLaunches a new browser session.
navigateNavigates the browser to a specified URL.
clickElementClicks on a specified element on the web page.
setValueSets the value of an input field or form element.
getTextRetrieves the visible text from a specified element.
isDisplayedChecks if a specified element is currently visible on the page.
closeBrowserCloses the current browser session.

🚀 Usage Examples

Example scenario (in plain English):

  1. Navigate to https://www.saucedemo.com/v1/index.html
  2. Login with standard_user / secret_sauce
  3. Add the first 2 products to the cart
  4. Click the cart icon and go to the cart page
  5. Verify 2 items are added and visible in the cart

The Copilot Agent will translate this scenario into a sequence of tool invocations and WDIO test code.


📝 How It Works

  1. You write a test scenario in plain English.
  2. The Copilot Agent interprets your scenario and calls the appropriate tools exposed by this MCP server.
  3. The server performs real browser automation using WebdriverIO.
  4. Optionally, the agent can generate reusable WDIO test code for your scenario.

🧩 Extending & Customizing

To add or modify tools:

  • Edit the tool definitions in your MCP server code.
  • Restart the server to expose new or updated tools.
  • Update documentation as needed.