coolify-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| COOLIFY_TOKEN | Yes | API token from Coolify Settings > API | |
| COOLIFY_BASE_URL | Yes | Coolify API URL (e.g., https://coolify.example.com/api/v1) | |
| COOLIFY_ALLOW_WRITE | No | Enable write operations (create, update, delete, deploy) | true |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| listResourcesC | List Coolify resources with optional pagination, summary, and filters. |
| listProjectsB | List all Coolify projects. Returns project UUID, name, description, and environments. |
| createProjectB | Create a new Coolify project. Returns the project UUID. |
| listServersB | List all Coolify servers. Returns server UUID, name, IP, user, port, and proxy type. |
| getServerB | Get server details by UUID. |
| listEnvironmentsB | List all environments for a project. Requires the project UUID. |
| createEnvironmentC | Create a new environment in a project. Requires the project UUID. |
| updateProjectB | Update a project's name or description. |
| deleteProjectA | Delete a project by UUID. This will delete all environments and resources in the project. |
| createServerC | Create a new server. Requires a private key UUID for SSH access. |
| validateServerC | Validate server connection and configuration by UUID. |
| listPrivateKeysB | List all SSH private keys. Keys are used for server authentication and deploy keys. |
| createPrivateKeyB | Create a new SSH private key. The private_key field should contain the full PEM-encoded key. |
| listGithubAppsB | List all configured GitHub Apps. Used for private repository access. |
| listApplicationsC | List all Coolify applications. |
| listDatabasesC | List databases with optional pagination and filters. |
| listDeploymentsC | List currently running deployments. |
| listEnvsA | List environment variables for an application (secrets masked by default). |
| listAppDeploymentsA | List deployments for an application with pagination (skip/take). |
| getApplicationB | Get application details by UUID (optional field selection). |
| getDatabaseB | Get database details by UUID. |
| getDeploymentB | Get deployment status and logs by UUID. |
| getLogsC | Fetch runtime logs for an application. |
| createEnvC | Create a new environment variable for an application. |
| upsertEnvC | Create or update an environment variable for an application (by key). |
| updateEnvC | Update an existing environment variable for an application. |
| deleteEnvB | Delete an environment variable from an application by env UUID. |
| deployB | Trigger a deployment for an application by UUID or tag. |
| cancelDeploymentA | Cancel a running deployment by UUID. |
| createPublicApplicationA | Create a new application based on a public git repository. Requires project_uuid, server_uuid, environment_name (or environment_uuid), git_repository, git_branch, build_pack, and ports_exposes. |
| createPrivateGithubAppApplicationB | Create a new application using a private GitHub App. Requires project_uuid, server_uuid, environment_name (or environment_uuid), github_app_uuid, git_repository, git_branch, build_pack, and ports_exposes. |
| createPrivateDeployKeyApplicationA | Create a new application using a private SSH deploy key. Requires project_uuid, server_uuid, environment_name (or environment_uuid), private_key_uuid, git_repository, git_branch, build_pack, and ports_exposes. |
| createDockerfileApplicationA | Create a new application from a Dockerfile. Requires project_uuid, server_uuid, environment_name (or environment_uuid), and dockerfile content. |
| createDockerImageApplicationB | Create a new application from a prebuilt Docker image. Requires project_uuid, server_uuid, environment_name (or environment_uuid), docker_registry_image_name, and ports_exposes. |
| createDockerComposeApplicationC | Create a new application from Docker Compose. Requires project_uuid, server_uuid, environment_name (or environment_uuid), and docker_compose_raw (YAML content). |
| updateApplicationC | Update an application's configuration by UUID. |
| deleteApplicationA | Delete an application by UUID. Optionally delete volumes, configurations, and connected networks. |
| startApplicationB | Start an application by UUID. Optionally force rebuild. |
| stopApplicationC | Stop an application by UUID. |
| restartApplicationB | Restart an application by UUID. |
| listServicesC | List all Coolify services (one-click apps like databases, caches, etc.). |
| createServiceC | Create a new one-click service (database, cache, etc.). Requires type, name, project_uuid, server_uuid, and environment_name. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/frndchagas/coolify-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server