Coolify
Use this skill when working with Coolify Cloud or a self-hosted Coolify instance.
Before Acting
- Confirm the task affects the intended Coolify instance, project, environment, and resource.
- Prefer read-only discovery first: health, current team, projects, servers, and resources.
- Never print API tokens, private keys, password values, environment variable values, raw secrets, IPs, or credentials unless the user explicitly asks and the task requires it.
- Treat deployments, starts, stops, restarts, deletes, env changes, private key changes, cloud token changes, API enable/disable, MCP enable/disable, server creation, and domain overrides as mutating operations.
- For destructive or broad mutating operations, restate the exact target UUID/name and proceed only when the user's request is already clear.
Connection
Assume the plugin may already have a saved local connection. If a tool reports missing token configuration, expired credentials, or a wrong instance, switch to the coolify-setup skill and help the user connect Coolify. Do not ask the user to paste secrets into chat.
Tooling Strategy
Use MCP tools from the coolify server when available. In Codex tool names this normally appears as the mcp__coolify namespace, with the tool names below:
coolify_health: verify instance health and version.coolify_config_status: check saved connection state without revealing secrets.coolify_list: list common resources.coolify_get: inspect one resource.coolify_lifecycle: start, stop, or restart apps, services, and databases.coolify_deploy: trigger deployments by UUID or tag.coolify_deployment_history: list deployment history for one application or all applications.coolify_application_logs: fetch application logs.coolify_envs: manage environment variables.coolify_openapi_search: find less common endpoint details.coolify_request: call any relative/api/v1endpoint.
For endpoints not covered by named tools, call coolify_openapi_search first, then use coolify_request with the path, query, and body shape from the bundled OpenAPI spec.
If tool_search cannot find mcp__coolify or the named Coolify tools even though the plugin was referenced, switch to the coolify-setup skill. Do not simulate Coolify operations from repo-local scripts for marketplace users. A failed thread may have stale plugin capability metadata, so the recovery path is reinstall/update plus a brand-new top-level thread, not a same-thread retry or fork.
Common Workflows
Instance Inventory
- Run
coolify_health. - Run
coolify_requestfor/teams/current. - List
project,server,resource,application,service, anddatabaseas needed. - If the user asks about deployments they "have" or deployment history, run
coolify_deployment_history; do not rely oncoolify_listwithkind: "deployment"alone. - Summarize names, UUIDs, status, domains, servers, deployment counts, and project/environment relationships.
Deployment
- Identify the exact resource UUID or deployment tag.
- Check current resource status and recent deployments with
coolify_deployment_history. - Run
coolify_deploy. - Poll deployments or fetch application logs if the user wants follow-up.
Environment Variables
- Use
coolify_envswithaction: "list"first. - Keep values redacted by default.
- For creates or updates, use
action: "create",action: "update", oraction: "bulk_update". - Do not delete variables unless the user explicitly requested deletion.
Logs and Troubleshooting
- Inspect the resource and its server.
- Fetch recent application logs with an appropriate line count.
- Check deployments for failed or running jobs.
- Use
coolify_requestfor server validation, domains, backups, scheduled task executions, or specific API endpoints after finding them in OpenAPI.
API Notes
- Coolify API base path is
/api/v1. - Authentication uses
Authorization: Bearer <token>. - Common resource identifiers are UUIDs. Team endpoints use numeric IDs.
/healthmay be available outside/api/v1; the MCP health tool handles both forms.GET /deploymentslists currently running deployments, not all historical deployments.- Historical application deployments live at
GET /deployments/applications/{uuid}. Usecoolify_deployment_historyfor user-facing deployment inventories. GET /deploytriggers deployment by UUID or tag. Coolify also accepts deployment parameters in other forms, but prefer the tool unless OpenAPI lookup says otherwise.- Environment variable list responses can contain sensitive fields. Keep default redaction on unless raw values are required.
Safety Defaults
- Use least-privilege tokens.
- Avoid logging secrets.
- Prefer exact UUIDs over fuzzy names for mutating calls.
- If a domain conflict or force override appears, surface the conflict and ask for confirmation before proceeding.
- If Coolify returns a 401 or 403, explain that the token may be missing, expired, scoped too narrowly, or associated with the wrong team.