Create or Update a Cluster
manage_clusterCreate or update a cluster — Cycle's unit of physical isolation, grouping servers that share a private network and can host the same environments. Servers in different clusters share no network, which makes separate clusters the right tool for dev/staging/prod separation. Use list_servers to see existing clusters and what they hold.
Creating a cluster is a hub-level change but provisions no infrastructure and costs nothing on its own; servers are added separately with deploy_servers.
Cycle deliberately returns the same 403 permission error for a cluster that does not exist and for one the credential has no ACL access to, so neither this tool nor any other can tell those apart. That means a create may fail because the cluster already exists out of view — the error will say so, and the fix is access to it, not a second create.
update only changes non_essential; Cycle exposes no rename, and monitoring tiers are configured elsewhere.
Called with no action, this tool just ensures the cluster exists: it creates a missing one, and reports an existing one unchanged (action "none") rather than trying to update it. Pass action explicitly when you specifically mean to create or to modify.
Always call with preview:true first — it validates and reports what would change, touching NOTHING. Get explicit user confirmation, then call again without preview.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | 'create' makes a new cluster, 'update' modifies an existing one (non_essential is the only updatable field). Omit to just ensure the cluster exists: it creates when no cluster with that identifier is visible, and reports the existing one unchanged when there already is one. Pass 'create' explicitly to get an error instead when it already exists. | |
| cluster | Yes | Cluster to create or update: identifier for create, identifier or 24-char hex ID for update. | |
| context | No | Why are you calling this tool? Briefly describe the user's goal. | |
| preview | No | Validate and report what would change without touching anything. Always call with preview:true first, confirm with the user, then call again without it. | |
| non_essential | No | Mark the cluster non-essential, excluding its resources from certain metrics and summaries by default. The only field Cycle allows updating on an existing cluster. | |
| conversation_id | No | Conversation 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. |