Cover image
Try Now
2025-04-07

Universal Test Automation MCP Server with self-healing capabilities and Smithery.ai integration

3 years

Works with Finder

1

Github Watches

0

Github Forks

0

Github Stars

UniAuto MCP Server

UniAuto Logo

smithery badge

Universal Test Automation MCP Server for web and desktop automation with self-healing capabilities and AI integration.

Cutting-Edge Features

UniAuto MCP Server incorporates several cutting-edge and futuristic features that position it at the forefront of test automation technology:

1. Multi-Layered Self-Healing Automation

The server's 5-tier self-healing mechanism is revolutionary, using a sophisticated cascade of recovery strategies:

  • Repository-based alternative selectors
  • Role-based accessibility selectors
  • Dynamic looser selector generation
  • Visual element matching using DOM and image recognition
  • Contextual text-proximity detection

This multi-strategy approach creates extraordinarily resilient tests that can survive even major UI overhauls.

2. AI-Driven Test Generation & Maintenance

Integration with Claude and other LLMs enables:

  • Natural language test creation ("Automate the checkout process")
  • Automatic test step generation with appropriate selectors
  • Intelligent response parsing to turn AI outputs into executable commands
  • Visual context interpretation (using screenshots as inputs)
  • Automated test code generation in multiple frameworks (Playwright, Cypress, Jest, etc.)
  • Support for various testing styles (BDD, TDD) and output formats
  • Application structure analysis for intelligent test creation

3. MCP (Model Context Protocol) Integration

The MCP implementation is particularly forward-thinking:

  • Allows AI assistants to directly control testing infrastructure
  • Exposes a standardized API for automation actions
  • Enables seamless integration with Smithery.ai and other AI orchestration platforms
  • Creates a bridge between LLMs and web/desktop automation

4. Unified Web + Desktop Automation

The integration of both web testing (via Playwright) and desktop automation within a single framework provides:

  • Cross-domain testing capabilities
  • Ability to test flows that span browsers and native applications
  • Consistent API across different application types

5. Visual Intelligence

The implementation of visual matching provides:

  • Element recognition by appearance rather than structure
  • Testing continuity even when DOM elements change completely
  • Pixel-perfect comparison capabilities

Core Features

  • Web automation using Playwright (multi-browser support)
  • Desktop automation capabilities
  • Self-healing selectors for resilient test automation
  • AI integration for test generation (supports Claude and other models)
  • Automated test code generation in multiple frameworks and styles
  • MCP (Model Context Protocol) compatibility for use with AI assistants
  • Test case management and execution history
  • Visual element matching

Impact on Test Automation Ecosystem

UniAuto MCP Server has the potential to transform the test automation landscape:

1. Maintenance Cost Reduction

The self-healing capabilities dramatically reduce the #1 pain point in test automation - maintenance costs. Studies suggest that organizations spend 30-40% of testing time on test maintenance. UniAuto could reduce this by 70-80%, freeing QA resources for more strategic work.

2. Democratization of Test Automation

The AI integration allows non-technical stakeholders to create tests using natural language, potentially expanding test automation adoption by:

  • Allowing product managers to directly specify acceptance tests
  • Enabling business analysts to validate features without coding
  • Reducing the specialized skills required for test creation

3. Resilience Revolution

By solving the brittleness problem in modern automation, UniAuto shifts the entire ecosystem toward resilience-focused testing rather than selector-focused testing. This paradigm shift fundamentally changes how tests are written and evaluated.

4. AI Amplification in Testing

As an MCP-compatible system that works with Claude and other models, UniAuto positions automation as an "AI-native" technology, creating a foundation for:

  • AI-driven exploratory testing
  • Autonomous test maintenance
  • Intelligent test prioritization based on application changes
  • Natural language test reporting for stakeholders

5. Cross-Domain Testing Standards

By unifying web and desktop testing under one framework, UniAuto helps establish new standards for end-to-end testing that transcend the current siloed approach to different application types.

Installation

# Clone the repository
git clone https://github.com/yourusername/uniauto-mcp-server.git
cd uniauto-mcp-server

# Install dependencies
npm install

# Install Playwright browsers
npx playwright install

# Create environment file
cp .env.example .env

Configuration

Edit the .env file to configure the server:

# Server Configuration
PORT=3000
NODE_ENV=development

# Database (optional)
MONGODB_URI=mongodb://localhost:27017/uniauto

# Claude Configuration (required for AI processing)
CLAUDE_API_KEY=your_claude_api_key
CLAUDE_MODEL=claude-3-7-sonnet-20240229

Claude API Integration

UniAuto MCP Server uses the official Anthropic SDK to integrate with Claude:

const Anthropic = require('@anthropic-ai/sdk');

const anthropic = new Anthropic({
  apiKey: process.env.CLAUDE_API_KEY,
});

const response = await anthropic.messages.create({
  model: "claude-3-7-sonnet-20240229",
  max_tokens: 1024,
  messages: [{ role: "user", content: "Hello, Claude" }],
});

Usage

# Start the server in development mode
npm run dev

# Start the server in production mode
npm start

API Endpoints

Health Check

  • GET /api/health - Check server status

Automation Commands

  • POST /api/execute - Execute automation command

Test Case Management

  • POST /api/test-cases - Create a test case
  • GET /api/test-cases - Get all test cases
  • GET /api/test-cases/:id - Get a test case by ID
  • PUT /api/test-cases/:id - Update a test case
  • DELETE /api/test-cases/:id - Delete a test case

AI Integration

  • POST /api/ai/process - Process automation task with AI

