Files

2.3 KiB

name, description
name description
mcphub-deployer Install, update, activate, disable, inspect, or roll back MCP servers in the central CasaDeRoll MCPHub. Use whenever the user provides an MCP URL, package, or GitHub repository.

MCPHub Deployer

Use only the mcphub_admin_* tools. They are the installer. Never use execute_code, a terminal, SSH, Docker, Unraid tools, or edit MCPHub files. Never create another container. Do not inspect or infer credentials.

Choose exactly one install tool

  • Existing HTTP MCP endpoint: mcphub_admin_install_http
  • Published npm package: mcphub_admin_install_npx
  • Published Python package: mcphub_admin_install_uvx
  • GitHub source repository: mcphub_admin_install_git

For a GitHub repository, read only the upstream README and its package manifest to determine these fields:

  • runtime: python or node
  • Python entrypoint: the installed console-script name from pyproject.toml
  • Node entrypoint: the built JavaScript path, or bin:NAME
  • subdirectory: only when the package is inside a monorepo
  • arguments: only documented server arguments
  • required_env: names of required variables, never their values

Then call mcphub_admin_install_git once. It clones, builds, stores, registers, and versions the MCP itself. A successful install is intentionally disabled. Do not reproduce those steps manually.

Activation and proof

  1. Report the exact missing environment key names, if any. The user fills /mnt/nvme-storage/appdata/MCPHub/secrets/<name>.env; never read its values.
  2. Check mcphub_admin_git_status.
  3. Call mcphub_admin_activate_git. It refuses missing credentials, publishes the server to Hermes, reloads it, and returns the live tool list.
  4. Confirm success only when the returned server is connected and has tools. Run at most one harmless read-only tool call if the user requested a test.

For an update, call the same install tool with the new pinned ref, then activate it. The old release remains available. On explicit rollback use mcphub_admin_rollback_git with ROLLBACK:<name>; it returns disabled, so inspect and activate separately. Removal still requires REMOVE:<name>.

If a tool returns an error, report that exact error. Make at most one corrected call for a concrete parameter mistake. Never invent a second deployment path.