Skip to main content
Glama

Plan an agent team

city_plan_team
Read-onlyIdempotent

Dry-run a Team (or Agent) manifest or template against this workspace: returns which agents would be created, updated or left unchanged, plus connections, errors with paths and hints, quota and team_hash. Creates nothing.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
manifestNoA centralcity.agent/v1 manifest (kind Agent or Team). See docs/AGENT_MANIFEST.md; list templates with city_list_templates.
templateNoBuilt-in template reference, for example template:research-team@1.0.0.
parent_agent_idNoOptional existing agent to create under (lineage for cascade revoke). Not available anonymously.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
okYes
modeYes
planYes
team_hashYes
next_actionsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, but the description adds real value: it enumerates the return payload (created/updated/unchanged, connections, errors with paths and hints, quota, team_hash) and reinforces the side-effect-free contract with 'Creates nothing'. It does not, however, mention permission or anonymity constraints that the schema carries.

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?

A single dense sentence, front-loaded with the dry-run action and ending with the strongest constraint ('Creates nothing'). No filler, though the enumerated return list makes it slightly long for one sentence.

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?

With a full output schema, rich annotations, and 100% schema coverage, the description only needs to convey the dry-run contract and return shape, both of which it does. Nothing an agent needs to invoke it correctly is missing.

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 schema already documents manifest, template and parent_agent_id. The description only restates that a manifest or template can be supplied, adding no syntax, precedence (manifest vs template) or format detail beyond the structured fields.

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 and resource ('Dry-run a Team (or Agent) manifest or template against this workspace') and immediately pins down the scope with 'Creates nothing', which distinguishes it from any apply/create sibling. An agent can tell what this tool is without opening the schema.

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?

The dry-run framing ('Creates nothing', returns would-be created/updated/unchanged) implies this is a pre-flight check, but there is no explicit when-to-use or when-not statement and no named alternative (e.g. an apply tool) to route against. city_list_templates is only referenced inside the schema, not in the description.

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.