/ Directorio / Playground / coolify-mcp
● Comunidad StuMason ⚡ Instantáneo

coolify-mcp

por StuMason · StuMason/coolify-mcp

Ops your self-hosted Coolify PaaS through chat — deploy apps, spin up databases, tail logs, rotate env vars — with 38 tools tuned to fit small context windows.

Coolify MCP is a TypeScript server that wraps the Coolify API with 38 opinionated, token-efficient tools. Responses are stripped down 90-99% compared to the raw API, so you can actually hold a deploy conversation without context collapse. Great for self-hosters who want ChatOps without the ops.

Por qué usarlo

Características clave

Demo en vivo

Cómo se ve en la práctica

coolify.replay ▶ listo
0/0

Instalar

Elige tu cliente

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "coolify": {
      "command": "npx",
      "args": [
        "-y",
        "coolify-mcp"
      ],
      "_inferred": true
    }
  }
}

Abre Claude Desktop → Settings → Developer → Edit Config. Reinicia después de guardar.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "coolify": {
      "command": "npx",
      "args": [
        "-y",
        "coolify-mcp"
      ],
      "_inferred": true
    }
  }
}

Cursor usa el mismo esquema mcpServers que Claude Desktop. La configuración del proyecto prevalece sobre la global.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "coolify": {
      "command": "npx",
      "args": [
        "-y",
        "coolify-mcp"
      ],
      "_inferred": true
    }
  }
}

Haz clic en el icono MCP Servers de la barra lateral de Cline y luego en "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "coolify": {
      "command": "npx",
      "args": [
        "-y",
        "coolify-mcp"
      ],
      "_inferred": true
    }
  }
}

Mismo formato que Claude Desktop. Reinicia Windsurf para aplicar.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "coolify",
      "command": "npx",
      "args": [
        "-y",
        "coolify-mcp"
      ]
    }
  ]
}

Continue usa un array de objetos de servidor en lugar de un mapa.

~/.config/zed/settings.json
{
  "context_servers": {
    "coolify": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "coolify-mcp"
        ]
      }
    }
  }
}

Añádelo a context_servers. Zed recarga en caliente al guardar.

claude mcp add coolify -- npx -y coolify-mcp

Un solo comando. Verifica con claude mcp list. Quita con claude mcp remove.

Casos de uso

Usos del mundo real: coolify-mcp

Deploy a new app to Coolify from a Git URL by chat

👤 Solo devs, indie hackers self-hosting ⏱ ~10 min beginner

Cuándo usarlo: You have a new side project on GitHub and want it live on your VPS in under 5 minutes without clicking through Coolify's UI.

Requisitos previos
  • Running Coolify instance — coolify.io install script on your VPS
  • COOLIFY_ACCESS_TOKEN — Coolify > Settings > API > Create Token
Flujo
  1. Create the app
    Create a new Coolify app in project 'side-projects' on server 'hetzner-fsn1'. Source: https://github.com/me/my-app. Build pack: Nixpacks. Port: 3000.✓ Copiado
    → App created with a UUID returned
  2. Set env vars
    Set these env vars on the app: DATABASE_URL=..., SESSION_SECRET=..., NODE_ENV=production.✓ Copiado
    → Env vars saved
  3. Deploy and watch logs
    Deploy the app. Tail the build log; tell me when it's healthy or if it crashes.✓ Copiado
    → Live build log + final success/fail verdict

Resultado: A new HTTPS app running on your VPS in ~5 minutes, all from chat.

Errores comunes
  • Forgot to set a domain; Coolify uses an ugly auto-generated one — After deploy, ask: 'Add custom domain app.example.com with HTTPS'. Coolify auto-provisions Let's Encrypt.
Combinar con: github

Spin up a managed Postgres for your new app in one prompt

👤 Full-stack devs ⏱ ~5 min beginner

Cuándo usarlo: Your app needs a DB and you don't want to shell in, docker run, and remember backup cron.

Flujo
  1. Create the database
    Create a Postgres 16 database named 'myapp-prod' in project 'side-projects' with 2GB RAM, daily backups retained 7 days.✓ Copiado
    → Database created, credentials returned
  2. Connect it to your app
    Add the DATABASE_URL for this DB as an env var on app 'my-app', and redeploy.✓ Copiado
    → Env var set + redeploy triggered

Resultado: Managed Postgres with scheduled backups, wired into your app.

Errores comunes
  • Default Postgres accepts connections only from Coolify network — Set Public toggle via the MCP if you need external access — and open only specific IPs
Combinar con: postgres

Diagnose and recover from a production app crash from your phone

👤 Solo ops, small teams ⏱ ~10 min intermediate

Cuándo usarlo: Your app is down and you're away from your desk. You have Claude on your phone and your Coolify token.

Flujo
  1. Check health
    Show me the status of all apps in project 'prod'. Anything unhealthy?✓ Copiado
    → Per-app status list with reds flagged
  2. Look at logs
    Tail the last 200 lines of app 'api-server'. What's the error?✓ Copiado
    → Log excerpt + probable cause
  3. Roll back or restart
    Restart the app. If it crashes again within 2 minutes, redeploy the previous commit.✓ Copiado
    → Restart issued; state monitored

Resultado: Recovered service without needing a laptop.

Errores comunes
  • Restart won't fix a bad deploy — you'll just loop — Tell Claude to look at deploy history and roll back to the last healthy commit if restart doesn't help
Combinar con: sentry

Rotate a shared secret across every app in a project

👤 Small DevOps teams ⏱ ~10 min intermediate

Cuándo usarlo: You rotated an API key (Stripe, Sentry DSN, etc.) and 6 apps all reference it.

Flujo
  1. List affected apps
    In project 'prod', list all apps that have the env var 'STRIPE_SECRET_KEY'.✓ Copiado
    → List of matching apps
  2. Bulk update and redeploy
    Update STRIPE_SECRET_KEY to [new value] on all those apps, then trigger redeploy for each with a 30-second stagger.✓ Copiado
    → Per-app update + redeploy report

Resultado: Fleet-wide secret rotation in one conversation.

Errores comunes
  • Staggered redeploy still causes brief downtime — If zero-downtime required, use Coolify's rolling deploy mode per app

Combinaciones

Combínalo con otros MCPs para multiplicar por 10

coolify + github

When a new repo is ready, deploy it to Coolify and comment the URL back on the PR

Take repo me/new-project. Deploy it to Coolify under project 'preview', then comment the preview URL on the main branch README.✓ Copiado
coolify + sentry

When Sentry shows a spike on a Coolify-hosted app, redeploy the previous version

If Sentry issue count for app 'api-server' doubles in 10 min, roll back the Coolify deploy to previous commit.✓ Copiado

Herramientas

Lo que expone este MCP

HerramientaEntradasCuándo llamarCoste
list_servers Discover attached servers before creating resources 1 API call
list_applications project_uuid?: str Find existing apps; scope to a project for less noise 1 API call
create_application source, server, project, build_pack, port, ... Spin up a new app from Git 1 API call
deploy_application app_uuid: str Kick off a deploy; returns immediately, poll status 1 API call + build time
get_application_logs app_uuid, tail?: int Debug a running or failing app 1 API call
update_env_variable app_uuid, key, value, is_preview?: bool Change an env var; does not auto-redeploy 1 API call
create_database engine, name, project, server, config Provision a new managed DB (Postgres, MySQL, Redis, MongoDB, etc.) 1 API call
search_docs query: str Look up Coolify feature usage without leaving the chat free

Coste y límites

Lo que cuesta ejecutarlo

Cuota de API
Bounded by Coolify instance — no formal rate limit, but keep calls sane
Tokens por llamada
List calls ~500-2000 tokens (optimized); detail calls ~200-1000
Monetario
Free, MIT. Coolify itself is free & self-hosted.
Consejo
Use search_docs before guessing — it's cheaper than Claude trial-and-error-ing a feature it's unsure about.

Seguridad

Permisos, secretos, alcance

Ámbitos mínimos: A Coolify API token scoped to the team you want to manage
Almacenamiento de credenciales: COOLIFY_ACCESS_TOKEN env var on the machine running MCP client
Salida de datos: Direct to your Coolify instance; your Coolify handles everything else
No conceder nunca: Share the token — it's equivalent to full control of your PaaS

Resolución de problemas

Errores comunes y soluciones

401 Unauthorized

Token invalid or expired. Regenerate in Coolify > Settings > API and update the env var.

Verificar: curl -H 'Authorization: Bearer $TOKEN' $COOLIFY_URL/api/v1/servers
Deploy stuck in 'queued'

Check if the Coolify server has free CPU/disk. Also confirm the build queue isn't blocked by a previous hung deploy.

Verificar: Use `list_deployments` tool and cancel stale ones
create_application returns 422 build_pack invalid

Valid values are: nixpacks, static, dockerfile, dockercompose. Case sensitive.

Custom domain shows cert error

DNS must point to the Coolify server before TLS can be issued. Verify A record, then ask Claude to trigger the LE issuance retry.

Verificar: dig app.example.com

Alternativas

coolify-mcp vs otros

AlternativaCuándo usarlaContrapartida
Dokploy MCPYou're on Dokploy instead of CoolifySimilar feature set; Dokploy is the closest competitor
Caprover / Dokku CLI via ssh-managerYou use Caprover or Dokku and don't have a dedicated MCPDrive via SSH commands; less ergonomic but works anywhere

Más

Recursos

📖 Lee el README oficial en GitHub

🐙 Ver issues abiertas

🔍 Ver todos los 400+ servidores MCP y Skills