ellmos-controlcenter-mcp
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ONEDRIVE | No | Used to derive the default MCP repository root if set. | |
| ELLMOS_MCP_ROOT | No | Overrides the default MCP repository root. | |
| ELLMOS_SKILLS_ROOT | No | Overrides the deployed skills directory (default: ~/.claude/skills). | |
| ELLMOS_STACKS_ROOT | No | Overrides the stack catalog root (default: local .AI/.STACKS). | |
| ELLMOS_PLUGINS_ROOT | No | Overrides the plugins directory (default: ~/.claude/plugins). | |
| ELLMOS_PROFILE_ROOT | No | Overrides the profile directory (default: ~/.claude/profiles). | |
| ELLMOS_BUNDLE_CONFIG | No | Overrides the capability bundle definition file. | |
| ELLMOS_POLICY_CONFIG | No | Overrides the profile audit policy rule file. | |
| CONTROLCENTER_LANGUAGE | No | Sets the initial output language. | |
| ELLMOS_LAUNCH_TEMPLATE | No | Overrides the generated profile-switch launch command. Use {config} as placeholder for the generated MCP config path. | |
| ELLMOS_CONTROLCENTER_LANGUAGE | No | Alternative to CONTROLCENTER_LANGUAGE for setting the initial output language. |
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": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| controlcenter_get_languageA | Zeigt die aktuelle ControlCenter-Ausgabesprache und die unterstützten Sprachcodes. |
| controlcenter_set_languageA | Setzt die ControlCenter-Ausgabesprache für diese laufende MCP-Serverinstanz. |
| controlcenter_statusA | Zeigt einen Überblick über den lokalen MCP-Stack, lokale Server und Claude-Profile. |
| controlcenter_actual_self_receiptA | Prüft diesen ControlCenter-Server nativ und rein lesend per list_tools und erzeugt ein kurzlebiges Ed25519-signiertes Actual-Self-Receipt. Erfordert eine explizite hostlokale Konfiguration und bricht andernfalls sicher ab. |
| controlcenter_list_local_serversA | Scannt den lokalen MCP-Root und listet gefundene MCP-Repos mit Metadaten auf. |
| controlcenter_describe_mcpB | Beschreibt einen lokalen MCP-Server aus mcps.catalog.v1.json: Art, Namensraum, Zustandshoheit, Umhüllung und Komposition. |
| controlcenter_list_stacksA | Liest den neutralen Stack-Katalog und seine ellmos.stack.v2-Manifeste, ohne Stack-Komponenten auszuführen. |
| controlcenter_describe_stackA | Zeigt typisierte Komponenten, Pflichtrollen, Policies und Validierungswarnungen für einen registrierten Stack. |
| controlcenter_context_packA | Erstellt ein kompaktes, rein lesendes Kontextpaket aus einem registrierten Stack-Manifest. Es führt keine Komponenten aus und liest weder Geheimnisse noch Live-Zustände. |
| controlcenter_list_toolsA | Startet lokale oder profildefinierte MCP-Server kontrolliert und liest deren echte Tool-Liste per MCP list_tools aus. |
| controlcenter_find_capabilityB | Bewertet Native-Binding-Behauptungen einer hash-konsistenten System-Explorer-Auflösung. Die Herkunft bleibt unverifiziert; Ergebnisse sind beratend, rein lesend und autorisieren niemals eine Ausführung. |
| controlcenter_tool_overviewB | Zeigt Native-Binding-Behauptungen einer selbstkonsistenten Auflösung und trennt deklarierte, installierte, konfigurierte, laufende, gesunde und beobachtete Zustände. |
| controlcenter_assign_tool_bundlesB | Ordnet echte MCP-Tools anhand ihrer Metadaten den ControlCenter-Capability-Bundles zu. |
| controlcenter_list_bundlesB | Gruppiert lokale MCP-Server in Aufgaben-Bundles wie Software, Filesystem, Automation und Control Plane. |
| controlcenter_suggest_bundlesA | Empfiehlt passende Capability-Bundles für eine Aufgabenbeschreibung. |
| controlcenter_list_profilesA | Liest die lokalen Claude-Profile und zeigt Serveranzahl, Vererbung und Dateipfade. |
| controlcenter_suggest_profileA | Empfiehlt ein Claude-Profil anhand der Aufgabenbeschreibung. |
| controlcenter_resolve_profileA | Löst ein Claude-Profil inklusive optionaler Vererbung auf und zeigt die resultierenden MCP-Server. |
| controlcenter_switch_profileA | Bereitet einen Profilwechsel vor, indem ein aufgelöstes --mcp-config-File erzeugt oder als Vorschau angezeigt wird. |
| controlcenter_audit_profileA | Prüft ein aufgelöstes Claude-Profil auf erste Policy-Hinweise wie npx-Starts, Env-Secrets und ungültige Server-Konfigurationen. |
| controlcenter_build_catalogC | Erzeugt einen JSON-Katalog der lokal gefundenen MCP-Server. |
| controlcenter_list_skillsA | Inventarisiert installierte Claude Code Skills aus dem deployte Skills-Ordner und der Quell-Skill-Bibliothek. |
| controlcenter_find_skillA | Erkennt, welche Skills zu einer Aufgabe bzw. einem Intent passen. WICHTIG: mit Stichwörtern/Fachbegriffen abfragen, nicht mit ganzen Sätzen — die Suche ist rein lexikalisch, ganze Sätze werden (noch) nicht semantisch verstanden und ziehen über Füllwörter Fehltreffer an. Bewertet den gescannten Skill-Katalog lexikalisch über Name, Aliases, Tags, Kategorie und Beschreibung und gibt die besten Kandidaten mit den getroffenen Begriffen zurück. Scores sind nur innerhalb einer Abfrage vergleichbar, nicht zwischen Abfragen. |
| controlcenter_resolve_semantic_routeD | Validates a caller-selected semantic role/expert/persona against a provider-neutral routing map, then verifies explicit endpoints against the current skill inventory. Semantic selection remains with the caller LLM or user; fuzzy candidates are never promoted automatically and this tool grants no execution authority. |
| controlcenter_list_pluginsA | Inventarisiert installierte Claude Code Plugins und lokale ellmos-Module mit ihren Fähigkeiten. |
| controlcenter_list_locksA | Lists every active LOCK*.txt across the configured roots: path, type, scope, owner and remaining time. Read-only — it never creates, renews or releases a lock. A full scan over cloud-synced storage takes minutes, so the scan runs under a wall-clock budget and reports explicitly when roots were left unscanned; an incomplete scan says nothing about the roots it never reached. Requires ELLMOS_LOCK_SCRIPTS; without it the tool is inert. For a single path use controlcenter_check_lock, which is far faster and also sees inherited locks. |
| controlcenter_check_lockA | Answers whether one path may be modified, counting locks inherited from any parent directory — a LOCK.txt in a parent locks everything beneath it. Reports the effective lock with its type, scope and expiry: LOCK.user.* and LOCK.condition.* never expire on time. Read-only. Fails closed: if the path is unreadable, the configuration is missing or the check errors, the verdict is 'unknown' and safe-to-proceed is false — it never reports a path as free on a guess. |
| controlcenter_evaluate_permissionA | Reports what a LOCK.permissions register allows an agent to do at a path, using the nearest register found in the path or any parent, with precedence deny > ask > allow > default. This is a report, not enforcement: it grants no authority and blocks nothing. If no register exists anywhere up the chain, the answer is 'unknown' rather than 'allow' — the absence of a rule is not a permission. |
| controlcenter_list_decisionsA | Lists pending decisions from the host's decision register — identifier, date, title, status and scope only. Question texts, options and recommendations are deliberately not returned; read those in the register itself. Read-only: it cannot answer or close a decision. Reports when its index is older than the source files, and when the register is unconfigured it says so rather than reporting zero open decisions. |
| controlcenter_list_governanceA | Returns one read-only, allowlist-only metadata view across the host decision index, the existing ellmos.plans-register/1 plan index and an explicitly configured ellmos.policy-registry.v1 registry. Each source is reported as available, unconfigured, unreadable or invalid; partial results never claim completeness, while a valid registry with zero BYUM candidates reports an honest zero. Registry data is loaded only through the canonical PolicyRegistry.load() API. Plan paths, notes and host variants are not projected. BYUM rows remain pending advisory pointers: this tool never dereferences content, adopts a candidate, writes a register or grants execution authority. |
| controlcenter_list_resourcesA | Lists rows from the host's resource inventory (systems and/or installed software), optionally filtered by host and/or type. Read-only mirror of the ControlRoom programme's resource register (.SYNC/_inventory/inventory.db) -- authority sits with that register and the source-resolver 'resources.inventory' role, not with this tool. Summary columns only; use controlcenter_describe_resource for the full row. When unconfigured it says so rather than reporting an empty inventory. |
| controlcenter_describe_resourceA | Full row detail for one resource (a system or an installed software entry), addressed by its numeric inventory id (from controlcenter_list_resources). Read-only mirror, same register as controlcenter_list_resources -- see that tool's description for the authority note. |
| controlcenter_list_available_toolsA | Lists the tools of MCP servers that this host has NOT loaded, without loading them. Starts each server, reads its real list_tools output and shuts it down again. Fail-closed: a server that cannot be asked is reported as unreachable with an unknown tool count — never as a server without tools — and the summary states whether the result is complete. Scope is the local MCP root, or a named profile when 'profile' is set. Not required before controlcenter_invoke: call that one directly when the tool name is already known. |
| controlcenter_invokeA | Runs one tool of a backend MCP server that is not part of the current session, and returns its result. The connection is opened for the call and closed afterwards, so no server process is left running. Only servers discoverable from the configured MCP root or the named profile can be addressed; data/gateway-policy.json can deny tools on top of that, and a malformed policy refuses every call. Distinguishes unknown server, unreachable server, unknown tool and a tool error reported by the target — a target error means the call did arrive. On an unknown tool name the available tool names are returned, so a wrong guess self-corrects in one step. Every call is appended to an audit log with argument names only, never argument values. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |