Mobile QA Helper

Created By
swapnilGirishPawar3 months ago
Overview

The QA Prompts MCP Server is a Model Context Protocol (MCP) server designed specifically for mobile automation teams. It provides structured, reusable QA prompt templates that can be used directly inside Cursor to streamline automation development, debugging, and bug reporting.

It integrates with Cursor through MCP, allowing teams to trigger predefined QA workflows using simple slash commands in chat.

What It Does

This MCP server offers ready-to-use prompts for:

Converting manual test cases into automation code

Reviewing and refactoring automation frameworks

Analyzing test failures

Standardizing bug reports

Generating Page Object Model (POM) locators from Appium Inspector XML

All outputs are structured and formatted to match professional QA standards and framework conventions.

How to Use It in Cursor (No Repository Clone Required)

You don’t need to clone the repository to use it.

Simply add the server configuration to your Cursor MCP configuration file located at:

~/.cursor/mcp.json

Add this configuration:

Use npx

Point to the GitHub repository: swapnilGirishPawar/Custom-MCP-Server-Mobile-QA

After saving the configuration, restart Cursor. The QA prompts will then appear in chat when you type /.

Available Prompts

  1. Manual to Automation Conversion

These prompts help automation engineers generate or improve test code:

/convert-manual-to-automation Converts manual test cases into complete Appium + Java + TestNG automation scripts following Page Object Model (POM) architecture.

/refactor-automation-code Performs a detailed PR-style review of automation code and returns a structured improvement report.

/xml-to-pom-locators Converts Appium Inspector page source XML into properly prioritized POM locator declarations (ID → Accessibility ID → XPath).

  1. Debugging & Failure Analysis

/analyze-test-failure Analyzes Appium failure logs to determine:

Root cause

Severity

Flakiness risk

Fix recommendations

This helps teams quickly understand why a test failed and how to resolve it.

  1. Bug Standardization

/standardize-bug-report Converts a simple bug description into a fully structured bug report using a standardized organization template.

This ensures consistent, professional bug documentation.

How the Workflow Looks in Cursor

Open Cursor chat (Cmd+L) or Composer (Cmd+I)

Type /

Select one of the available QA prompts

Fill in the required inputs

Submit

The AI processes the structured template and returns formatted, production-ready output.

Example Workflows Standardizing a Bug

You type:

/standardize-bug-report

Provide:

bugDescription: “login button not working on iOS after update”

additionalContext (optional): Build 2.3.1, iPhone 15, Premium account

The system generates:

Proper bug title

Detailed issue description

Reproduction steps

Expected result

Structured formatting

Converting a Manual Test Case to Automation

You type:

/convert-manual-to-automation

Provide:

featureNavigation (e.g., Settings → Notifications → Push Notifications)

manualTestCase (your test steps)

existingCode (optional Page Objects or BaseTest)

The system generates:

Complete TestNG test class

Proper annotations

POM-based implementation

Framework-aligned structure

Prompt Input Requirements

Each prompt requires specific inputs:

convert-manual-to-automation

Required: featureNavigation, manualTestCase

Optional: existingCode

refactor-automation-code

Required: code

xml-to-pom-locators

Required: pageSourceXml

analyze-test-failure

Required: failureLogs

standardize-bug-report

Required: bugDescription

Optional: additionalContext

Local Development Setup

If you want to modify or extend the MCP server:

Clone the GitHub repository

Install dependencies using npm

Build the project

Start it locally

For development with auto-reload, use the dev script (requires tsx).

To test locally before pushing changes, you can point your Cursor MCP configuration to your local build output (dist/index.js) instead of the GitHub source.

Tech Stack

The server is built using:

TypeScript (strict mode enabled)

@modelcontextprotocol/sdk (v1.27+)

Zod v4 for input validation

stdio transport for integration with Cursor

Summary

The QA Prompts MCP Server acts as a structured QA assistant embedded inside Cursor. It eliminates repetitive prompt writing and standardizes automation generation, debugging, and bug documentation workflows.

It’s particularly useful for:

Mobile automation engineers

QA leads

Teams using Appium + Java + TestNG

Organizations aiming for consistent bug reporting standards

Server Config

{
  "mcpServers": {
    "qa-prompts": {
      "command": "npx",
      "args": [
        "-y",
        "github:swapnilGirishPawar/Custom-MCP-Server-Mobile-QA"
      ]
    }
  }
}
Project Info
Created At
3 months ago
Updated At
3 months ago
Author Name
swapnilGirishPawar
Star
-
Language
-
License
-
Category
Tags

Recommend Servers

View All
Bring your real authenticated browser session to AI coding agents. Local-first MCP server + Chrome MV3 extension. No cloud. No telemetry.
@Cubenest

peek records the user's actual logged-in browser (DOM via rrweb, console events, network metadata, optional response bodies via opt-in Deep capture) through a Chrome MV3 extension. The extension ships events through a native-messaging stdio bridge to a local MCP server (peek-mcp), which persists them to a SQLite database at ~/.peek/sessions.db. AI coding agents (Claude Code, Cursor, Cline, Windsurf) read sessions from the database via 10 MCP tools: Tool What it does list_recent_sessions List recently recorded sessions (id, origin, ts, event count). get_session_summary LLM-readable narrative summary of a session. get_session_console_errors Console errors recorded in a session. get_session_network_errors Failed/notable network requests in a session. get_user_action_before_error Last N user actions before a console error. generate_playwright_repro Generate a runnable Playwright test from a session. get_dom_snapshot Reconstruct the DOM at a given timestamp. query_dom_history Timeline of attribute/text changes for a selector. request_authorization Side-panel consent for write actions (Level 3). execute_action Dispatch a UI action (gated by permission level + destructive blocklist). Why local-first matters Every other "browser session for AI" tool ships to a vendor cloud. peek's SQLite + extension live on the user's machine — no remote endpoints, no telemetry. The privacy policy (docs/peek/PRIVACY_POLICY.md) is the source of truth. Install # 1. Add the MCP server to Claude Code claude mcp add peek -- npx -y @peekdev/mcp # 2. Install the Chrome extension from the Chrome Web Store # (link added once the CWS listing is approved)

2 days ago
Voyei

4 hours ago