AI-powered DevOps knowledge base with practices, templates, and automation tools
This server provides 7 well-named, read-only tools for DevOps knowledge discovery. Tool names follow verb_noun conventions (get_practice, list_practices, search_practices, render_template). All tools have clear, descriptive names. Input schemas are present and properly typed for all tools. Descriptions are generally adequate (100-200 chars) and explain the purpose clearly. However, several quality gaps prevent a higher score: (1) parameter descriptions lack detail about valid formats, constraints, and error conditions; (2) output schemas are not documented, the LLM cannot see what fields to expect from get_practice or list_practices; (3) error handling is absent, no guidance on what happens if a practice doesn't exist; (4) STDIO transport caps the protocol readiness score at 50, which significantly impacts overall quality for production use. The tools are functionally sound and would work for simple lookups, but lack the depth and robustness expected of production-grade tools.
Get a DevOps practice document by name
Get a brief summary of a practice (first ~500 chars). Lighter than get_practice, good for quick reference.
Get a file template by name
List all available DevOps practices with metadata
List all available file templates
Render a template with variable substitution. Supports ${VAR} format. Auto-provides DATE, TIMESTAMP, USER, YEAR.
Search practices by keyword in name or content
Output schemas are completely undocumented. The source code shows TextContent responses but does not specify what fields (e.g., name, content, metadata) list_practices or get_practice actually return. LLMs cannot plan downstream calls or extract data without knowing the response structure.
Parameter descriptions lack constraint details. The 'name' parameter in get_practice is described as 'Name of the practice' with examples like 'air-gapped-workflow', but the description does not specify valid values, allowed characters, case sensitivity, or how to discover valid names. The 'max_chars' parameter in get_practice_summary has a default but no min/max bounds.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 56 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 41 | - | v1 |
No error handling or recovery guidance. Tools do not document what happens if a practice or template name is not found, if the file is corrupted, or if variable substitution fails. The LLM receives no recovery path, only a bare failure.
STDIO transport used exclusively. The server cannot be accessed remotely or by hosted MCP clients. This is a hard limit for production deployment and cloud integration.
The 'variables' parameter in render_template accepts an arbitrary object but provides no schema for its structure. The description mentions '${VAR} format' and auto-provided variables (DATE, TIMESTAMP, USER, YEAR), but does not document: (1) which variables are auto-provided; (2) whether user variables override auto-provided ones; (3) the date/timestamp format; (4) what happens if a variable is not provided.
list_practices and list_templates have no pagination. If the practice or template directory grows to hundreds of items, the full list is returned without offset/limit support. This can exceed context windows and waste tokens.