Coolify

io.github.StuMason由 GitHub 账号 StuMason 发布v3.9.0更新于 Oct 24, 2026

46 optimized tools for managing Coolify infrastructure, diagnostics, and docs search

概览

AI 生成的概览

让助手通过 46 个工具部署、诊断和运维自建 Coolify PaaS 实例的 MCP 服务器。

可以做什么
  • 诊断应用与服务器、扫描整体环境问题、读取容器日志
  • 部署、回滚、启动、停止和重启应用与服务
  • 创建和销毁应用、数据库、服务、项目与环境
  • 管理环境变量、存储、定时任务、备份、标签、私钥与云令牌
  • 执行批量环境变量更新、整项目重新部署、停止全部应用等全局操作
  • 搜索 Coolify 官方文档
适用场景
适合运行一个或多个 Coolify v4 实例、希望助手在支持 stdio 的客户端中完成部署、排障和变更操作的场景,破坏性操作前会请求人工确认。若只是单实例的只读问答,Coolify 自带的服务器更省事。
运行要求
需要运行中的 Coolify v4 实例(已测试 v4.0 至 v4.3)和 Coolify API 令牌,通过 COOLIFY_ACCESS_TOKEN 提供,实例地址放在 COOLIFY_BASE_URL。可用 npx 或 Claude Desktop 扩展本地运行,也可作为容器以 HTTP 模式运行。位于 Cloudflare Access 之后需 CF_ACCESS_CLIENT_ID 与 CF_ACCESS_CLIENT_SECRET;多实例使用 COOLIFY_INSTANCES。
安装前请注意
该令牌可对 Coolify 实例执行部署和写入,应视为机密。工具能创建、销毁、重新部署和停止应用、数据库与服务,包括影响整个环境的批量操作;破坏性调用仅在支持 elicitation 的客户端上请求确认,HTTP 模式下默认拒绝。密钥默认打码,除非明确请求某个具体键。令牌只发送到所配置的实例。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Coolify,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Coolify MCP Server

[npm version] [npm downloads] [CI] [Claude Desktop one-click install] [MCP Registry] [License: MIT] [Sponsor]

Manage Coolify from Claude, Cursor, or any MCP client: 46 tools for deploying, debugging, and operating your self-hosted PaaS in plain English. Destructive operations ask a human first; secrets stay masked.

📖 coolify-mcp.stumason.dev · Tool reference · Prompts and resources · Remote / HTTP mode · Fleet · Doctor · Safety and security · Changelog

Install

You need a running Coolify v4 instance and an API token (Coolify → Keys & Tokens → API tokens). Pick one of three ways to run the server.

Claude Desktop, one-click. Download coolify-mcp.mcpb and drag it into Settings → Extensions. You are prompted for your Coolify URL and token. No Node install, no JSON editing.

Locally, in any MCP client. Claude Code:

bash
claude mcp add coolify \  -e COOLIFY_BASE_URL="https://your-coolify-instance.com" \  -e COOLIFY_ACCESS_TOKEN="your-api-token" \  -- npx @masonator/coolify-mcp@latest

Codex CLI is the same with codex mcp add and --env. For Cursor, Claude Desktop or anything that takes a JSON config:

json
{  "mcpServers": {    "coolify": {      "command": "npx",      "args": ["-y", "@masonator/coolify-mcp"],      "env": {        "COOLIFY_BASE_URL": "https://your-coolify-instance.com",        "COOLIFY_ACCESS_TOKEN": "your-api-token"      }    }  }}

Remotely, as a container inside your Coolify. Deploy the server next to the Coolify it manages and connect claude.ai, Claude Desktop or Claude Code to https://your-domain/mcp. Your Coolify token stays server-side; clients authenticate with OAuth 2.1. Five-minute setup in docs/http-mode.md.

Then run doctor

Whatever you configured, verify it in one command:

bash
COOLIFY_BASE_URL="https://your-coolify-instance.com" COOLIFY_ACCESS_TOKEN="your-api-token" \  npx @masonator/coolify-mcp doctor

It checks the config for the classic traps (unexpanded ${VAR}, pasted whitespace, a doubled /api/v1), that Coolify is reachable and not hidden behind a Cloudflare Access login, that the token is accepted and can deploy, and that your Coolify version is in the tested range. Each failure comes with a one-line fix. Add --json for scripts. It never prints a secret. Every check is described in the doctor guide.

Behind a proxy or Cloudflare Access

Add --header "Key: Value" args (repeatable) for a generic auth proxy. For Cloudflare Access, set CF_ACCESS_CLIENT_ID and CF_ACCESS_CLIENT_SECRET (an Access service token) and every request to Coolify carries them, in both local and remote mode. Setup.

What it does

Every tool takes an action; run one with no arguments and it lists what it accepts. The tool reference has the full table. In short:

  • Work out what is wrong. diagnose_app and diagnose_server take a name, domain, IP or UUID; find_issues scans the estate; logs reads any container.
  • Deploy and roll back. deploy waits for a terminal status and returns the log tail on failure. Start, stop and restart anything with control.
  • Create and destroy. Applications, databases (8 engines), services, projects and environments, with environments verify_app to prove a binding before you mutate it.
  • Handle the configuration. Env vars, storages, scheduled tasks, backups, tags, private keys, GitHub apps, cloud tokens. Secrets come back masked unless you ask for one exact key.
  • Move across the whole estate. bulk_env_update, redeploy_project, stop_all_apps, each behind a human confirmation that states the blast radius.
  • Search the Coolify docs with search_docs.

