helm-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HELM_PIN | No | Dashboard PIN (sent as x-pin) | |
| HELM_URL | No | HELM dashboard base URL | http://localhost:7010 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| helm_healthA | Check that the HELM dashboard is reachable. Returns {"status": "ok"}. |
| helm_system_infoA | Get HELM system info: os, runtime version, uptime, service/running counts. |
| helm_exportA | Export the full HELM config (version, services, scripts) as JSON. |
| helm_diagnosticsA | Get host diagnostics: CPU (global + per-core), memory, swap, disks, host uptime, plus a per-managed-process CPU/memory breakdown and HELM's share. |
| helm_list_docsA | List available HELM documentation/FAQ articles as {slug, title}. |
| helm_get_docA | Get one HELM documentation/FAQ article by slug. Returns {slug, title, content}. |
| helm_update_checkA | Check for HELM updates via git: returns {branch, current, latest, behind, ahead, update_available, latest_subject, checked_at}. |
| helm_update_applyA | Pull latest, rebuild backend+frontend and restart HELM. Returns once the detached updater has been launched ({status, script, log}). |
| helm_get_themeA | Get the server-stored dashboard theme: {colors: {token: hex, ...}, activePreset: name|null}, or null if never set. Tokens include accent, bg, surface, surface-hover, surface-raised, border, text, text-muted, success, warning, danger. |
| helm_set_themeA | Set the dashboard theme. |
| helm_get_settingB | Get an arbitrary server-stored setting value by key (JSON), or null. |
| helm_set_settingB | Set an arbitrary server-stored setting. |
| helm_list_servicesA | List all services with their status, pid and metrics. |
| helm_get_serviceA | Get one service by numeric id or by name. |
| helm_start_serviceB | Start a managed service by id or name. Returns {status, pid}. |
| helm_stop_serviceA | Stop a managed service by id or name. |
| helm_restart_serviceB | Restart a managed service by id or name. Returns {status, pid}. |
| helm_service_logsB | Get recent output log entries for a service (default last 100 lines). |
| helm_service_metricsB | Get recent CPU/memory metric snapshots for a service. |
| helm_create_serviceA | Create a service. |
| helm_update_serviceC | Update a service with a partial ServiceUpdate object of fields to change. |
| helm_delete_serviceA | Delete a service by id or name (stops it first if running). |
| helm_list_stacksA | List all stacks with service_count, running_count and aggregate status (running | partial | stopped). |
| helm_get_stackB | Get one stack by numeric id or by name. |
| helm_start_stackA | Start all services in a stack (intra-stack depends_on order; already running members are skipped). Returns {status, services: [{id, name, outcome, error?}]}; status is "partial" if any member failed. |
| helm_stop_stackC | Stop all services in a stack (dependents stop before dependencies). Returns per-service outcomes like helm_start_stack. |
| helm_restart_stackC | Restart all services in a stack (stop pass, then start pass). |
| helm_create_stackB | Create a stack. |
| helm_update_stackC | Update a stack with a partial object: any of name, description, tags. |
| helm_delete_stackA | Delete a stack by id or name. Member services survive, detached (their stack_id becomes null); processes are not touched. |
| helm_list_scriptsA | List all scripts. |
| helm_get_scriptA | Get one script by numeric id or by name. |
| helm_run_scriptA | Run a script by id or name. Returns {run_id, pid, started_at}. |
| helm_run_statusA | Get the status of a script run by run_id (status, exit_code, timestamps). |
| helm_scheduler_next_runsB | Get next scheduled run times for cron-enabled scripts. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 35 tools
All 35 tools have clearly distinct purposes targeting specific resources and actions. There is no overlap between tools for services, stacks, scripts, themes, settings, docs, or system operations.
Tools follow a consistent 'verb_noun' pattern (e.g., helm_create_service, helm_list_docs), with only a few exceptions like helm_service_logs and helm_scheduler_next_runs that lack a verb prefix. The overwhelming majority are predictable.
35 tools is on the higher side but appropriate given the breadth of the domain: services, stacks, scripts, settings, themes, docs, updates, and diagnostics. Each tool earns its place without redundancy.
The tool surface covers CRUD and lifecycle operations for services and stacks, plus scripts and settings. Minor gaps exist: scripts lack create/update/delete, and settings lack a delete tool. Overall, the core workflows are well-supported.