Test Generation

  • POST /api/generate-tests - Generate test cases for an application
  • POST /api/generate-full-suite - Generate a complete test suite with multiple test types
  • POST /api/scaffold-project - Scaffold a complete test project structure
  • GET /api/test-frameworks - Get available test frameworks, styles, and formats

Advanced Testing

  • POST /api/visual-compare - Compare a page or element against a baseline image
  • POST /api/accessibility-test - Perform accessibility testing on a page
  • POST /api/performance-test - Perform performance testing on a page
  • POST /api/network-trace - Trace network activity for API testing
  • POST /api/test-suite - Run a comprehensive test suite

MCP Integration

  • POST /api/mcp/invoke - MCP compatible command execution
  • GET /api/mcp/manifest - Get MCP manifest

MCP Integration

This server is compatible with the Model Context Protocol (MCP) used by AI assistants like Claude. To use it with Claude or other AI models:

  1. Start the server
  2. Register the MCP server with the AI assistant
  3. The AI can now use the automation capabilities via the MCP protocol

Smithery.ai Integration

smithery badge

UniAuto MCP Server integrates seamlessly with Smithery.ai, making it easy to connect with Claude 3.7 and other AI assistants:

For seamless integration with AI assistants, you can use Smithery.ai:

# Install Smithery CLI
npm install -g @smithery/cli

# Connect UniAuto to Smithery
smithery connect uniauto-mcp-server

# Connect to an AI assistant
smithery connect --assistant claude

Once connected, you can use Claude Code, Claude Web, VSCode with Claude Extension, or Cursor to control UniAuto for automated testing.

See the Smithery Setup Guide for detailed instructions.

AI Assistant Integration

UniAuto works with various AI assistants:

Test Generation Capabilities

UniAuto MCP Server can automatically generate test code in various frameworks and styles:

  • Multiple Frameworks: Generate tests for Playwright, Cypress, Jest, Selenium, WebDriverIO, and more
  • Test Styles: Support for BDD, TDD, and other testing methodologies
  • Output Formats: JavaScript, TypeScript, Python, Java, C#, and Ruby
  • Application Analysis: Intelligent application structure analysis for context-aware test generation
  • Project Scaffolding: Generate complete test projects with configuration files
  • Claude AI Integration: Uses Claude 3.7 to produce high-quality, maintainable test code
  • MCP Integration: All test generation capabilities exposed via the Model Context Protocol

Advanced Testing Capabilities

UniAuto MCP Server provides comprehensive testing capabilities beyond just generating test code:

  • Visual Testing: Compare page or element screenshots against baselines with configurable thresholds
  • Accessibility Testing: Check WCAG compliance with detailed reports on issues and suggested fixes
  • Performance Testing: Measure key web performance metrics like load time, FCP, LCP, and resources
  • Network Tracing: Monitor API calls, analyze responses, and validate network behavior
  • Parallel Execution: Run multiple test types concurrently to reduce total execution time
  • Comprehensive Test Suite: Combined test execution with unified reporting

See the Test Generation Guide for detailed API documentation and examples.

Self-Healing Capabilities

The server uses several strategies for self-healing selectors:

  1. Alternative selector repository
  2. Role-based selectors (Playwright specific)
  3. Looser CSS selector generation
  4. Visual element matching using Playwright's built-in capabilities
  5. Nearest text-based element finding

Playwright Benefits

Playwright offers several advantages for test automation:

  • Cross-browser support: Works with Chromium, Firefox, and WebKit
  • Modern web support: Better handling of Shadow DOM, iframes, and web components
  • Powerful selectors: Role-based selectors, text-based selection, and CSS/XPath support
  • Auto-waiting: Automatically waits for elements to be ready before acting
  • Reliable actions: More reliable element interactions with retries and timing management
  • Network control: Intercept and modify network requests
  • Headless and headed mode: Visual debugging when needed

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

相关推荐

  • https://maiplestudio.com
  • Find Exhibitors, Speakers and more

  • Yusuf Emre Yeşilyurt
  • I find academic articles and books for research and literature reviews.

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Carlos Ferrin
  • Encuentra películas y series en plataformas de streaming.

  • https://zenepic.net
  • Embark on a thrilling diplomatic quest across a galaxy on the brink of war. Navigate complex politics and alien cultures to forge peace and avert catastrophe in this immersive interstellar adventure.

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • 林乔安妮
  • A fashion stylist GPT offering outfit suggestions for various scenarios.

  • 田中 楓太
  • A virtual science instructor for engaging and informative lessons.

  • 1Panel-dev
  • 💬 MaxKB is a ready-to-use AI chatbot that integrates Retrieval-Augmented Generation (RAG) pipelines, supports robust workflows, and provides advanced MCP tool-use capabilities.

  • ShrimpingIt
  • Micropython I2C-based manipulation of the MCP series GPIO expander, derived from Adafruit_MCP230xx

  • open-webui
  • User-friendly AI Interface (Supports Ollama, OpenAI API, ...)

  • GLips
  • MCP server to provide Figma layout information to AI coding agents like Cursor

  • gergelyszerovay
  • A preconfigured development container setup for AI-assisted development with Claude, based on VS Code Dev Containers with integrated Model Context Protocol (MCP) server for file system and shell operations.

  • adafruit
  • Python code to use the MCP3008 analog to digital converter with a Raspberry Pi or BeagleBone black.

    Reviews

    5 (1)
    Avatar
    user_SxVvcjM3
    2025-04-18

    The Uniauto-MCP-Server by samuelvinay91 is a phenomenal tool for motor control enthusiasts. It's highly efficient and easy to integrate into various applications. The documentation is clear, and the community support is impressive. I highly recommend this server for anyone in need of a reliable and versatile motor control solution. Check it out on GitHub!