Universal Test Automation MCP Server for web and desktop automation with self-healing capabilities
UniAuto has 24 tools with basic schemas and descriptions, but significant quality gaps prevent production use. Descriptions are present but generic (avg ~80 chars, below 194-char baseline). No output schemas documented. Error handling is minimal, responses lack recovery guidance. Tool naming is reasonable (verb_noun pattern) but composition issues exist: 'generate_tests' and 'ai_generate_tests' are near-duplicates; 'test_suite' and 'run_test_suite' overlap. Desktop automation tools (desktop_click, desktop_type) lack parameter validation hints. No evidence of idempotency, pagination, or chaining-ID patterns. Security: no mention of secret injection, permission gates, or audit logging in visible code.
Perform accessibility testing on a page
Use AI to generate test cases
Use AI to process a task and generate automation steps
Click on an element
Create a new test case
Delete a test case
Desktop automation: Click at specific coordinates
Desktop automation: Type text
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields. Rubric requires 100% of A+ tools have documented return types.
Duplicate/overlapping tools: 'generate_tests' and 'ai_generate_tests' both generate tests; 'test_suite' and 'generate_test_suite' overlap. LLMs waste reasoning cycles deciding between them. Rubric: avoid multiple tools doing the same thing differently.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 58 | <=2025-11-25 | v2 |
Extract data from an element
Generate a full test suite for a URL
Generate test cases for a URL using AI
Retrieve a specific test case by ID
Retrieve all test cases
Navigate to a URL
Run network tracing on a page
Run performance testing on a page
Scaffold a test project with the specified framework
Take a screenshot
Select an option from a dropdown
Run a comprehensive test suite including visual, accessibility, performance, and network tests
Type text into an element
Update an existing test case
Perform visual comparison between a baseline and current state
Wait for a specified time
Parameter descriptions missing or minimal for many tools. 'options' parameters (click, type, select, desktop_click) lack detail on what options are valid. Rubric: every parameter needs a description explaining what it controls.
No error handling guidance in responses. Errors return generic messages (e.g., 'error: error.message') without recovery hints. Rubric: error responses must tell LLM what to do next.
No pagination support visible for list tools (get_test_cases). Rubric: tools returning lists should accept page/offset and limit parameters and return total count. Without pagination, large results blow context window.