JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 199
  • Score
    100M100P100Q92805F
  • License MIT

A Model Context Protocol (MCP) server for UUV - a solution to facilitate the writing and execution of E2E tests understandable by any human being(English or French) using cucumber(BDD) and cypress or playwright.

Package Exports

  • @uuv/mcp-server

Readme

UUV MCP Server

This library is an MCP (Model Context Protocol) server for UUV - a solution to facilitate the writing and execution of E2E tests understandable by any human being(English or French) using cucumber(BDD) and cypress or playwright.

Requirements

Getting started

First, install the UUV MCP server with your client.

Standard config works in most of the tools:

{
  "mcpServers": {
    "uuv": {
      "command": "npx",
      "args": [
        "@uuv/mcp-server@latest"
      ]
    }
  }
}
Opencode

Follow the MCP Servers documentation. For example in ~/.config/opencode/opencode.json:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "uuv": {
      "type": "local",
      "command": [
        "npx",
        "@uuv/mcp-server@latest"
      ],
      "enabled": true
    }
  }
}
Claude Code

Use the Claude Code CLI to add the Marketplace plugin for the UUV:

claude plugin marketplace add https://github.com/e2e-test-quest/uuv

Then use the Claude Code CLI to add specific UUV's plugin:

claude plugin install uuv-e2e-accessibility-test@uuv-e2e-accessibility-test-marketplace

Then use the Claude Code CLI to add the UUV MCP server:

claude mcp add uuv npx @uuv/mcp-server@latest
Gemini CLI

To add the UUV Extension:

gemini extensions install https://github.com/e2e-test-quest/uuv --auto-update

To remove the UUV Extension:

gemini extensions uninstall uuv-e2e-accessibility-test

Exposed MCP Tools

This MCP server exposes the following tools:

retrieve_prompt

  • Description: Retrieve an uuv prompt template for a coding agent based on a prompt name and arguments.
  • Input Schema:
    • promptName (enum): Either generate_test_expect_table, generate_test_expect_element, generate_test_click_element, generate_test_within_element or generate_test_type_element
    • baseUrl (string): The base URL of the page
    • For generate_test_expect_table, generate_test_expect_element, generate_test_click_element, generate_test_within_element or generate_test_type_element:
      • accessibleName: (string, optional): Accessible name
      • accessibleRole: (string, optional): Accessible role
      • domSelector: Dom selector of the element

available_sentences

  • Description: List all available UUV test sentences/phrases in Gherkin format.
  • Input Schema:
    • category (enum, optional): Filters sentences by action type (general, keyboard, click, contains, type, checkable)
    • role (string, optional): Filters sentences related to an accessible role

generate_test_expect_element

  • Description: Generate a complete UUV test scenario (Gherkin format) to verify the presence of an element with specified (role and name) or domSelector.
  • Input Schema:
    • baseUrl (string): The base URL of the page where the element is located
    • accessibleName (string): Accessible name of the element
    • accessibleRole (string): Accessible role of the element
    • domSelector: Dom selector of the element

generate_test_expect_element

  • Description: Generate a complete UUV test scenario (Gherkin format) to verify the presence of an element with specified (role and name) or domSelector.
  • Input Schema:
    • baseUrl (string): The base URL of the page where the element is located
    • accessibleName (string): Accessible name of the element
    • accessibleRole (string): Accessible role of the element
    • domSelector: Dom selector of the element

generate_test_click_element

  • Description: Generate a complete UUV test scenario (Gherkin format) that clicks on html element with specified (role and name) or domSelector.
  • Input Schema:
    • baseUrl (string): The base URL of the page where the element is located
    • accessibleName (string): Accessible name of the element
    • accessibleRole (string): Accessible role of the element
    • domSelector: Dom selector of the element

generate_test_type_element

  • Description: Generate a complete UUV test scenario (Gherkin format) that focus within a html element with specified (role and name) or domSelector.
  • Input Schema:
    • baseUrl (string): The base URL of the page where the element is located
    • accessibleName (string): Accessible name of the element
    • accessibleRole (string): Accessible role of the element
    • domSelector: Dom selector of the element

generate_test_expect_table

  • Description: Generate a complete UUV test scenario (Gherkin format) to verify the presence and content of html table, grid or treegrid.
  • Input Schema:
    • baseUrl (string): The base URL of the page where the table/grid/treegrid is located
    • innerHtmlFilePath (string): File path containing the raw innerHTML content

Exposed MCP Prompts

This MCP server exposes the following prompts:

generate_test_expect_element

  • Description: Returns UUV prompt to verify the presence of an element with specified (role and name) or domSelector.
  • Input Schema:
    • baseUrl (string): The base URL of the page where the element is located
    • accessibleName (string): Accessible name of the element
    • accessibleRole (string): Accessible role of the element
    • domSelector: Dom selector of the element

generate_test_expect_element

  • Description: Returns UUV prompt to verify the presence of an element with specified (role and name) or domSelector.
  • Input Schema:
    • baseUrl (string): The base URL of the page where the element is located
    • accessibleName (string): Accessible name of the element
    • accessibleRole (string): Accessible role of the element
    • domSelector: Dom selector of the element

generate_test_click_element

  • Description: Returns UUV prompt that clicks on html element with specified (role and name) or domSelector.
  • Input Schema:
    • baseUrl (string): The base URL of the page where the element is located
    • accessibleName (string): Accessible name of the element
    • accessibleRole (string): Accessible role of the element
    • domSelector: Dom selector of the element

generate_test_type_element

  • Description: Returns UUV prompt that focus within a html element with specified (role and name) or domSelector.
  • Input Schema:
    • baseUrl (string): The base URL of the page where the element is located
    • accessibleName (string): Accessible name of the element
    • accessibleRole (string): Accessible role of the element
    • domSelector: Dom selector of the element

generate_test_expect_table

  • Description: Generate a complete UUV test scenario (Gherkin format) to verify the presence and content of html table, grid or treegrid.
  • Input Schema:
    • baseUrl (string): The base URL of the page where the table/grid/treegrid is located
    • innerHtmlFilePath (string): File path containing the raw innerHTML content