A high-performance web server with integrated MCP (Model Context Protocol) support for AI-driven management. Handles static, PHP, proxy, app, and redirect domains with advanced features like caching, WAF, rate limiting, SSL/TLS, ACME, backups, and analytics.
UWAS exposes 12 tools with basic schemas and descriptions, but falls short of production quality. All tools have descriptions (10-80 chars, mostly under 50), which is below the 194-char baseline for A+ tools. Input schemas are present but minimal: most tools have empty properties (no parameters), and the one parameterized tool (cache_purge, domain_get) lacks detailed constraints. No output schemas are documented, LLMs cannot predict response structure for chaining. No error handling guidance, no parameter validation rules, no recovery hints. Tool names are verb-noun (good), but descriptions are terse and lack WHEN/WHY context. No tool annotations (readOnlyHint/destructiveHint) despite clear risk classifications in metadata. Overall: functional but well below production baseline.
Purge cache entries by tag or purge all
Get cache hit/miss statistics and memory usage
Show current server configuration (sanitized, no secrets)
Show server configuration summary: listeners, features enabled, domain count
Get detailed configuration for a specific domain (secrets redacted)
List all configured domains with their type and SSL mode
Count domains by type (static, php, proxy, app, redirect)
No output schemas documented. LLMs cannot predict response structure, breaking tool chaining and forcing agents to guess field names.
Descriptions are terse (10-80 chars, avg ~40). Baseline for A+ tools is 194 chars. Missing WHEN/WHY context, prerequisites, and recovery hints. LLMs cannot determine when to select these tools over alternatives.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk classifications in metadata. cache_purge is WRITE but not marked destructive; agents cannot reason about safety.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 50 | 2026-07-28+ | v2 |
Get request error rate summary by status code class
Get performance metrics: request rate, latency percentiles, throughput
Show security configuration overview: WAF, rate limiting, IP ACLs across all domains
Show SSL/TLS configuration status for all domains
Get server statistics including requests, cache, and connections
Parameter descriptions missing or minimal. cache_purge.tag lacks format/constraint guidance ('empty = purge all' is in tool description, not param description). domain_get.host lacks validation rules (hostname format, length, allowed characters).
No error handling guidance. Tools return success/failure but do not tell LLMs what to do next, whether to retry, or how to recover from common failures (domain not found, cache tag invalid, etc.).