docs: AI_CAPABILITIES.md changelog for MCP v2.4.8 (Coolify :port URL convention)

Made-with: Cursor
This commit is contained in:
2026-04-27 14:52:48 -07:00
parent 1353050110
commit ec70981ba7
2 changed files with 30 additions and 2 deletions

View File

@@ -587,7 +587,7 @@ The MCP descriptor at `GET /api/mcp` reports a semver `version`. Tool names
are append-only within a major version — agents can cache the tool list
safely for the duration of a conversation but should re-fetch on 404.
Current version: **2.4.7**.
Current version: **2.4.8**.
- **1.x** — session-cookie-only MCP, no tenant keys.
- **2.0** — `vibn_sk_…` keys, workspace-scoped Gitea bot + Coolify project.
@@ -684,6 +684,34 @@ Current version: **2.4.7**.
the work was in fact succeeding. Now the SSH command returns within
~50ms, the HTTP response is delivered, and Traefik re-discovers
labels ~3s later.
- **2.4.8** — Massive simplification of post-deploy logic. Coolify's
template engine is fully capable of generating correct Traefik
labels and `SERVICE_FQDN_<APP>` / `SERVICE_URL_<APP>` env vars **if
the URL passed to `setServiceDomains` includes the upstream port**
(the "Required Port" hint in Coolify's UI: `https://crm.example.com:3000`,
not `https://crm.example.com`). 2.4.52.4.7 were missing that
detail, which is why they had to re-write the `.env` and inject
the loadbalancer port label as a workaround.
In 2.4.8 `apps.create` reads `template.port` from the catalog and
passes `https://<fqdn>:<port>` to `setServiceDomains`. Coolify then:
- generates `traefik.http.services.<svc>.loadbalancer.server.port=<port>`
automatically;
- rewrites `.env` so `SERVICE_FQDN_<APP>=<fqdn>` and
`SERVICE_URL_<APP>=https://<fqdn>` (no sslip.io leak);
- keeps `SERVICE_FQDN_<APP>_<PORT>` magic placeholders correctly
pointed at the user's host:port.
All that's left is the one thing Coolify still skips: connecting
`coolify-proxy` to the resource's project Docker network. So
`applyCoolifyPostDeployFixes` is now ~30 lines (down from ~200) and
no longer SSH-runs an embedded Python script inside a
`python:3-alpine` container. The `CoolifyPostDeployResult.steps`
shape gains/keeps `proxyNetwork` + `proxyRestart` only; the old
`envRewrite` / `portLabel` / `recreate` step keys are removed.
`apps.repair` retains its API (`{ uuid, fqdn, publicAppName, port? }`)
but `port` is now informational only (not required for the helper
to function).
---