selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

coolify-mcp logo

Self-host coolify-mcp

v3.9.0

MCP server to run your Coolify PaaS from an AI assistant

ReleaseOpen SourceMIT
Updated9 hours ago
LanguageTypescript
Setup difficultyEasy
Stars
617
Port
8080 (HTTP-mode server listen port (MCP_PORT), also the /healthz check port)
Requires
Coolify
Install with Docker

What is coolify-mcp?

Should you self-host coolify-mcp?

coolify-mcp scores 51/100 on selfhost.directory (how scoring works) and ranks #14 of 27 in Server Management. It has 617 GitHub stars.

It shipped 22 stable releases in the past year. The latest, v3.9.0, came out on 2 October 2026. New versions land roughly every 2 days.

Setup is easy: most people get it running in one sitting. It is MIT-licensed and written mostly in Typescript.

Its closest alternative on selfhost.directory is Termix (76/100, 15 704 stars). It scores higher overall, so compare the two before you pick. See coolify-mcp vs Termix side by side.

Features

  • Bulk estate operations
  • Configuration Management
  • Deployment control and rollbackImage rollback needs Coolify 4.3 and the image still present on the server.
  • Diagnostics and log reading
  • Doctor diagnostic command
  • Documentation Search
  • Guided workflow prompts
  • Human confirmation for destructive operations
  • MCP resources
  • MCP tool surface for infrastructure management
  • Multi-instance fleet mode
  • Read-Only Mode
  • Remote HTTP transport
  • Resource create and delete
  • Secret masking

coolify-mcp README

How to install coolify-mcp

Install coolify-mcp with Docker

Environment variables
MCP_TRANSPORT, COOLIFY_BASE_URL, COOLIFY_ACCESS_TOKEN, MCP_PUBLIC_URL
  1. + New Resource → Public Repository
    • Repository: https://github.com/StuMason/coolify-mcp
    • Branch: main (HTTP mode ships on main since 3.0.0).
    • Build Pack: Dockerfile
    • Ports Exposes: 8080
  2. Domain: set one, with the https scheme: https://mcp.example.com.
  3. Environment tab, four variables: MCP_TRANSPORT=http, COOLIFY_BASE_URL, COOLIFY_ACCESS_TOKEN, MCP_PUBLIC_URL.
  4. Storages tab: add a volume mounted at /data.
  5. Health check: path /healthz, port 8080.
  6. Deploy.

HTTP mode is opt-in; stdio stays the default. No published container image — the Dockerfile is built from the repo.

How to configure coolify-mcp

  • CF_ACCESS_CLIENT_IDunsetCloudflare Access service token id (pair required)

    Cloudflare Access service token id (pair required)

  • CF_ACCESS_CLIENT_SECRETunsetCloudflare Access service token secret (pair req.)

    Cloudflare Access service token secret (pair req.)

  • COOLIFY_ACCESS_TOKEN
  • COOLIFY_BASE_URL
  • COOLIFY_INSTANCESunsetJSON array of extra instances (fleet mode)

    JSON array of extra instances (fleet mode)

  • COOLIFY_MCP_AUDITon in HTTP mode`off` disables the audit log

    `off` disables the audit log

  • COOLIFY_UI_URLCOOLIFY_BASE_URLDashboard address for `coolify_url` links, when the API URL is internal

    Dashboard address for `coolify_url` links, when the API URL is internal

  • doctorCLI subcommand that verifies config, reachability, token abilities and Coolify version range; takes --json for scripts.

    CLI subcommand that verifies config, reachability, token abilities and Coolify version range; takes --json for scripts.

  • --headerRepeatable CLI arg adding an extra header (e.g. for a generic auth proxy) to every request to Coolify.

    Repeatable CLI arg adding an extra header (e.g. for a generic auth proxy) to every request to Coolify.

  • MCP_ACCESS_TOKEN_TTL3600Access token lifetime, seconds

    Access token lifetime, seconds

  • MCP_ALLOW_INSECURE_HTTPunsetLocal development only: allow a non-https public URL

    Local development only: allow a non-https public URL

  • MCP_CLIENT_IP_HEADERX-Forwarded-ForHeader your proxy sets to the caller's IP, e.g. `cf-connecting-ip`

    Header your proxy sets to the caller's IP, e.g. `cf-connecting-ip`

  • MCP_HOSTall interfacesListen address; `127.0.0.1` keeps it on loopback

    Listen address; `127.0.0.1` keeps it on loopback

  • MCP_OAUTH_STATE_FILE/data/oauth-state.jsonOAuth state persistence; set it outside a container

    OAuth state persistence; set it outside a container

  • MCP_PORT8080Listen port

    Listen port

  • MCP_PUBLIC_URL
  • MCP_READONLYfalseRegister only read-only tools

    Register only read-only tools

  • MCP_REDIRECT_HOSTSunset (any host)Comma-separated hosts clients may redirect to; hardening

    Comma-separated hosts clients may redirect to; hardening

  • MCP_REFRESH_TOKEN_TTL28800Refresh token lifetime, seconds

    Refresh token lifetime, seconds

  • MCP_REQUEST_STATE_KEYgenerated at startupHMAC key for confirmation state (>=32 bytes)

    HMAC key for confirmation state (>=32 bytes)

  • MCP_TRANSPORT

coolify-mcp releases & version history

More in DevOps

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…