Skip to main content
Glama

Control Environment

cycle_control_environment
DestructiveIdempotent

Start or stop a Cycle environment. Starting brings up the environment's service containers: discovery (the environment's private DNS), scheduler, and — only once the environment has a public container — the load balancer. Containers in an environment cannot resolve each other by hostname until discovery is running — start the environment BEFORE deploying or setting up multi-container applications in it. Starting an already-live environment is safe and restarts any stopped services. Each service is itself a container and can be started or restarted individually with cycle_control_container using its container id.

Stopping an environment stops its services AND every container in it — treat it as highly disruptive.

Both actions are mutations: confirm with the user before calling. Waits up to wait_seconds for the job and returns the environment's state.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionNoLifecycle action. stop halts the environment's services and every container in it.start
contextNoWhy are you calling this tool? Briefly describe the user's goal.
environmentYesEnvironment to act on.
wait_secondsNoMax seconds to wait for the job to complete. 0 returns immediately after the job is accepted.
conversation_idNoConversation tracking id. Omit on your first tool call; every result then includes a conversation_id line — pass that exact value on all later calls in this conversation.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Goes well beyond the annotations: it enumerates exactly what starting provisions (discovery/DNS, scheduler, conditional load balancer), what stopping destroys (services AND every container), that re-starting a live environment is safe and restarts stopped services, and that the call blocks up to wait_seconds and returns the environment state. Annotations only give the generic destructive/idempotent/openWorld flags.

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?

Well front-loaded: what it does, then ordering guidance, then sibling routing, then the destructiveness warning. Slightly redundant, since 'stopping stops services and every container' largely restates the schema's action description, costing a little efficiency.

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 two-action lifecycle mutation with no output schema, it covers provisioning effects, ordering constraints, destructiveness, sibling alternative, and the confirmation requirement, and it states what is returned. Nothing essential for correct invocation is missing.

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 coverage is 100%, so the baseline is 3. The description adds modest value by clarifying the blast radius of the stop action and that the call waits up to wait_seconds and returns state, but it does not add syntax or format detail beyond what the schema already documents.

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 pair (start/stop) and the resource (Cycle environment), and distinguishes itself from the same-granularity sibling cycle_control_container by explicitly saying per-service control lives there. An agent can tell what this does 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 Guidelines5/5

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

Gives a concrete precondition ('start the environment BEFORE deploying or setting up multi-container applications') and a clear alternative at a different granularity ('Each service... can be started or restarted individually with cycle_control_container using its container id'). It also warns the stop action is highly disruptive, which routes the agent away from casual use.

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.

Resources