UNPKG

@felixallistar/coolify-mcp

Version:

Model Context Protocol server for Coolify API integration

898 lines 384 kB
{ "openapi": "3.1.0", "info": { "title": "Coolify", "version": "0.1" }, "servers": [ { "url": "https:\/\/app.coolify.io\/api\/v1", "description": "Coolify Cloud API. Change the host to your own instance if you are self-hosting." } ], "paths": { "\/applications": { "get": { "tags": [ "Applications" ], "summary": "List", "description": "List all applications.", "operationId": "list-applications", "responses": { "200": { "description": "Get all applications.", "content": { "application\/json": { "schema": { "type": "array", "items": { "$ref": "#\/components\/schemas\/Application" } } } } }, "401": { "$ref": "#\/components\/responses\/401" }, "400": { "$ref": "#\/components\/responses\/400" } }, "security": [ { "bearerAuth": [] } ] } }, "\/applications\/public": { "post": { "tags": [ "Applications" ], "summary": "Create (Public)", "description": "Create new application based on a public git repository.", "operationId": "create-public-application", "requestBody": { "description": "Application object that needs to be created.", "required": true, "content": { "application\/json": { "schema": { "required": [ "project_uuid", "server_uuid", "environment_name", "environment_uuid", "git_repository", "git_branch", "build_pack", "ports_exposes" ], "properties": { "project_uuid": { "type": "string", "description": "The project UUID." }, "server_uuid": { "type": "string", "description": "The server UUID." }, "environment_name": { "type": "string", "description": "The environment name. You need to provide at least one of environment_name or environment_uuid." }, "environment_uuid": { "type": "string", "description": "The environment UUID. You need to provide at least one of environment_name or environment_uuid." }, "git_repository": { "type": "string", "description": "The git repository URL." }, "git_branch": { "type": "string", "description": "The git branch." }, "build_pack": { "type": "string", "enum": [ "nixpacks", "static", "dockerfile", "dockercompose" ], "description": "The build pack type." }, "ports_exposes": { "type": "string", "description": "The ports to expose." }, "destination_uuid": { "type": "string", "description": "The destination UUID." }, "name": { "type": "string", "description": "The application name." }, "description": { "type": "string", "description": "The application description." }, "domains": { "type": "string", "description": "The application domains." }, "git_commit_sha": { "type": "string", "description": "The git commit SHA." }, "docker_registry_image_name": { "type": "string", "description": "The docker registry image name." }, "docker_registry_image_tag": { "type": "string", "description": "The docker registry image tag." }, "is_static": { "type": "boolean", "description": "The flag to indicate if the application is static." }, "static_image": { "type": "string", "enum": [ "nginx:alpine" ], "description": "The static image." }, "install_command": { "type": "string", "description": "The install command." }, "build_command": { "type": "string", "description": "The build command." }, "start_command": { "type": "string", "description": "The start command." }, "ports_mappings": { "type": "string", "description": "The ports mappings." }, "base_directory": { "type": "string", "description": "The base directory for all commands." }, "publish_directory": { "type": "string", "description": "The publish directory." }, "health_check_enabled": { "type": "boolean", "description": "Health check enabled." }, "health_check_path": { "type": "string", "description": "Health check path." }, "health_check_port": { "type": "string", "nullable": true, "description": "Health check port." }, "health_check_host": { "type": "string", "nullable": true, "description": "Health check host." }, "health_check_method": { "type": "string", "description": "Health check method." }, "health_check_return_code": { "type": "integer", "description": "Health check return code." }, "health_check_scheme": { "type": "string", "description": "Health check scheme." }, "health_check_response_text": { "type": "string", "nullable": true, "description": "Health check response text." }, "health_check_interval": { "type": "integer", "description": "Health check interval in seconds." }, "health_check_timeout": { "type": "integer", "description": "Health check timeout in seconds." }, "health_check_retries": { "type": "integer", "description": "Health check retries count." }, "health_check_start_period": { "type": "integer", "description": "Health check start period in seconds." }, "limits_memory": { "type": "string", "description": "Memory limit." }, "limits_memory_swap": { "type": "string", "description": "Memory swap limit." }, "limits_memory_swappiness": { "type": "integer", "description": "Memory swappiness." }, "limits_memory_reservation": { "type": "string", "description": "Memory reservation." }, "limits_cpus": { "type": "string", "description": "CPU limit." }, "limits_cpuset": { "type": "string", "nullable": true, "description": "CPU set." }, "limits_cpu_shares": { "type": "integer", "description": "CPU shares." }, "custom_labels": { "type": "string", "description": "Custom labels." }, "custom_docker_run_options": { "type": "string", "description": "Custom docker run options." }, "post_deployment_command": { "type": "string", "description": "Post deployment command." }, "post_deployment_command_container": { "type": "string", "description": "Post deployment command container." }, "pre_deployment_command": { "type": "string", "description": "Pre deployment command." }, "pre_deployment_command_container": { "type": "string", "description": "Pre deployment command container." }, "manual_webhook_secret_github": { "type": "string", "description": "Manual webhook secret for Github." }, "manual_webhook_secret_gitlab": { "type": "string", "description": "Manual webhook secret for Gitlab." }, "manual_webhook_secret_bitbucket": { "type": "string", "description": "Manual webhook secret for Bitbucket." }, "manual_webhook_secret_gitea": { "type": "string", "description": "Manual webhook secret for Gitea." }, "redirect": { "type": "string", "nullable": true, "description": "How to set redirect with Traefik \/ Caddy. www<->non-www.", "enum": [ "www", "non-www", "both" ] }, "instant_deploy": { "type": "boolean", "description": "The flag to indicate if the application should be deployed instantly." }, "dockerfile": { "type": "string", "description": "The Dockerfile content." }, "docker_compose_location": { "type": "string", "description": "The Docker Compose location." }, "docker_compose_raw": { "type": "string", "description": "The Docker Compose raw content." }, "docker_compose_custom_start_command": { "type": "string", "description": "The Docker Compose custom start command." }, "docker_compose_custom_build_command": { "type": "string", "description": "The Docker Compose custom build command." }, "docker_compose_domains": { "type": "array", "description": "The Docker Compose domains." }, "watch_paths": { "type": "string", "description": "The watch paths." }, "use_build_server": { "type": "boolean", "nullable": true, "description": "Use build server." }, "is_http_basic_auth_enabled": { "type": "boolean", "description": "HTTP Basic Authentication enabled." }, "http_basic_auth_username": { "type": "string", "nullable": true, "description": "Username for HTTP Basic Authentication" }, "http_basic_auth_password": { "type": "string", "nullable": true, "description": "Password for HTTP Basic Authentication" }, "connect_to_docker_network": { "type": "boolean", "description": "The flag to connect the service to the predefined Docker network." } }, "type": "object" } } } }, "responses": { "201": { "description": "Application created successfully.", "content": { "application\/json": { "schema": { "properties": { "uuid": { "type": "string" } }, "type": "object" } } } }, "401": { "$ref": "#\/components\/responses\/401" }, "400": { "$ref": "#\/components\/responses\/400" } }, "security": [ { "bearerAuth": [] } ] } }, "\/applications\/private-github-app": { "post": { "tags": [ "Applications" ], "summary": "Create (Private - GH App)", "description": "Create new application based on a private repository through a Github App.", "operationId": "create-private-github-app-application", "requestBody": { "description": "Application object that needs to be created.", "required": true, "content": { "application\/json": { "schema": { "required": [ "project_uuid", "server_uuid", "environment_name", "environment_uuid", "github_app_uuid", "git_repository", "git_branch", "build_pack", "ports_exposes" ], "properties": { "project_uuid": { "type": "string", "description": "The project UUID." }, "server_uuid": { "type": "string", "description": "The server UUID." }, "environment_name": { "type": "string", "description": "The environment name. You need to provide at least one of environment_name or environment_uuid." }, "environment_uuid": { "type": "string", "description": "The environment UUID. You need to provide at least one of environment_name or environment_uuid." }, "github_app_uuid": { "type": "string", "description": "The Github App UUID." }, "git_repository": { "type": "string", "description": "The git repository URL." }, "git_branch": { "type": "string", "description": "The git branch." }, "ports_exposes": { "type": "string", "description": "The ports to expose." }, "destination_uuid": { "type": "string", "description": "The destination UUID." }, "build_pack": { "type": "string", "enum": [ "nixpacks", "static", "dockerfile", "dockercompose" ], "description": "The build pack type." }, "name": { "type": "string", "description": "The application name." }, "description": { "type": "string", "description": "The application description." }, "domains": { "type": "string", "description": "The application domains." }, "git_commit_sha": { "type": "string", "description": "The git commit SHA." }, "docker_registry_image_name": { "type": "string", "description": "The docker registry image name." }, "docker_registry_image_tag": { "type": "string", "description": "The docker registry image tag." }, "is_static": { "type": "boolean", "description": "The flag to indicate if the application is static." }, "static_image": { "type": "string", "enum": [ "nginx:alpine" ], "description": "The static image." }, "install_command": { "type": "string", "description": "The install command." }, "build_command": { "type": "string", "description": "The build command." }, "start_command": { "type": "string", "description": "The start command." }, "ports_mappings": { "type": "string", "description": "The ports mappings." }, "base_directory": { "type": "string", "description": "The base directory for all commands." }, "publish_directory": { "type": "string", "description": "The publish directory." }, "health_check_enabled": { "type": "boolean", "description": "Health check enabled." }, "health_check_path": { "type": "string", "description": "Health check path." }, "health_check_port": { "type": "string", "nullable": true, "description": "Health check port." }, "health_check_host": { "type": "string", "nullable": true, "description": "Health check host." }, "health_check_method": { "type": "string", "description": "Health check method." }, "health_check_return_code": { "type": "integer", "description": "Health check return code." }, "health_check_scheme": { "type": "string", "description": "Health check scheme." }, "health_check_response_text": { "type": "string", "nullable": true, "description": "Health check response text." }, "health_check_interval": { "type": "integer", "description": "Health check interval in seconds." }, "health_check_timeout": { "type": "integer", "description": "Health check timeout in seconds." }, "health_check_retries": { "type": "integer", "description": "Health check retries count." }, "health_check_start_period": { "type": "integer", "description": "Health check start period in seconds." }, "limits_memory": { "type": "string", "description": "Memory limit." }, "limits_memory_swap": { "type": "string", "description": "Memory swap limit." }, "limits_memory_swappiness": { "type": "integer", "description": "Memory swappiness." }, "limits_memory_reservation": { "type": "string", "description": "Memory reservation." }, "limits_cpus": { "type": "string", "description": "CPU limit." }, "limits_cpuset": { "type": "string", "nullable": true, "description": "CPU set." }, "limits_cpu_shares": { "type": "integer", "description": "CPU shares." }, "custom_labels": { "type": "string", "description": "Custom labels." }, "custom_docker_run_options": { "type": "string", "description": "Custom docker run options." }, "post_deployment_command": { "type": "string", "description": "Post deployment command." }, "post_deployment_command_container": { "type": "string", "description": "Post deployment command container." }, "pre_deployment_command": { "type": "string", "description": "Pre deployment command." }, "pre_deployment_command_container": { "type": "string", "description": "Pre deployment command container." }, "manual_webhook_secret_github": { "type": "string", "description": "Manual webhook secret for Github." }, "manual_webhook_secret_gitlab": { "type": "string", "description": "Manual webhook secret for Gitlab." }, "manual_webhook_secret_bitbucket": { "type": "string", "description": "Manual webhook secret for Bitbucket." }, "manual_webhook_secret_gitea": { "type": "string", "description": "Manual webhook secret for Gitea." }, "redirect": { "type": "string", "nullable": true, "description": "How to set redirect with Traefik \/ Caddy. www<->non-www.", "enum": [ "www", "non-www", "both" ] }, "instant_deploy": { "type": "boolean", "description": "The flag to indicate if the application should be deployed instantly." }, "dockerfile": { "type": "string", "description": "The Dockerfile content." }, "docker_compose_location": { "type": "string", "description": "The Docker Compose location." }, "docker_compose_raw": { "type": "string", "description": "The Docker Compose raw content." }, "docker_compose_custom_start_command": { "type": "string", "description": "The Docker Compose custom start command." }, "docker_compose_custom_build_command": { "type": "string", "description": "The Docker Compose custom build command." }, "docker_compose_domains": { "type": "array", "description": "The Docker Compose domains." }, "watch_paths": { "type": "string", "description": "The watch paths." }, "use_build_server": { "type": "boolean", "nullable": true, "description": "Use build server." }, "is_http_basic_auth_enabled": { "type": "boolean", "description": "HTTP Basic Authentication enabled." }, "http_basic_auth_username": { "type": "string", "nullable": true, "description": "Username for HTTP Basic Authentication" }, "http_basic_auth_password": { "type": "string", "nullable": true, "description": "Password for HTTP Basic Authentication" }, "connect_to_docker_network": { "type": "boolean", "description": "The flag to connect the service to the predefined Docker network." } }, "type": "object" } } } }, "responses": { "201": { "description": "Application created successfully.", "content": { "application\/json": { "schema": { "properties": { "uuid": { "type": "string" } }, "type": "object" } } } }, "401": { "$ref": "#\/components\/responses\/401" }, "400": { "$ref": "#\/components\/responses\/400" } }, "security": [ { "bearerAuth": [] } ] } }, "\/applications\/private-deploy-key": { "post": { "tags": [ "Applications" ], "summary": "Create (Private - Deploy Key)", "description": "Create new application based on a private repository through a Deploy Key.", "operationId": "create-private-deploy-key-application", "requestBody": { "description": "Application object that needs to be created.", "required": true, "content": { "application\/json": { "schema": { "required": [ "project_uuid", "server_uuid", "environment_name", "environment_uuid", "private_key_uuid", "git_repository", "git_branch", "build_pack", "ports_exposes" ], "properties": { "project_uuid": { "type": "string", "description": "The project UUID." }, "server_uuid": { "type": "string", "description": "The server UUID." }, "environment_name": { "type": "string", "description": "The environment name. You need to provide at least one of environment_name or environment_uuid." }, "environment_uuid": { "type": "string", "description": "The environment UUID. You need to provide at least one of environment_name or environment_uuid." }, "private_key_uuid": { "type": "string", "description": "The private key UUID." }, "git_repository": { "type": "string", "description": "The git repository URL." }, "git_branch": { "type": "string", "description": "The git branch." }, "ports_exposes": { "type": "string", "description": "The ports to expose." }, "destination_uuid": { "type": "string", "description": "The destination UUID." }, "build_pack": { "type": "string", "enum": [ "nixpacks", "static", "dockerfile", "dockercompose" ], "description": "The build pack type." }, "name": { "type": "string", "description": "The application name." }, "description": { "type": "string", "description": "The application description." }, "domains": { "type": "string", "description": "The application domains." }, "git_commit_sha": { "type": "string", "description": "The git commit SHA." }, "docker_registry_image_name": { "type": "string", "description": "The docker registry image name." }, "docker_registry_image_tag": { "type": "string", "description": "The docker registry image tag." }, "is_static": { "type": "boolean", "description": "The flag to indicate if the application is static." }, "static_image": { "type": "string", "enum": [ "nginx:alpine" ], "description": "The static image." }, "install_command": { "type": "string", "description": "The install command." }, "build_command": { "type": "string", "description": "The build command." }, "start_command": { "type": "string", "description": "The start command." }, "ports_mappings": { "type": "string", "description": "The ports mappings." }, "base_directory": { "type": "string", "description": "The base directory for all commands." }, "publish_directory": { "type": "string", "description": "The publish directory." }, "health_check_enabled": { "type": "boolean", "description": "Health check enabled." }, "health_check_path": { "type": "string", "description": "Health check path." }, "health_check_port": { "type": "string", "nullable": true, "description": "Health check port." }, "health_check_host": { "type": "string", "nullable": true, "description": "Health check host." }, "healt