MCP Server providing tools to validate Libvirt VM XML definitions against RNG schemas
Single tool with minimal schema and generic description. Tool name 'validate_libvirt_xml' is clear and verb-based, but description (67 chars) lacks context on when to use it, what it returns, or error recovery paths. Input schema present but sparse: only one parameter with minimal description. No output schema documented. Error handling exists in code but not surfaced in tool definition. No parameter constraints, enums, or format guidance. Follows basic tool structure but falls short of production quality across naming, description depth, and schema completeness.
Validates the provided Libvirt XML content against the appropriate RNG schema.
Tool description is too generic and lacks actionable context. Current: 'Validates the provided Libvirt XML content against the appropriate RNG schema.' Missing: when to call it, what success looks like, what errors mean, and how to recover.
No output schema documented. Tool returns a string success message, but LLM cannot predict structure or plan downstream actions. Must document: return type, field names, and example response.
Input parameter 'xml_content' has minimal description ('The Libvirt XML content to validate'). Missing: expected format, size limits, encoding, and examples of valid vs invalid input.
Error handling exists in code (LibvirtXmlSyntaxError, LibvirtXmlSchemaError, etc.) but is not surfaced in tool definition. LLM cannot anticipate failure modes or recovery steps. Must document error categories and recovery guidance in tool description.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 43 | <=2025-11-25 | v2 |
Single tool with narrow scope limits composition. No complementary tools for XML generation, schema discovery, or batch validation. Agents cannot build multi-step workflows.