GroundNG (QA for Cursor) MCP server

Automates web testing by putting the client in a feedback loop. Test recording, execution, and discovery with robust element identification and vision-based fallback mechanisms.
Back to servers
Provider
Ilikepizza2
Release date
Apr 25, 2025
Language
Python
Stats
46 stars

VibeShift is an intelligent security agent that integrates with AI coding assistants to analyze generated code, identify vulnerabilities, and facilitate remediation before insecure code enters your codebase. It uses the Model Context Protocol (MCP) to seamlessly fit into your existing AI coding workflow, creating an automated security feedback loop for AI-assisted development.

Features

  • MCP Integration: Works seamlessly with Cursor, GitHub Copilot, and other AI coding tools
  • Automated Security Scanning: Performs static code analysis using tools like Semgrep
  • AI-Assisted Test Recording: Generates Playwright test scripts from natural language instructions
  • Deterministic Test Execution: Runs recorded tests reliably with Playwright
  • AI-Powered Test Discovery: Crawls websites to suggest test steps for discovered pages
  • Regression Testing: Easily executes existing test suites
  • Self-Healing Tests: Tests automatically adapt to code changes
  • UI Testing: Supports UI tests beyond standard Playwright capabilities
  • Visual Regression Testing: Uses both pixelmatch and vision LLM approaches

Installation

Prerequisites

  • Python 3.10+
  • Access to any LLM (gemini 2.0 flash recommended for free option)
  • MCP installed (pip install mcp[cli])
  • Playwright browsers installed (patchright install)

Setup Steps

  1. Clone the repository:

    git clone https://github.com/GroundNG/VibeShift
    cd VibeShift
    
  2. Create a virtual environment:

    python -m venv venv
    source venv/bin/activate  # Linux/macOS
    # venv\Scripts\activate  # Windows
    
  3. Install dependencies:

    pip install -r requirements.txt
    
  4. Install Playwright browsers:

    patchright install --with-deps
    

Configuration

  1. Rename .env.example to .env in the project root directory
  2. Add your LLM API key:
    LLM_API_KEY="YOUR_LLM_API_KEY"
    

Adding the MCP Server

Add this to your MCP config:

{
  "mcpServers": {
    "VibeShift":{
      "command": "uv",
      "args": ["--directory","path/to/cloned_repo", "run", "mcp_server.py"]
    }
  }
}

Usage

Interact with VibeShift through your MCP-enabled AI coding assistant using natural language commands.

Security Analysis

  • Automatic Mode: VibeShift analyzes code snippets as they're generated by the AI

  • Manual Commands:

    "VibeShift, analyze this function for security vulnerabilities."

    "Ask VibeShift to check the Python code Copilot just wrote for SQL injection."

    "Secure the generated code with VibeShift before committing."

Recording Tests

Record a test: go to https://practicetestautomation.com/practice-test-login/, type 'student' into the username field, type 'Password123' into the password field, click the submit button, and verify the text 'Congratulations student' is visible.

The agent performs these actions automatically and saves a test file in the output/ directory.

Executing Tests

Run the regression test `output/test_practice_test_login_20231105_103000.json`

VibeShift executes the steps and reports test results with details.

Discovering Test Steps

Discover potential test steps starting from https://practicetestautomation.com/practice/

The agent crawls the site, analyzes pages, and suggests test steps for each page discovered.

Listing Recorded Tests

List the available recorded web tests.

Returns a list of test files found in the output/ directory.

Output Types

  • Security Reports: Details vulnerabilities with type, location, severity, and suggested fixes
  • Recorded Tests: Saved as JSON files in the output/ directory
  • Execution Results: Returned as JSON with test status and saved to output/execution_result_....json
  • Discovery Results: Lists discovered URLs with suggested steps, saved to output/discovery_results_....json

How to add this MCP server to Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > MCP and click "Add new global MCP server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "cursor-rules-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "cursor-rules-mcp"
            ]
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explictly ask the agent to use the tool by mentioning the tool name and describing what the function does.

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later