Skip to content

v3.8.0

Choose a tag to compare

@github-actions github-actions released this 02 Oct 09:30
· 14 commits to main since this release
efa4c05

What's Changed

Added

  • Rollback (#442, Coolify 4.3+). deployment gains rollback_images (the image tags Coolify can roll an application back to) and deploy gains rollback_to (queue a rollback to one of them; wait: true follows it like any deploy). A tag that is not in a non-empty images list is refused locally with the tags that are; an empty list, or the check itself failing, means Coolify could not inspect the server, so it does not block (only a 404, meaning no rollback on this Coolify, stops it). rollback_images returns at most 20 images and counts the rest. Like deploy, it asks for no confirmation: a rollback is a deploy of an earlier image and is undone by deploying again. On an older Coolify, the 404 now says rollback needs 4.3.
  • coolify_url: dashboard links built, not guessed (#342). Takes a resource type (application, database, service, deployment, server, project, environment, private key) and a uuid, and returns the page in the Coolify dashboard, using the web routes (stable since v4.0.0). Application, database, service and deployment pages need the project and environment uuids, which the API does not put on the resource, so they are looked up once per instance from the project list and cached; a miss rebuilds the index once. get_application offers it as an "Open in Coolify" action. New optional COOLIFY_UI_URL (or ui_url on a COOLIFY_INSTANCES entry) sets the dashboard address when COOLIFY_BASE_URL is internal, as on a server in the Coolify docker network. When the base URL is internal (a single-label host such as coolify) and COOLIFY_UI_URL is unset, the link says it will not open in a browser and the startup check (and so doctor) warns; a COOLIFY_UI_URL that is not a URL fails the startup check. One project the token cannot read no longer breaks every link: its resources miss, and the error names it. 46 tools; the tool list goes from about 8,700 to about 8,900 tokens.

Changed

  • Vendored Coolify OpenAPI spec re-synced with upstream main (#416): 275 → 287 operations. 18 are new (preview update and logs, database imports, SQLite databases, per-server registries, application secret managers, email settings, integration tokens, PATCH /team) and 6 are gone (the server transfer routes). Every route the client calls is still present, and none of them gained a required field.
  • storages host_path is documented as ending at Coolify 4.3.21. Upstream removed host paths in 4.3.22, and the storage endpoints now reject the field with 422. It is kept for older instances; the field's description and docs/tools.md say where it stops.
  • Cache hints on 2026-07-28 list results (#337). Without them the SDK sent ttlMs: 0, telling a client to re-list on every use. The tool, prompt and template lists are fixed for the life of the process and now say five minutes (the revision is stateless, so the TTL is the only bound on a stale list after an upgrade); resources/list names live applications and says a minute; resources/read stays 0. All private. 2025-era responses are unchanged. The interop test now asserts both eras against one HTTP server, including that a pinned 2026-07-28 client gets through server/discover, and a new test pins the tool order as stable.
  • MCP SDK 2.2.0 (#448). Bug fixes only for this server: no stray unhandled rejection when a notification is sent on a closed connection, and a subscriptions/listen stream that honours none of the requested types now ends after its acknowledgement instead of staying open.

📦 View on npm

🖱️ One-click Claude Desktop install: download coolify-mcp.mcpb below and drag it into Settings → Extensions.