SAP HANA and Azure VM management MCP server implemented in TypeScript
Server has 7 tools with basic schemas and descriptions, but significant gaps limit production readiness. All tools have descriptions (10-50 chars, below the 50-200 char baseline for LLM optimization) and input schemas with type definitions. However, parameter descriptions are minimal or missing context. No output schemas documented. Error handling is absent, tools return raw results without recovery guidance. The auth_context parameter (object type, no schema) is a security red flag. Tool names follow verb_noun convention (get_, list_, start_, stop_, restart_) but descriptions lack WHEN/WHY context needed for LLM selection.
Get disk usage information for the SAP HANA system
Get an overview of the SAP HANA system status
Get the status of an Azure VM
List Azure VMs
Restart an Azure VM
Start an Azure VM
Stop an Azure VM
auth_context parameter is an untyped object with no schema. This is a security risk, credentials could be embedded. Use server-side secret injection via environment variables instead.
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields (e.g., vm_id for chaining). Document return types with field names and types.
Tool descriptions are 30-50 characters, well below the 50-200 char baseline. Descriptions lack WHEN to use, prerequisites, and what the tool returns. Expand to explain context and guide LLM selection.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 43 | <=2025-11-25 | v2 |
No error handling or recovery guidance. Tools return raw results without telling LLMs what to do on failure (retry, ask user, abort). Add error classification and actionable messages.
Destructive operations (start_vm, stop_vm, restart_vm) lack confirmation or dry-run support. Agents can accidentally restart production systems. Add a confirm_before_execute pattern.