mcpg.cloud tenant CLI: login, publish configs as managed gateways, inspect instances/operations/logs, manage config versions and custom domains. Links cli-core only — not the control-plane server.
mcpg-cloud has 19 tools with clear, action-oriented names (login, publish, delete, rollback) and detailed descriptions (avg ~150 chars). However, critical gaps undermine quality: (1) Input schemas are INFERRED from Clap CLI definitions, not explicitly visible in MCP tool registration code. (2) No output schemas documented anywhere, LLMs cannot predict response structure. (3) Parameters lack type constraints (enums for size, region, isolation_tier are hardcoded in CLI, not exposed to MCP). (4) No error handling guidance, tools return raw HTTP errors without recovery hints. (5) Secrets (Bearer tokens, credentials) are handled server-side (good), but no audit trail or permission gates visible. (6) Tools like 'secret set' accept values via stdin/env, but parameter descriptions don't explain this clearly. (7) No pagination documented for list tools (instances, operations, versions). (8) Composition is reasonable (separate tools for login/logout, publish/rollback/redeploy), but no idempotency guarantees stated.
Tear down an instance, by published NAME or by instance UID (UUID-shaped targets are treated as uids; anything else resolves as a name via the published endpoint).
Diff two published config versions of an instance.
Custom domains: prove DNS ownership of a hostname before publishing with `--custom-hostname` (the CP refuses unverified domains).
Running gateways with their endpoint URLs + instance uids.
Sign in via OIDC PKCE. Stores the resulting tokens + license to `<state_dir>/credentials.json`; every other command attaches them as a Bearer token automatically.
Clear stored credentials.
Output schemas completely undocumented. LLMs cannot predict response structure for any tool (instances, operations, logs, etc.). No field names, types, or pagination hints provided.
Input schemas inferred from CLI Clap definitions, not explicitly registered in MCP tool definitions. Parameter types (e.g., size enum: s|m|l|xl) hardcoded in CLI, not exposed to MCP schema. Violates pattern:constrained-input.
No error handling guidance. Tools return raw HTTP errors without recovery hints (e.g., 'domain not verified' should suggest 'call domains first'). Violates pattern:recovery-guide.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | <=2025-11-25 | v2 |
Show an instance's recent gateway logs (tail snapshot, or stream with --follow).
Recent provisioning operations for the org.
Publish a config → create or update the named instance. Re-publishing the same NAME updates it in place (no duplicate). Streams the phase ladder.
Re-publish the newest config version so the instance adopts the platform's current gateway release. Updates are never automatic — this is the explicit adoption step (`instances` shows when one is available). NOTE: like `rollback`, the deployment parameters below do NOT yet default from the running instance — omitting them resets to these defaults. Pass them explicitly if the instance deviates.
Roll an instance back to a prior config version (re-publishes it in place). NOTE: the deployment parameters below do NOT yet default from the target version's record — omitting them resets to these defaults (e.g. replicas back to 1). Pass them explicitly if the instance deviates.
Secrets: values a gateway's config reads as `${secret.NAME}`. Registered per gateway NAME (before or after its first publish); a running gateway picks up a change within about a minute, a not-yet-published one on its first publish. Never shown again once set.
The registered keys for a gateway (never the values), and whether the gateway runs with exactly that set.
Set (or replace) one value. The value comes from `--value`, from the environment variable named by `--from-env`, or from stdin — never from the command line by accident: KEY alone reads stdin.
Remove one key. A running gateway drops it within about a minute.
Service tokens: non-interactive machine credentials for CI / automation (an `Authorization: Bearer mcpgst_…` that isn't a human's OIDC login).
Set the default org/workspace/env context for every other command (stored in the state dir). With no flags, prints the current context. Flags and MCPG_ORG/MCPG_WORKSPACE/MCPG_ENV still override it.
List the published config versions for an instance.
Who am I: the orgs this login can act on (pass a slug as --org).
Pagination not documented for list tools (instances, operations, versions). No limit, offset, or cursor parameters visible. Large result sets will blow context windows.
Destructive operations (delete, publish, rollback) lack dry-run or confirmation patterns. 'publish --dry-run' exists but not documented in schema. No confirmation_request pattern for delete.