Infrastructure Operations Center with AI — a Streamlit-based application for managing infrastructure devices and executing operations via MCP tools (SSH, HTTP, Python scripts). Supports Linux, ESXi, Router, Switch, Deco, Commvault, and Windows servers with dynamic tool management.
Server has 7 tools with significant definition gaps. Tool names lack action verbs (linux_ops, esxi_ops, router_ops, switch_ops, deco_ops, commvault_ops, windows_ops are all noun-based or generic). Descriptions vary widely: linux_ops, esxi_ops, router_ops, switch_ops, deco_ops are 50-150 chars (acceptable); commvault_ops is 600+ chars (verbose, token-wasteful); windows_ops is 150 chars. Most critically, parameter descriptions are minimal or absent. linux_ops and windows_ops accept 'command' and 'target_host' with only 1-2 sentence descriptions. esxi_ops, router_ops, switch_ops, deco_ops accept generic 'command' or 'action' params with no format guidance, enum constraints, or examples of valid values. commvault_ops is the exception, it has detailed parameter docs and multiple execution modes, but it's also the most complex and hardest to use correctly. No output schemas are documented for any tool. No error handling guidance. No pagination support despite tools that could return large result sets (commvault list actions). Security: linux_ops and windows_ops run arbitrary commands on all servers if target_host is omitted, dangerous default behavior with no confirmation step.
Performs operations on the Commvault backup system via REST API. Three modes: 1) Curated actions (recommended): list/run backups, restore, job control, plans, subclients, users, etc. Pass a natural-language phrase like 'list active jobs' or 'restore subclient #15 in-place'. 2) search_api: find an endpoint from indexed Commvault API docs. Pass action='search_api', query='your question'. Useful when no curated action covers what you need. 3) raw: direct REST call once you know the path. Pass action='raw', method='GET|POST|PUT|DELETE', path='/Endpoint/123', body={...}. POST/PUT/DELETE require allow_destructive=true. Use action='list_actions' to see every curated action available.
Makes web API requests on TP-Link Deco Mesh Wi-Fi system. List connected devices, node status, enable/disable guest network, Wi-Fi settings, firmware info and more.
Runs SSH (esxcli) commands on VMware ESXi.
Runs SSH (Bash) commands on registered Linux (Ubuntu) servers. If 'target_host' is specified, runs ONLY on that server (IP or hostname). If not specified, runs on ALL registered Linux servers. If the command is specific to a certain server, always specify 'target_host'.
Tool names lack action verbs. All 7 tools use noun-based names (linux_ops, esxi_ops, router_ops, switch_ops, deco_ops, commvault_ops, windows_ops) instead of verb_noun pattern (e.g., run_linux_command, execute_esxi_command). LLMs rely on verb-first names to infer intent before reading descriptions.
Parameter descriptions are minimal or absent. linux_ops, esxi_ops, router_ops, switch_ops, deco_ops accept 'command' or 'action' params with only 1-2 sentence descriptions and no format constraints, enums, or examples of valid values. LLMs cannot infer what commands are valid or how to structure them.
No output schemas documented. None of the 7 tools document what fields they return, what types those fields are, or what the LLM should expect. This forces LLMs to guess at response structure and breaks downstream tool chaining.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 29 | 2026-07-28+ | v2 |
Performs SSH network analysis (ping, route) on TP-Link ER605 Router.
Makes web interface requests on TP-Link TL-SG1016PE Switch. Can retrieve port status, PoE settings, VLAN information, statistics. Use commands like 'check port status', 'get PoE info', etc.
Runs PowerShell commands on registered Windows servers (SSH/OpenSSH). If 'target_host' is specified, runs ONLY on that server (IP or hostname). If not specified, runs on ALL registered Windows servers. If the command is specific to a certain server, always specify 'target_host'.
Dangerous default behavior in linux_ops and windows_ops. If 'target_host' is omitted, the command runs on ALL registered servers simultaneously. No confirmation step, no dry-run mode. An LLM mistake could execute destructive commands across the entire infrastructure.
No error handling guidance. Tools do not document what errors can occur, how to classify them (retryable vs fatal), or what the LLM should do next. A failed SSH connection returns nothing actionable.