Server has 17 tools with basic naming (verb_noun pattern) and descriptions present. However, descriptions are minimal (10-50 chars), parameter descriptions lack detail, and output schemas are not documented. No tool annotations (readOnlyHint/destructiveHint). Error handling exists but is generic. Parameter validation is weak, no enums, ranges, or format constraints visible. Tools like gcloud_set_traffic accept 'revisions' as object without schema definition. No pagination support despite list tools. Follows basic MCP structure but falls short of production quality.
Deploy a Cloud Run service
Get details of a specific Cloud Build build
Get logs for a Cloud Build build
Get details of a Cloud Run job execution
Get details of a specific Cloud Run service
Get logs for a Cloud Run service
Get details of a specific Cloud Build trigger
List artifacts in Artifact Registry
Descriptions are too brief (10-50 chars). Rubric baseline is 194 chars avg; descriptions lack WHEN to use, prerequisites, and return value guidance. LLMs cannot reliably select tools without richer context.
No output schemas documented. Tools return text responses but LLMs need to know field structure (e.g., does list_builds return build_id, status, timestamp?). Prevents downstream tool chaining and forces parsing.
gcloud_set_traffic accepts 'revisions' as object type with no schema definition. LLMs cannot infer the structure (is it {name: percentage}? {revision_id: percentage}?). Requires explicit JSON Schema with properties.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 41 | <=2025-11-25 | v2 |
List Cloud Build builds
List Cloud Run jobs
List Cloud Run service revisions
List secrets in Secret Manager
List Cloud Run services
List Cloud Build triggers
Run a Cloud Build trigger
Set traffic distribution for Cloud Run service revisions
Get current GCP identity and permissions
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Write tools (deploy_service, run_trigger, set_traffic) should declare destructiveHint=true so agents know they have side effects and require confirmation.
List tools lack pagination support (no limit, offset, page_size params). Rubric requires pagination for large result sets. Without it, agents cannot control result size and risk context window exhaustion.