Skip to main content
Glama
zackscriven

ghl-mcp-server-v2

by zackscriven

ghl_clientportal_restore_mobile_customization_revision

Restores an earlier mobile app customization revision by saving a copy as the newest revision, so you can revert changes and republish to members.

Instructions

CLIENT PORTAL AI BUILDER API (/ai-builder-api) — side-effecting: opens/edits sandboxes and starts builds. Edit a sandbox only once sandbox.status is ready; checkpoint after edits and before starting the run that builds them; 409 means a cloud build owns the sandbox or it is not running. Return a phone app to an earlier revision. Saves a copy of the earlier revision, screens included, as the newest one. Members get it once you publish it with POST .../app-config/publish. Endpoint: POST /ai-builder-api/projects/{projectId}/app-config/revisions/{revision}/restore (Version header: v3; source: v3/clientportal-ai-v3.json) OAuth scopes: clientportal-ai.write

Input Schema

NameRequiredDescriptionDefault
bodyYesRequest body (schema carried verbatim from the official OpenAPI spec).
revisionYesThe earlier revision to return to, from the app's revisions.
projectIdYesThe app's id.
Idempotency-KeyYesA key you choose for this restore. Retrying with the same key returns the same restore instead of a second one.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.1.0

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false and destructiveHint=false; the description adds genuinely useful behavior beyond them: the restore does not overwrite history (it saves a copy as the newest revision), it is invisible to members until published, and it requires the clientportal-ai.write scope. The misleading sandbox/checkpoint preamble slightly dilutes the value but does not contradict the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The actual purpose and publish-gating behavior are compact and well worded, but the tool leads with a multi-clause API-level preamble about sandboxes, builds, checkpoints and 409s that is irrelevant to a revision restore and delays the core statement.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation endpoint with full annotation coverage and complete schema descriptions, the description covers the mutation's effect, the publish gate, the auth scope and the endpoint. The main omission is that with no output schema it says nothing about what a restore returns (e.g. the new revision id), and the sandbox guidance is noise rather than help.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so projectId, revision, baseRevision and Idempotency-Key are all documented in the schema, including the optimistic-concurrency meaning of baseRevision. The description adds no parameter-level detail beyond that, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The second line states a specific verb and resource: 'Return a phone app to an earlier revision,' and the follow-up clarifies it copies that revision's screens forward as the newest one. This is distinguishable from siblings like list_mobile_customization_revisions and publish_app_customization, though the leading sandbox/build paragraph is generic API boilerplate that does not describe this tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states the downstream condition — members only see the restore after publishing via POST .../app-config/publish — which is real usage context. But it never says when to choose this over siblings (e.g. use list_mobile_customization_revisions to find a valid revision, or get_app_customization to inspect state), and the '409 means a cloud build owns the sandbox' note belongs to sandbox tooling, not this endpoint.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools