Skip to main content
Glama
zackscriven

ghl-mcp-server-v2

by zackscriven

ghl_clientportal_cli_sandbox_register_extension_route

Register, rename, or remove React Native app screens in a sandbox route list; batch changes apply atomically and generate app-extensions/routes.ts from the updates.

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. Register, rename or remove a React Native app's screens. Changes the screen list of a React Native app (react_native_app_kernel_v1) once its screen files are written with POST .../sandbox/edit: app-extensions/routes.ts is generated from these changes, never written as text. Send several changes as one batch: all of them apply or none does, and a resent batch that is already in effect changes nothing (a repeated single add is refused as duplicate_id). The run started next with externalAgent: true checks the screens, saves them as a mobile revision and deploys the preview. Endpoint: POST /ai-builder-api/cli/projects/{projectId}/sandbox/extension-routes (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).
projectIdYesProject identifier.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.1.0

TDQS

A4.8/5.0
Behavior5/5

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

The description adds rich behavioral context beyond the annotations: it is side-effecting, can start builds, returns 409 when a cloud build owns the sandbox, and treats batch changes atomically. It also explains that `app-extensions/routes.ts` is generated rather than written as text.

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

Conciseness4/5

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

The description is dense but largely information-bearing. The actual purpose arrives after a general API/side-effect sentence, so it is not maximally front-loaded, but most sentences add useful operational detail.

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

Completeness5/5

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

For a complex mutation with no output schema, the description supplies the missing operational context: prerequisites, checkpoint timing, batch semantics, 409 behavior, generated route files, and the downstream run behavior. An agent has enough information to call it correctly.

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

Parameters4/5

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

Schema description coverage is 100%, so the schema already documents both `projectId` and the nested `body.action` structure thoroughly. The description still adds meaning by explaining batch atomicity, duplicate handling for repeated single `add`, and how route changes relate to generated screen files.

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

Purpose5/5

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

The description states a specific verb and resource: 'Register, rename or remove a React Native app's screens.' It also identifies the target app kernel and endpoint, making it distinguishable from sibling sandbox editing tools like sandbox_edit.

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

Usage Guidelines5/5

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

It gives explicit sequencing and prerequisites: screen files must first be written with `POST .../sandbox/edit`, and edits should only happen once `sandbox.status` is `ready`. It also instructs to checkpoint after edits and before starting the build run, which is actionable guidance not found in the annotations.

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