Skip to main content
Glama

build_doctor

Read-only

PREFLIGHT a bundle BEFORE publish/deploy — catches the silent deploy-killers build_validate does NOT: missing #supero-preloader removal (app stuck on a spinner forever), heavy startup seed (Cloud Run port-bind timeout → 'container failed to start'), reserved field names like status/state (silently dropped), namespace collisions (ambiguous reads), and services needing elevated import permission. Run it after build_validate and before build_publish.

Input Schema

NameRequiredDescriptionDefault
filesNoMap of {relative_path: file_content}.
files_refNoFor a LARGE bundle that exceeds the model output-token cap: a file_id from build_stage_bundle (upload the gzip(json {path:content}) blob out-of-band, then pass its file_id here). Preferred over files/files_b64gz when the bundle will not fit inline.
files_b64gzNoAlt to files: base64(gzip(JSON {path:content})).
project_uuidNoTarget project (enables namespace + collision checks).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / required
      Previous value: -[
      -  "files"
      -]New value: +[]
  2. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered; the description adds real value by enumerating the concrete failure classes detected and their downstream symptoms (spinner hang, Cloud Run port-bind timeout, silently dropped reserved fields). It does not disclose the result shape (pass/fail vs. severity-tagged findings) or whether it blocks publish, which keeps it below a 5.

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?

One front-loaded sentence with the action verb first and the ordering constraint last; the failure-mode enumeration is long but each clause carries diagnostic value an agent can act on. Slightly dense as a single run-on, but no filler.

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 read-only analysis tool with full schema coverage and no output schema, the description covers purpose, ordering, and the specific defects detected. The remaining gap is what the caller gets back (findings list, severity, blocking behavior), which is the one thing an agent would still have to discover by invoking.

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 the parameters are already documented, including the files/files_ref/files_b64gz alternatives and project_uuid's role in namespace checks. The description adds no parameter-level guidance 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.

Purpose5/5

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

States a specific verb (PREFLIGHT) and resource (a bundle), plus explicit temporal scope (before publish/deploy). It also names the sibling it complements and differentiates itself, so an agent can distinguish it from build_validate and build_publish without opening any schema.

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?

Gives explicit sequencing: 'Run it after build_validate and before build_publish', and states its distinguishing condition ('catches the silent deploy-killers build_validate does NOT'). The when-to-use and the alternative are both spelled out rather than inferred.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.