Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
MCP server for Coolify API operations.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
COOLIFY_BASE_URL, COOLIFY_TOKEN, COOLIFY_STRICT_VERSION, COOLIFY_ALLOW_WRITE, COOLIFY_ALLOW_UNSAFE_LOGS, COOLIFY_OPENAPI_REFValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"coolify": {
"command": "npx",
"args": [
"-y",
"@fndchagas/coolify-mcp"
],
"env": {
"COOLIFY_BASE_URL": "your-value",
"COOLIFY_TOKEN": "your-value",
"COOLIFY_STRICT_VERSION": "your-value",
"COOLIFY_ALLOW_WRITE": "your-value",
"COOLIFY_ALLOW_UNSAFE_LOGS": "your-value",
"COOLIFY_OPENAPI_REF": "your-value"
}
}
}
}Run this in your terminal
claude mcp add coolify --env COOLIFY_BASE_URL=your-value --env COOLIFY_TOKEN=your-value --env COOLIFY_STRICT_VERSION=your-value --env COOLIFY_ALLOW_WRITE=your-value --env COOLIFY_ALLOW_UNSAFE_LOGS=your-value --env COOLIFY_OPENAPI_REF=your-value -- npx -y @fndchagas/coolify-mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"coolify": {
"command": "npx",
"args": [
"-y",
"@fndchagas/coolify-mcp"
],
"env": {
"COOLIFY_BASE_URL": "your-value",
"COOLIFY_TOKEN": "your-value",
"COOLIFY_STRICT_VERSION": "your-value",
"COOLIFY_ALLOW_WRITE": "your-value",
"COOLIFY_ALLOW_UNSAFE_LOGS": "your-value",
"COOLIFY_OPENAPI_REF": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"coolify": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@fndchagas/coolify-mcp"
],
"env": {
"COOLIFY_BASE_URL": "your-value",
"COOLIFY_TOKEN": "your-value",
"COOLIFY_STRICT_VERSION": "your-value",
"COOLIFY_ALLOW_WRITE": "your-value",
"COOLIFY_ALLOW_UNSAFE_LOGS": "your-value",
"COOLIFY_OPENAPI_REF": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
COOLIFY_STRICT_VERSION envCOOLIFY_ALLOW_WRITE envCOOLIFY_ALLOW_UNSAFE_LOGS envCOOLIFY_OPENAPI_REF envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account frndchagas, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: COOLIFY_BASE_URL, COOLIFY_TOKEN
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (2.3.1) reached the registry 2 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, Signoff
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Five gates that make an agent's 'done' provable: run them, read the verdict, audit the record.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
MCP server for Coolify API - enables full deployment workflows from zero to production.
Targets the Coolify v4.3.10 API. Types and schemas are generated directly from Coolify's official OpenAPI spec, so tool inputs always match what the API actually accepts.
createApplication tool covers public git, GitHub App, Deploy Key, Dockerfile, and Docker Image sources — plus Docker Compose deployments via createService (since Coolify v4.1, compose deployments are services)diagnoseApp finds an app by UUID, name, or domain and aggregates status, recent deployments, failure log tails, runtime logs, and suggested next actionssearchDocs runs full-text search across the official Coolify documentation from a bundled local index — no network neededreadOnlyHint/destructiveHint) so clients can auto-approve reads and gate destructive callsClaude Desktop, one-click: download coolify-mcp.mcpb from the latest release and drag it into Settings → Extensions. You'll be prompted for your Coolify URL and token — no Node install, no JSON editing.
Via npm:
npm install -g @fndchagas/coolify-mcp
npx -y @fndchagas/coolify-mcp
claude mcp add coolify \
--env COOLIFY_BASE_URL="https://coolify.example.com/api/v1" \ --env COOLIFY_TOKEN=" " \ -- npx -y @fndchagas/coolify-mcp
codex mcp add coolify \
--env COOLIFY_BASE_URL="https://coolify.example.com/api/v1" \ --env COOLIFY_TOKEN=" " \ -- npx -y @fndchagas/coolify-mcp
Or edit ~/.codex/config.toml:
[mcp_servers.coolify]
command = "npx" args = ["-y", "@fndchagas/coolify-mcp"] env = { COOLIFY_BASE_URL = "https://coolify.example.com/api/v1", COOLIFY_TOKEN = " " }
~/.mcp.json){
"mcpServers": { "coolify": { "type": "stdio", "command": "npx", "args": ["-y", "@fndchagas/coolify-mcp"], "env": { "COOLIFY_BASE_URL": "https://coolify.example.com/api/v1", "COOLIFY_TOKEN": " ", "COOLIFY_ALLOW_WRITE": "true" } } } }
| Variable | Default | Description |
|---|---|---|
COOLIFY_BASE_URL | required | Coolify API URL (e.g., https://coolify.example.com/api/v1) |
COOLIFY_TOKEN | required | API token from Coolify Settings > API |
COOLIFY_ALLOW_WRITE | true | Enable write operations (create, update, delete, deploy) |
COOLIFY_STRICT_VERSION | false | Fail on API version mismatch |
COOLIFY_MCP_ELICITATION | on | Set to off to skip human confirmation on destructive deletes (escape hatch for clients that advertise elicitation but do not implement it) |
MCP_TRANSPORT | stdio | Transport: stdio, http, both |
PORT | 7331 | HTTP port (when using http transport) |
MCP_HTTP_TOKEN | unset | Bearer token required on /mcp requests (HTTP transport). Setting it also switches the default bind to 0.0.0.0 |
MCP_HTTP_HOST | 127.0.0.1 (0.0.0.0 with token) | Interface the HTTP transport binds to. Binding beyond loopback without a token logs a loud warning |
With this MCP, you can deploy an application from scratch:
1. listProjects / createProject → Get or create a project
| Tool | Description | Write |
|---|---|---|
listProjects | List all projects | |
createProject | Create a new project | ✓ |
updateProject | Update project name/description | ✓ |
deleteProject | Delete a project and all its resources | ✓ |
listEnvironments | List environments in a project | |
createEnvironment | Create a new environment | ✓ |
| Tool | Description | Write |
|---|---|---|
listServers | List all servers | |
getServer | Get server details | |
createServer | Create a new server | ✓ |
validateServer | Validate server connection | |
listPrivateKeys | List SSH private keys | |
createPrivateKey | Create a new SSH key | ✓ |
listGithubApps | List configured GitHub Apps |
| Tool | Description |
|---|---|
listApplications | List all applications (summarized by default) |
getApplication | Get application details (secrets masked by default) |
getLogs | Get application runtime logs |
| Tool | Description | Write |
|---|---|---|
createApplication | Create an application; type selects the source: public, private-github-app, private-deploy-key, dockerfile, or dockerimage. Long-tail fields go in extra and are validated per type. | ✓ |
Docker Compose deployments are created with
createServicepassingdocker_compose_raw— since Coolify v4.1 they are services, not applications.
| Tool | Description | Write |
|---|---|---|
updateApplication | Update application configuration | ✓ |
deleteApplication | Delete an application | ✓ |
startApplication | Start an application | ✓ |
stopApplication | Stop an application | ✓ |
restartApplication | Restart an application | ✓ |
| Tool | Description | Write |
|---|---|---|
applicationEnvs | Manage application env vars: list (masked by default), create, update, upsert by key, bulk_update, delete | ✓ |
Database and service env vars have their own tools:
databaseEnvsandserviceEnvs.
| Tool | Description | Write |
|---|---|---|
deploy | Trigger a deployment; wait: true polls to the terminal status and returns a log tail on failure | ✓ |
diagnoseApp | Diagnose an app by UUID, name, or domain: status, recent deployments, failure log tail, runtime logs, hints | |
diagnoseServer | Diagnose a server by UUID, name, or IP: resource status breakdown, domains, hints | |
listDeployments | List running deployments | |
getDeployment | Get deployment status and logs | |
listAppDeployments | List deployments for an application | |
cancelDeployment | Cancel a running deployment | ✓ |
| Tool | Description | Write |
|---|---|---|
listDatabases | List all databases | |
getDatabase | Get database details | |
createDatabase | Create a database; type selects the engine: postgresql, mysql, mariadb, mongodb, redis, keydb, dragonfly, clickhouse | ✓ |
updateDatabase | Update database configuration | ✓ |
deleteDatabase | Delete a database (volumes/configs deleted by default) | ✓ |
controlDatabase | Start, stop, or restart a database | ✓ |
databaseBackups | Manage backup schedules and executions (list/create/update/delete/list_executions/delete_execution) | ✓ |
databaseEnvs | Manage database env vars (list/create/update/bulk_update/delete) | ✓ |
| Tool | Description | Write |
|---|---|---|
listServices | List services | |
getService | Get service details (secrets masked by default) | |
createService | Create a one-click service or Docker Compose deployment | ✓ |
updateService | Update a service | ✓ |
deleteService | Delete a service | ✓ |
controlService | Start, stop, or restart a service | ✓ |
serviceEnvs | Manage service env vars (list/create/update/bulk_update/delete) | ✓ |
| Tool | Description | Write |
|---|---|---|
storages | Manage persistent volumes and file mounts for applications, databases, and services | ✓ |
scheduledTasks | Manage cron tasks for applications and services, including execution history | ✓ |
deletePreview | Delete a preview deployment by pull request id | ✓ |
| Tool | Description | Write |
|---|---|---|
teams | List teams, get current team, and list members | |
updateServer | Update server configuration | ✓ |
deleteServer | Delete a server | ✓ |
getServerResources | List resources running on a server | |
getServerDomains | List domains configured on a server | |
getPrivateKey | Get SSH key metadata (key material masked by default) | |
updatePrivateKey | Update an SSH private key | ✓ |
deletePrivateKey | Delete an SSH private key | ✓ |
getGithubAppRepositories | List repositories accessible to a GitHub App | |
getGithubAppBranches | List branches of a repository |
| Tool | Description | Write |
|---|---|---|
getInfrastructureOverview | One-call summary of servers, projects, applications (status breakdown), databases, services, and running deployments | |
restartProjectApps | Restart every application in a project or environment (asks for confirmation) | ✓ |
redeployProject | Trigger a deployment for every application in a project or environment (asks for confirmation) | ✓ |
stopAllApplications | Emergency stop of all running applications, optionally per project (asks for confirmation, stating the blast radius) | ✓ |
| Tool | Description |
|---|---|
listResources | List all resources with filtering |
searchDocs | Full-text search across the official Coolify docs (bundled index, no network) |
getHealth | Check that the Coolify API is up |
Disable all write operations:
COOLIFY_ALLOW_WRITE=false
Only the beginning is shown; read the rest in the repo