Lists return uuid/name/status summaries, 90–99% smaller than the raw API; get_* tools fetch one resource in full. The whole tool list costs about 8,900 tokens of context.

Workflows, not just tools

Three prompts ship as slash commands: troubleshoot_application, explain_failed_deploy and estate_health. Pick one and the model walks the workflow with the tools it already has. Two resources, coolify://overview and coolify://application/{uuid}, are reads your client can attach; both go through the same masking as every tool call, and neither offers a way to ask for plaintext. A prompt whose tools are not registered is not listed, so read-only mode never offers a dead end. Prompts and resources.

Several Coolify instances

Set COOLIFY_INSTANCES to a JSON array of { name, url, token } alongside your default config. Every tool then takes an optional instance, list_instances reports what is configured, and every destructive confirmation names the instance it targets. Single-instance installs are byte-identical. A fleet is one trust domain; agencies with a Coolify per client should run one server per client. Fleet guide.

Safe to point at production

Destructive operations stop and ask you, in your own client, before anything happens, on clients that support elicitation (Claude Code, VS Code Copilot). In remote mode the guard fails closed. Secrets are masked at the API boundary, log output is wrapped as untrusted data so a poisoned log line cannot issue instructions, and an eval suite red-teams both claims on every change. Details.

Works against Coolify v4.0 through v4.3. The v4.2 GET-to-POST change and the v4.2 secrets and Member-role restrictions are handled; see compatibility.

Coolify's own MCP server, and when you want this one

Coolify ships an MCP server of its own, built into the product. Enable it in Settings → Advanced (and per team), point your client at https://your-coolify/mcp, and there is nothing to install: it runs inside the instance, so no third-party code ever holds your token. If you run one Coolify, with one team, and you mostly want to ask it questions, use that. It is the shortest path and it costs you nothing.

At the time of writing Coolify documents its server as read-only, with write operations planned. It is moving quickly, so check the Coolify docs for where it has got to. There is also an official CLI if you would rather script than converse.

This server is for the jobs those two do not cover yet.

Coolify's built-in /mcpOfficial CLIThis server
Where it runsInside your CoolifyYour shellYour machine, or a container inside your Coolify
InstallNothingOne binarynpx, a one-click Claude Desktop extension, or a container
TransportStreamable HTTPNot an MCP serverstdio and HTTP, so it also works in clients that only speak stdio
Coolify instancesOneOne context at a timeOne or many; in fleet mode every tool takes an instance
WritesDocumented as read-only todayYesYes
Before a destructive callNot applicableYou typed itStops and asks you in your own client, naming the blast radius, on clients that support elicitation; fails closed in HTTP mode
When something is brokenNot applicableShell exit codesdoctor names the cause and the one-line fix

A rough rule. One instance and read-only questions, with no setup: use Coolify's. Scripting and CI: use the CLI. Several instances, writes you want a human gate in front of, a client that only speaks stdio, or you want to be told why it is broken: this one.

Other third-party Coolify MCP servers exist. Choose on transport, on how many instances you need to reach from one connection, and on what happens the moment before something is deleted.

Example prompts

text
Give me an overview of my infrastructureDiagnose my shop.example.com appFind any issues in my infrastructureDeploy application {uuid} and wait for it to finishUpdate the DATABASE_URL env var for application {uuid}Restart all applications in project {uuid} on instance stagingHow do I fix a 502 Bad Gateway error in Coolify?

Development

bash
git clone https://github.com/StuMason/coolify-mcp.gitcd coolify-mcp && npm installnpm run build && npm test
COOLIFY_BASE_URL="https://your-coolify.com" COOLIFY_ACCESS_TOKEN="token" node dist/index.js

Tool descriptions are prompts, so evals/ measures whether a model picks the right tool and whether attacker-controlled output can make it misbehave; contract snapshots gate every PR. See evals/README.md. Contributions welcome: CONTRIBUTING.md and the architecture and API-gotcha notes in CLAUDE.md.

Work with me

I'm Stu Mason. I build MCP servers, AI integrations and agentic systems for agencies, SMEs and enterprise. This repo is what that work looks like in the open.

  • An MCP server for your product. Give Claude, Cursor and every other AI client a proper way into your API, like this one.
  • Answers from your own stuff. AI that answers from your documents and data, with the receipts, instead of guessing. Can stay on your own servers.
  • Work that runs itself. Jobs on a schedule that sort, check and report, with a person signing off before anything goes out.

White-label under your own name if you're an agency. And if a job doesn't need AI, I'll say so before anyone's paid for anything.

📮 [email protected] · stumason.dev · coolify-mcp.stumason.dev

Privacy Policy

This server collects nothing about you. There is no telemetry, no analytics and no phone-home, and there is no hosted service behind it.

Your Coolify API token goes to the instance you configured and nowhere else. The only other outbound requests are a one-off documentation index refresh from coolify.io, which carries a cache validator and no credentials, and in HTTP mode a credential-free fetch of the connecting client's own metadata document. Tool results go to your own MCP client, whose privacy policy governs what happens next. The audit log writes to your own stderr and never contains token values.

Full detail, including where in the code each claim is implemented, is in PRIVACY.md.

Links

MIT © Stu Mason. If this is useful, ⭐ the repo. If it saved you an evening, sponsor a coffee.

来源:README.md,提交 6c2959b

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

5
  1. v3.9.0最新Oct 2, 2026
  2. v3.8.0Oct 2, 2026
  3. v3.7.0Sep 30, 2026
  4. v3.5.1Sep 16, 2026
  5. v3.5.0Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分