Read-only MCP (Model Context Protocol) server for Dell SC Series / Compellent storage arrays via the direct SCOS REST API
Server provides 7 read-only tools with consistent naming (sc_* prefix) and reasonable descriptions (avg 180 chars). However, most tools lack input schemas entirely (5 of 7 have empty {}), and parameter descriptions are minimal. sc_alerts has a proper schema with 2 params, but others expose no configurable inputs. Descriptions are domain-specific and helpful for storage admins, but lack LLM-optimized guidance on when to call each tool vs. alternatives. No error recovery hints, no output schema documentation, and no tool annotations. Follows basic tool pattern but misses composition and schema rigor expected of production tools.
Storage Center alerts (hardware, storage, system). unacknowledged_only: hide alerts someone already acknowledged. category: optional filter - 'Hardware', 'Storage' or 'System'. Returns time, status (Inform/Degraded/Critical/Down), active flag, category, message and originating controller for each alert.
Capacity overview: disk folders (pools) with disk counts, free-space alert thresholds and projected full dates; storage types; provisioned vs actual written data totals across volumes. Use this first for any space/full-pool question.
Controllers and enclosures: status, model, last boot time, memory, indicator LEDs, enclosure firmware/conditions. Combine with sc_alerts (category=Hardware) for battery/FRU issues.
Front-end/back-end controller ports and iSCSI fault domains: status, cabling, IPs, MTU, CHAP. Use for connectivity/network troubleshooting.
Host/server objects: connectivity status, path count, mapped volume count, port types and OS. Look for connectivity != 'Up' or low path counts when troubleshooting host-side issues.
5 of 7 tools have empty input schemas ({}). Per HARD SCORING RULES, tools with no input schema must score 0 on schema dimension. This forces LLMs to guess parameter names and types.
No output schemas documented. LLMs cannot plan downstream calls or extract fields without seeing response structure. Descriptions mention returned fields (e.g. 'name, serial, service tag') but no formal schema.
No error recovery guidance. Tools return JSON errors like {"error": "..."}. LLMs receive no hint whether to retry, ask user, or abort. Missing actionable error messages per pattern:recovery-guide.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2026-07-28+ | v2 |
Array identity and status: name, serial, service tag, model, SCOS version, overall status, operation mode (Normal/Emergency), and whether data progression or RAID rebalance is currently running.
All volumes: name, provisioned size, storage type (pool), folder, mapped/active flags, and last space-reclamation (UNMAP) time.
Descriptions lack LLM-optimized guidance on tool selection. No hints like 'Use this first for space questions' or 'Call after sc_alerts to correlate hardware issues.' Agents must infer when to use each tool.
sc_alerts parameters (unacknowledged_only, category) lack enum constraints. 'category' accepts free-form strings; should be enum: ["Hardware", "Storage", "System"]. Invites hallucinated values.