@jurislm/coolify-plugin 4.0.2 → 4.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.codex-plugin/plugin.json +1 -1
- package/api/manifest.json +9 -3
- package/dist/client.js +19 -4
- package/dist/generated/coolify-api.d.ts +299 -86
- package/dist/generated/coolify-zod.d.ts +11 -11
- package/dist/generated/coolify-zod.js +6 -6
- package/dist/generated/operations.js +57 -57
- package/openapi/coolify-openapi.json +837 -112
- package/package.json +1 -1
- package/plugin.json +1 -1
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
// Generated by scripts/generate-openapi.ts.
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
export const operations = [
|
|
4
|
-
{ name: "coolify_list_applications", method: "GET", path: "/applications", description: "List", inputSchema: z.object({ "tag": z.string().optional() }), responseSchema: z.array(z.object({ "id": z.number().int().describe("The application identifier in the database.").optional(), "description": z.union([z.string().describe("The application description."), z.null()]).optional(), "repository_project_id": z.union([z.number().int().describe("The repository project identifier."), z.null()]).optional(), "uuid": z.string().describe("The application UUID.").optional(), "name": z.string().describe("The application name.").optional(), "fqdn": z.union([z.string().describe("The application domains."), z.null()]).optional(), "noindex_domains": z.union([z.array(z.string()).describe("The subset of the application domains served with an X-Robots-Tag: noindex, nofollow response header."), z.null()]).optional(), "config_hash": z.string().describe("Configuration hash.").optional(), "git_repository": z.string().describe("Git repository URL.").optional(), "git_branch": z.string().describe("Git branch.").optional(), "git_commit_sha": z.string().describe("Git commit SHA.").optional(), "git_full_url": z.union([z.string().describe("Git full URL."), z.null()]).optional(), "docker_registry_image_name": z.union([z.string().describe("Docker registry image name."), z.null()]).optional(), "docker_registry_image_tag": z.union([z.string().describe("Docker registry image tag."), z.null()]).optional(), "build_pack": z.enum(["nixpacks", "railpack", "static", "dockerfile", "dockercompose"]).describe("Build pack.").optional(), "static_image": z.string().describe("Static image used when static site is deployed.").optional(), "install_command": z.union([z.string().describe("Install command."), z.null()]).optional(), "build_command": z.union([z.string().describe("Build command."), z.null()]).optional(), "start_command": z.union([z.string().describe("Start command."), z.null()]).optional(), "ports_exposes": z.string().describe("Ports exposes.").optional(), "ports_mappings": z.union([z.string().describe("Ports mappings."), z.null()]).optional(), "custom_network_aliases": z.union([z.string().describe("Network aliases for Docker container."), z.null()]).optional(), "base_directory": z.string().describe("Base directory for all commands.").optional(), "publish_directory": z.union([z.string().describe("Publish directory."), z.null()]).optional(), "health_check_enabled": z.boolean().describe("Health check enabled.").optional(), "health_check_path": z.string().describe("Health check path.").optional(), "health_check_port": z.union([z.string().describe("Health check port."), z.null()]).optional(), "health_check_host": z.union([z.string().describe("Health check host."), z.null()]).optional(), "health_check_method": z.string().describe("Health check method.").optional(), "health_check_return_code": z.number().int().describe("Health check return code.").optional(), "health_check_scheme": z.string().describe("Health check scheme.").optional(), "health_check_response_text": z.union([z.string().describe("Health check response text."), z.null()]).optional(), "health_check_interval": z.number().int().describe("Health check interval in seconds.").optional(), "health_check_timeout": z.number().int().describe("Health check timeout in seconds.").optional(), "health_check_retries": z.number().int().describe("Health check retries count.").optional(), "health_check_start_period": z.number().int().describe("Health check start period in seconds.").optional(), "health_check_type": z.enum(["http", "cmd"]).describe("Health check type: http or cmd.").optional(), "health_check_command": z.union([z.string().describe("Health check command for CMD type."), z.null()]).optional(), "limits_memory": z.string().describe("Memory limit.").optional(), "limits_memory_swap": z.string().describe("Memory swap limit.").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness.").optional(), "limits_memory_reservation": z.string().describe("Memory reservation.").optional(), "limits_cpus": z.string().describe("CPU limit.").optional(), "limits_cpuset": z.union([z.string().describe("CPU set."), z.null()]).optional(), "limits_cpu_shares": z.number().int().describe("CPU shares.").optional(), "status": z.string().describe("Application status.").optional(), "preview_url_template": z.string().describe("Preview URL template.").optional(), "max_restart_count": z.number().int().describe("Maximum container restart count before stopping.").optional(), "destination_type": z.string().describe("Destination type.").optional(), "destination_id": z.number().int().describe("Destination identifier.").optional(), "source_id": z.union([z.number().int().describe("Source identifier."), z.null()]).optional(), "private_key_id": z.union([z.string().describe("Private key identifier."), z.null()]).optional(), "environment_id": z.number().int().describe("Environment identifier.").optional(), "dockerfile": z.union([z.string().describe("Dockerfile content. Used for dockerfile build pack."), z.null()]).optional(), "dockerfile_location": z.union([z.string().describe("Dockerfile location."), z.null()]).optional(), "custom_labels": z.union([z.string().describe("Custom labels."), z.null()]).optional(), "dockerfile_target_build": z.union([z.string().describe("Dockerfile target build."), z.null()]).optional(), "manual_webhook_secret_github": z.union([z.string().describe("Manual webhook secret for GitHub."), z.null()]).optional(), "manual_webhook_secret_gitlab": z.union([z.string().describe("Manual webhook secret for GitLab."), z.null()]).optional(), "manual_webhook_secret_bitbucket": z.union([z.string().describe("Manual webhook secret for Bitbucket."), z.null()]).optional(), "manual_webhook_secret_gitea": z.union([z.string().describe("Manual webhook secret for Gitea."), z.null()]).optional(), "docker_compose_location": z.string().describe("Docker compose location.").optional(), "docker_compose": z.union([z.string().describe("Docker compose content. Used for docker compose build pack."), z.null()]).optional(), "docker_compose_raw": z.union([z.string().describe("Docker compose raw content."), z.null()]).optional(), "docker_compose_domains": z.union([z.string().describe("Docker compose domains."), z.null()]).optional(), "docker_compose_custom_start_command": z.union([z.string().describe("Docker compose custom start command."), z.null()]).optional(), "docker_compose_custom_build_command": z.union([z.string().describe("Docker compose custom build command."), z.null()]).optional(), "swarm_replicas": z.union([z.number().int().describe("Swarm replicas. Only used for swarm deployments."), z.null()]).optional(), "swarm_placement_constraints": z.union([z.string().describe("Swarm placement constraints. Only used for swarm deployments."), z.null()]).optional(), "custom_docker_run_options": z.union([z.string().describe("Custom docker run options."), z.null()]).optional(), "post_deployment_command": z.union([z.string().describe("Post deployment command."), z.null()]).optional(), "post_deployment_command_container": z.union([z.string().describe("Post deployment command container."), z.null()]).optional(), "pre_deployment_command": z.union([z.string().describe("Pre deployment command."), z.null()]).optional(), "pre_deployment_command_container": z.union([z.string().describe("Pre deployment command container."), z.null()]).optional(), "watch_paths": z.union([z.string().describe("Watch paths."), z.null()]).optional(), "custom_healthcheck_found": z.boolean().describe("Custom healthcheck found.").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("How to set redirect with Traefik / Caddy. www<->non-www."), z.null()]).optional(), "created_at": z.string().datetime({ offset: true }).describe("The date and time when the application was created.").optional(), "updated_at": z.string().datetime({ offset: true }).describe("The date and time when the application was last updated.").optional(), "deleted_at": z.union([z.string().datetime({ offset: true }).describe("The date and time when the application was deleted."), z.null()]).optional(), "compose_parsing_version": z.string().describe("How Coolify parse the compose file.").optional(), "custom_nginx_configuration": z.union([z.string().describe("Custom Nginx configuration base64 encoded."), z.null()]).optional(), "is_http_basic_auth_enabled": z.boolean().describe("HTTP Basic Authentication enabled.").optional(), "http_basic_auth_username": z.union([z.string().describe("Username for HTTP Basic Authentication"), z.null()]).optional(), "http_basic_auth_password": z.union([z.string().describe("Password for HTTP Basic Authentication"), z.null()]).optional(), "settings": z.object({ "is_static": z.boolean().optional(), "is_git_submodules_enabled": z.boolean().optional(), "is_git_lfs_enabled": z.boolean().optional(), "is_auto_deploy_enabled": z.boolean().optional(), "is_force_https_enabled": z.boolean().optional(), "is_debug_enabled": z.boolean().optional(), "is_preview_deployments_enabled": z.boolean().optional(), "is_log_drain_enabled": z.boolean().optional(), "is_gpu_enabled": z.boolean().optional(), "gpu_driver": z.union([z.string(), z.null()]).optional(), "gpu_count": z.union([z.string(), z.null()]).optional(), "gpu_device_ids": z.union([z.string(), z.null()]).optional(), "gpu_options": z.union([z.string(), z.null()]).optional(), "is_include_timestamps": z.boolean().optional(), "is_swarm_only_worker_nodes": z.boolean().optional(), "is_raw_compose_deployment_enabled": z.boolean().optional(), "is_build_server_enabled": z.boolean().optional(), "is_consistent_container_name_enabled": z.boolean().optional(), "is_gzip_enabled": z.boolean().optional(), "is_stripprefix_enabled": z.boolean().optional(), "connect_to_docker_network": z.boolean().optional(), "custom_internal_name": z.union([z.string(), z.null()]).optional(), "is_container_label_escape_enabled": z.boolean().optional(), "is_env_sorting_enabled": z.boolean().optional(), "is_container_label_readonly_enabled": z.boolean().optional(), "is_preserve_repository_enabled": z.boolean().optional(), "disable_build_cache": z.boolean().optional(), "is_spa": z.boolean().optional(), "is_git_shallow_clone_enabled": z.boolean().optional(), "is_pr_deployments_public_enabled": z.boolean().optional(), "use_build_secrets": z.boolean().optional(), "inject_build_args_to_dockerfile": z.boolean().optional(), "include_source_commit_in_build": z.boolean().optional(), "docker_images_to_keep": z.number().int().optional(), "stop_grace_period": z.union([z.number().int(), z.null()]).optional() }).describe("Application settings.").optional() }).describe("Application model")), responseKind: "json", parameters: [{ location: "query", name: "tag" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
5
|
-
{ name: "coolify_create_public_application", method: "POST", path: "/applications/public", description: "Create (Public)", inputSchema: z.object({ body: z.object({ "project_uuid": z.string().describe("The project UUID."), "server_uuid": z.string().describe("The server UUID."), "environment_name": z.string().describe("The environment name. You need to provide at least one of environment_name or environment_uuid."), "environment_uuid": z.string().describe("The environment UUID. You need to provide at least one of environment_name or environment_uuid."), "git_repository": z.string().describe("The git repository URL."), "git_branch": z.string().describe("The git branch."), "build_pack": z.enum(["nixpacks", "railpack", "static", "dockerfile", "dockercompose"]).describe("The build pack type."), "ports_exposes": z.string().describe("The ports to expose.").optional(), "destination_uuid": z.string().describe("The destination UUID.").optional(), "name": z.string().describe("The application name.").optional(), "description": z.string().describe("The application description.").optional(), "domains": z.string().describe("The application URLs in a comma-separated list.").optional(), "noindex_domains": z.array(z.string()).describe("The subset of the application domains served with an X-Robots-Tag: noindex, nofollow response header, keeping them out of search engines. Entries that are not among the application domains are ignored.").optional(), "git_commit_sha": z.string().describe("The git commit SHA.").optional(), "docker_registry_image_name": z.string().describe("The docker registry image name.").optional(), "docker_registry_image_tag": z.string().describe("The docker registry image tag.").optional(), "is_static": z.boolean().describe("The flag to indicate if the application is static.").optional(), "is_spa": z.boolean().describe("The flag to indicate if the application is a single-page application (SPA). Only relevant when is_static is true.").optional(), "is_auto_deploy_enabled": z.boolean().describe("The flag to indicate if auto-deploy is enabled on git push. Defaults to true.").optional(), "is_force_https_enabled": z.boolean().describe("The flag to indicate if HTTPS is forced. Defaults to true.").optional(), "is_preview_deployments_enabled": z.boolean().describe("Enable preview deployments for pull requests.").optional(), "static_image": z.literal("nginx:alpine").describe("The static image.").optional(), "install_command": z.string().describe("The install command.").optional(), "build_command": z.string().describe("The build command.").optional(), "start_command": z.string().describe("The start command.").optional(), "ports_mappings": z.string().describe("The ports mappings.").optional(), "base_directory": z.string().describe("The base directory for all commands.").optional(), "publish_directory": z.string().describe("The publish directory.").optional(), "health_check_enabled": z.boolean().describe("Health check enabled.").optional(), "health_check_path": z.string().describe("Health check path.").optional(), "health_check_port": z.union([z.string().describe("Health check port."), z.null()]).optional(), "health_check_host": z.union([z.string().describe("Health check host."), z.null()]).optional(), "health_check_method": z.string().describe("Health check method.").optional(), "health_check_return_code": z.number().int().describe("Health check return code.").optional(), "health_check_scheme": z.string().describe("Health check scheme.").optional(), "health_check_response_text": z.union([z.string().describe("Health check response text."), z.null()]).optional(), "health_check_interval": z.number().int().describe("Health check interval in seconds.").optional(), "health_check_timeout": z.number().int().describe("Health check timeout in seconds.").optional(), "health_check_retries": z.number().int().describe("Health check retries count.").optional(), "health_check_start_period": z.number().int().describe("Health check start period in seconds.").optional(), "limits_memory": z.string().describe("Memory limit.").optional(), "limits_memory_swap": z.string().describe("Memory swap limit.").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness.").optional(), "limits_memory_reservation": z.string().describe("Memory reservation.").optional(), "limits_cpus": z.string().describe("CPU limit.").optional(), "limits_cpuset": z.union([z.string().describe("CPU set."), z.null()]).optional(), "limits_cpu_shares": z.number().int().describe("CPU shares.").optional(), "custom_labels": z.string().describe("Custom labels.").optional(), "custom_docker_run_options": z.string().describe("Custom docker run options.").optional(), "post_deployment_command": z.string().describe("Post deployment command.").optional(), "post_deployment_command_container": z.string().describe("Post deployment command container.").optional(), "pre_deployment_command": z.string().describe("Pre deployment command.").optional(), "pre_deployment_command_container": z.string().describe("Pre deployment command container.").optional(), "manual_webhook_secret_github": z.string().describe("Manual webhook secret for Github.").optional(), "manual_webhook_secret_gitlab": z.string().describe("Manual webhook secret for Gitlab.").optional(), "manual_webhook_secret_bitbucket": z.string().describe("Manual webhook secret for Bitbucket.").optional(), "manual_webhook_secret_gitea": z.string().describe("Manual webhook secret for Gitea.").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("How to set redirect with Traefik / Caddy. www<->non-www."), z.null()]).optional(), "instant_deploy": z.boolean().describe("The flag to indicate if the application should be deployed instantly.").optional(), "dockerfile": z.string().describe("The Dockerfile content.").optional(), "dockerfile_location": z.string().describe("The Dockerfile location in the repository.").optional(), "docker_compose_location": z.string().describe("The Docker Compose location.").optional(), "docker_compose_custom_start_command": z.string().describe("The Docker Compose custom start command.").optional(), "docker_compose_custom_build_command": z.string().describe("The Docker Compose custom build command.").optional(), "docker_compose_domains": z.array(z.object({ "name": z.string().describe("The service name as defined in docker-compose.").optional(), "domain": z.string().describe("Comma-separated list of URLs (e.g. \"https://app.coolify.io,https://app2.coolify.io\")").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("Per-service www/non-www redirect for this compose service."), z.null()]).optional() })).describe("Array of URLs to be applied to containers of a dockercompose application.").optional(), "watch_paths": z.string().describe("The watch paths.").optional(), "use_build_server": z.union([z.boolean().describe("Use build server."), z.null()]).optional(), "use_build_secrets": z.boolean().describe("Use Docker Build Secrets for build-time environment variables.").default(false), "is_git_submodules_enabled": z.boolean().describe("Clone Git submodules.").optional(), "is_git_lfs_enabled": z.boolean().describe("Enable Git LFS.").optional(), "is_git_shallow_clone_enabled": z.boolean().describe("Use a shallow Git clone.").optional(), "disable_build_cache": z.boolean().describe("Disable the build cache.").optional(), "inject_build_args_to_dockerfile": z.boolean().describe("Inject build arguments into the Dockerfile build.").optional(), "include_source_commit_in_build": z.boolean().describe("Include the source commit in the build.").optional(), "is_env_sorting_enabled": z.boolean().describe("Sort environment variables.").optional(), "is_pr_deployments_public_enabled": z.boolean().describe("Make pull request deployments public.").optional(), "stop_grace_period": z.union([z.number().int().gte(1).lte(3600).describe("Container stop grace period in seconds."), z.null()]).optional(), "docker_images_to_keep": z.number().int().gte(0).lte(100).describe("Number of Docker images to retain.").optional(), "is_gzip_enabled": z.boolean().describe("Enable gzip compression.").optional(), "is_stripprefix_enabled": z.boolean().describe("Enable path prefix stripping.").optional(), "is_raw_compose_deployment_enabled": z.boolean().describe("Deploy the raw Docker Compose definition.").optional(), "is_log_drain_enabled": z.boolean().describe("Enable log drain for the application.").optional(), "is_gpu_enabled": z.boolean().describe("Enable GPU support.").optional(), "gpu_driver": z.union([z.string().describe("GPU driver name."), z.null()]).optional(), "gpu_count": z.union([z.string().describe("Number of GPUs to allocate."), z.null()]).optional(), "gpu_device_ids": z.union([z.string().describe("Comma-separated GPU device IDs."), z.null()]).optional(), "gpu_options": z.union([z.string().describe("Additional GPU options."), z.null()]).optional(), "is_consistent_container_name_enabled": z.boolean().describe("Use a consistent container name across deployments.").optional(), "custom_internal_name": z.union([z.string().describe("Custom internal container name."), z.null()]).optional(), "preview_url_template": z.string().describe("Preview URL template.").optional(), "max_restart_count": z.number().int().gte(0).describe("Maximum container restart count before stopping.").optional(), "is_http_basic_auth_enabled": z.boolean().describe("HTTP Basic Authentication enabled.").optional(), "http_basic_auth_username": z.union([z.string().describe("Username for HTTP Basic Authentication"), z.null()]).optional(), "http_basic_auth_password": z.union([z.string().describe("Password for HTTP Basic Authentication"), z.null()]).optional(), "connect_to_docker_network": z.boolean().describe("The flag to connect the service to the predefined Docker network.").optional(), "force_domain_override": z.boolean().describe("Force domain usage even if conflicts are detected. Default is false.").optional(), "autogenerate_domain": z.boolean().describe("If true and domains is empty, auto-generate a domain using the server's wildcard domain or sslip.io fallback. Default: true.").default(true), "is_container_label_escape_enabled": z.boolean().describe("Escape special characters in labels. By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$. If you want to use env variables inside the labels, turn this off.").default(true), "tags": z.array(z.string()).describe("Tags to assign to the application.").optional(), "is_preserve_repository_enabled": z.boolean().describe("Preserve repository during deployment.").default(false) }) }), responseSchema: z.object({ "uuid": z.string().optional() }), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
6
|
-
{ name: "coolify_create_private_github_app_application", method: "POST", path: "/applications/private-github-app", description: "Create (Private - GH App)", inputSchema: z.object({ body: z.object({ "project_uuid": z.string().describe("The project UUID."), "server_uuid": z.string().describe("The server UUID."), "environment_name": z.string().describe("The environment name. You need to provide at least one of environment_name or environment_uuid."), "environment_uuid": z.string().describe("The environment UUID. You need to provide at least one of environment_name or environment_uuid."), "github_app_uuid": z.string().describe("The Github App UUID."), "git_repository": z.string().describe("The git repository URL."), "git_branch": z.string().describe("The git branch."), "ports_exposes": z.string().describe("The ports to expose.").optional(), "destination_uuid": z.string().describe("The destination UUID.").optional(), "build_pack": z.enum(["nixpacks", "railpack", "static", "dockerfile", "dockercompose"]).describe("The build pack type."), "name": z.string().describe("The application name.").optional(), "description": z.string().describe("The application description.").optional(), "domains": z.string().describe("The application URLs in a comma-separated list.").optional(), "noindex_domains": z.array(z.string()).describe("The subset of the application domains served with an X-Robots-Tag: noindex, nofollow response header, keeping them out of search engines. Entries that are not among the application domains are ignored.").optional(), "git_commit_sha": z.string().describe("The git commit SHA.").optional(), "docker_registry_image_name": z.string().describe("The docker registry image name.").optional(), "docker_registry_image_tag": z.string().describe("The docker registry image tag.").optional(), "is_static": z.boolean().describe("The flag to indicate if the application is static.").optional(), "is_spa": z.boolean().describe("The flag to indicate if the application is a single-page application (SPA). Only relevant when is_static is true.").optional(), "is_auto_deploy_enabled": z.boolean().describe("The flag to indicate if auto-deploy is enabled on git push. Defaults to true.").optional(), "is_force_https_enabled": z.boolean().describe("The flag to indicate if HTTPS is forced. Defaults to true.").optional(), "is_preview_deployments_enabled": z.boolean().describe("Enable preview deployments for pull requests.").optional(), "static_image": z.literal("nginx:alpine").describe("The static image.").optional(), "install_command": z.string().describe("The install command.").optional(), "build_command": z.string().describe("The build command.").optional(), "start_command": z.string().describe("The start command.").optional(), "ports_mappings": z.string().describe("The ports mappings.").optional(), "base_directory": z.string().describe("The base directory for all commands.").optional(), "publish_directory": z.string().describe("The publish directory.").optional(), "health_check_enabled": z.boolean().describe("Health check enabled.").optional(), "health_check_path": z.string().describe("Health check path.").optional(), "health_check_port": z.union([z.string().describe("Health check port."), z.null()]).optional(), "health_check_host": z.union([z.string().describe("Health check host."), z.null()]).optional(), "health_check_method": z.string().describe("Health check method.").optional(), "health_check_return_code": z.number().int().describe("Health check return code.").optional(), "health_check_scheme": z.string().describe("Health check scheme.").optional(), "health_check_response_text": z.union([z.string().describe("Health check response text."), z.null()]).optional(), "health_check_interval": z.number().int().describe("Health check interval in seconds.").optional(), "health_check_timeout": z.number().int().describe("Health check timeout in seconds.").optional(), "health_check_retries": z.number().int().describe("Health check retries count.").optional(), "health_check_start_period": z.number().int().describe("Health check start period in seconds.").optional(), "limits_memory": z.string().describe("Memory limit.").optional(), "limits_memory_swap": z.string().describe("Memory swap limit.").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness.").optional(), "limits_memory_reservation": z.string().describe("Memory reservation.").optional(), "limits_cpus": z.string().describe("CPU limit.").optional(), "limits_cpuset": z.union([z.string().describe("CPU set."), z.null()]).optional(), "limits_cpu_shares": z.number().int().describe("CPU shares.").optional(), "custom_labels": z.string().describe("Custom labels.").optional(), "custom_docker_run_options": z.string().describe("Custom docker run options.").optional(), "post_deployment_command": z.string().describe("Post deployment command.").optional(), "post_deployment_command_container": z.string().describe("Post deployment command container.").optional(), "pre_deployment_command": z.string().describe("Pre deployment command.").optional(), "pre_deployment_command_container": z.string().describe("Pre deployment command container.").optional(), "manual_webhook_secret_github": z.string().describe("Manual webhook secret for Github.").optional(), "manual_webhook_secret_gitlab": z.string().describe("Manual webhook secret for Gitlab.").optional(), "manual_webhook_secret_bitbucket": z.string().describe("Manual webhook secret for Bitbucket.").optional(), "manual_webhook_secret_gitea": z.string().describe("Manual webhook secret for Gitea.").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("How to set redirect with Traefik / Caddy. www<->non-www."), z.null()]).optional(), "instant_deploy": z.boolean().describe("The flag to indicate if the application should be deployed instantly.").optional(), "dockerfile": z.string().describe("The Dockerfile content.").optional(), "dockerfile_location": z.string().describe("The Dockerfile location in the repository").optional(), "docker_compose_location": z.string().describe("The Docker Compose location.").optional(), "docker_compose_custom_start_command": z.string().describe("The Docker Compose custom start command.").optional(), "docker_compose_custom_build_command": z.string().describe("The Docker Compose custom build command.").optional(), "docker_compose_domains": z.array(z.object({ "name": z.string().describe("The service name as defined in docker-compose.").optional(), "domain": z.string().describe("Comma-separated list of URLs (e.g. \"https://app.coolify.io,https://app2.coolify.io\")").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("Per-service www/non-www redirect for this compose service."), z.null()]).optional() })).describe("Array of URLs to be applied to containers of a dockercompose application.").optional(), "watch_paths": z.string().describe("The watch paths.").optional(), "use_build_server": z.union([z.boolean().describe("Use build server."), z.null()]).optional(), "use_build_secrets": z.boolean().describe("Use Docker Build Secrets for build-time environment variables.").default(false), "is_git_submodules_enabled": z.boolean().describe("Clone Git submodules.").optional(), "is_git_lfs_enabled": z.boolean().describe("Enable Git LFS.").optional(), "is_git_shallow_clone_enabled": z.boolean().describe("Use a shallow Git clone.").optional(), "disable_build_cache": z.boolean().describe("Disable the build cache.").optional(), "inject_build_args_to_dockerfile": z.boolean().describe("Inject build arguments into the Dockerfile build.").optional(), "include_source_commit_in_build": z.boolean().describe("Include the source commit in the build.").optional(), "is_env_sorting_enabled": z.boolean().describe("Sort environment variables.").optional(), "is_pr_deployments_public_enabled": z.boolean().describe("Make pull request deployments public.").optional(), "stop_grace_period": z.union([z.number().int().gte(1).lte(3600).describe("Container stop grace period in seconds."), z.null()]).optional(), "docker_images_to_keep": z.number().int().gte(0).lte(100).describe("Number of Docker images to retain.").optional(), "is_gzip_enabled": z.boolean().describe("Enable gzip compression.").optional(), "is_stripprefix_enabled": z.boolean().describe("Enable path prefix stripping.").optional(), "is_raw_compose_deployment_enabled": z.boolean().describe("Deploy the raw Docker Compose definition.").optional(), "is_log_drain_enabled": z.boolean().describe("Enable log drain for the application.").optional(), "is_gpu_enabled": z.boolean().describe("Enable GPU support.").optional(), "gpu_driver": z.union([z.string().describe("GPU driver name."), z.null()]).optional(), "gpu_count": z.union([z.string().describe("Number of GPUs to allocate."), z.null()]).optional(), "gpu_device_ids": z.union([z.string().describe("Comma-separated GPU device IDs."), z.null()]).optional(), "gpu_options": z.union([z.string().describe("Additional GPU options."), z.null()]).optional(), "is_consistent_container_name_enabled": z.boolean().describe("Use a consistent container name across deployments.").optional(), "custom_internal_name": z.union([z.string().describe("Custom internal container name."), z.null()]).optional(), "preview_url_template": z.string().describe("Preview URL template.").optional(), "max_restart_count": z.number().int().gte(0).describe("Maximum container restart count before stopping.").optional(), "is_http_basic_auth_enabled": z.boolean().describe("HTTP Basic Authentication enabled.").optional(), "http_basic_auth_username": z.union([z.string().describe("Username for HTTP Basic Authentication"), z.null()]).optional(), "http_basic_auth_password": z.union([z.string().describe("Password for HTTP Basic Authentication"), z.null()]).optional(), "connect_to_docker_network": z.boolean().describe("The flag to connect the service to the predefined Docker network.").optional(), "force_domain_override": z.boolean().describe("Force domain usage even if conflicts are detected. Default is false.").optional(), "autogenerate_domain": z.boolean().describe("If true and domains is empty, auto-generate a domain using the server's wildcard domain or sslip.io fallback. Default: true.").default(true), "is_container_label_escape_enabled": z.boolean().describe("Escape special characters in labels. By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$. If you want to use env variables inside the labels, turn this off.").default(true), "tags": z.array(z.string()).describe("Tags to assign to the application.").optional(), "is_preserve_repository_enabled": z.boolean().describe("Preserve repository during deployment.").default(false) }) }), responseSchema: z.object({ "uuid": z.string().optional() }), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
7
|
-
{ name: "coolify_create_private_deploy_key_application", method: "POST", path: "/applications/private-deploy-key", description: "Create (Private - Deploy Key)", inputSchema: z.object({ body: z.object({ "project_uuid": z.string().describe("The project UUID."), "server_uuid": z.string().describe("The server UUID."), "environment_name": z.string().describe("The environment name. You need to provide at least one of environment_name or environment_uuid."), "environment_uuid": z.string().describe("The environment UUID. You need to provide at least one of environment_name or environment_uuid."), "private_key_uuid": z.string().describe("The private key UUID."), "git_repository": z.string().describe("The git repository URL."), "git_branch": z.string().describe("The git branch."), "ports_exposes": z.string().describe("The ports to expose.").optional(), "destination_uuid": z.string().describe("The destination UUID.").optional(), "build_pack": z.enum(["nixpacks", "railpack", "static", "dockerfile", "dockercompose"]).describe("The build pack type."), "name": z.string().describe("The application name.").optional(), "description": z.string().describe("The application description.").optional(), "domains": z.string().describe("The application URLs in a comma-separated list.").optional(), "noindex_domains": z.array(z.string()).describe("The subset of the application domains served with an X-Robots-Tag: noindex, nofollow response header, keeping them out of search engines. Entries that are not among the application domains are ignored.").optional(), "git_commit_sha": z.string().describe("The git commit SHA.").optional(), "docker_registry_image_name": z.string().describe("The docker registry image name.").optional(), "docker_registry_image_tag": z.string().describe("The docker registry image tag.").optional(), "is_static": z.boolean().describe("The flag to indicate if the application is static.").optional(), "is_spa": z.boolean().describe("The flag to indicate if the application is a single-page application (SPA). Only relevant when is_static is true.").optional(), "is_auto_deploy_enabled": z.boolean().describe("The flag to indicate if auto-deploy is enabled on git push. Defaults to true.").optional(), "is_force_https_enabled": z.boolean().describe("The flag to indicate if HTTPS is forced. Defaults to true.").optional(), "is_preview_deployments_enabled": z.boolean().describe("Enable preview deployments for pull requests.").optional(), "static_image": z.literal("nginx:alpine").describe("The static image.").optional(), "install_command": z.string().describe("The install command.").optional(), "build_command": z.string().describe("The build command.").optional(), "start_command": z.string().describe("The start command.").optional(), "ports_mappings": z.string().describe("The ports mappings.").optional(), "base_directory": z.string().describe("The base directory for all commands.").optional(), "publish_directory": z.string().describe("The publish directory.").optional(), "health_check_enabled": z.boolean().describe("Health check enabled.").optional(), "health_check_path": z.string().describe("Health check path.").optional(), "health_check_port": z.union([z.string().describe("Health check port."), z.null()]).optional(), "health_check_host": z.union([z.string().describe("Health check host."), z.null()]).optional(), "health_check_method": z.string().describe("Health check method.").optional(), "health_check_return_code": z.number().int().describe("Health check return code.").optional(), "health_check_scheme": z.string().describe("Health check scheme.").optional(), "health_check_response_text": z.union([z.string().describe("Health check response text."), z.null()]).optional(), "health_check_interval": z.number().int().describe("Health check interval in seconds.").optional(), "health_check_timeout": z.number().int().describe("Health check timeout in seconds.").optional(), "health_check_retries": z.number().int().describe("Health check retries count.").optional(), "health_check_start_period": z.number().int().describe("Health check start period in seconds.").optional(), "limits_memory": z.string().describe("Memory limit.").optional(), "limits_memory_swap": z.string().describe("Memory swap limit.").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness.").optional(), "limits_memory_reservation": z.string().describe("Memory reservation.").optional(), "limits_cpus": z.string().describe("CPU limit.").optional(), "limits_cpuset": z.union([z.string().describe("CPU set."), z.null()]).optional(), "limits_cpu_shares": z.number().int().describe("CPU shares.").optional(), "custom_labels": z.string().describe("Custom labels.").optional(), "custom_docker_run_options": z.string().describe("Custom docker run options.").optional(), "post_deployment_command": z.string().describe("Post deployment command.").optional(), "post_deployment_command_container": z.string().describe("Post deployment command container.").optional(), "pre_deployment_command": z.string().describe("Pre deployment command.").optional(), "pre_deployment_command_container": z.string().describe("Pre deployment command container.").optional(), "manual_webhook_secret_github": z.string().describe("Manual webhook secret for Github.").optional(), "manual_webhook_secret_gitlab": z.string().describe("Manual webhook secret for Gitlab.").optional(), "manual_webhook_secret_bitbucket": z.string().describe("Manual webhook secret for Bitbucket.").optional(), "manual_webhook_secret_gitea": z.string().describe("Manual webhook secret for Gitea.").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("How to set redirect with Traefik / Caddy. www<->non-www."), z.null()]).optional(), "instant_deploy": z.boolean().describe("The flag to indicate if the application should be deployed instantly.").optional(), "dockerfile": z.string().describe("The Dockerfile content.").optional(), "dockerfile_location": z.string().describe("The Dockerfile location in the repository.").optional(), "docker_compose_location": z.string().describe("The Docker Compose location.").optional(), "docker_compose_custom_start_command": z.string().describe("The Docker Compose custom start command.").optional(), "docker_compose_custom_build_command": z.string().describe("The Docker Compose custom build command.").optional(), "docker_compose_domains": z.array(z.object({ "name": z.string().describe("The service name as defined in docker-compose.").optional(), "domain": z.string().describe("Comma-separated list of URLs (e.g. \"https://app.coolify.io,https://app2.coolify.io\")").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("Per-service www/non-www redirect for this compose service."), z.null()]).optional() })).describe("Array of URLs to be applied to containers of a dockercompose application.").optional(), "watch_paths": z.string().describe("The watch paths.").optional(), "use_build_server": z.union([z.boolean().describe("Use build server."), z.null()]).optional(), "use_build_secrets": z.boolean().describe("Use Docker Build Secrets for build-time environment variables.").default(false), "is_git_submodules_enabled": z.boolean().describe("Clone Git submodules.").optional(), "is_git_lfs_enabled": z.boolean().describe("Enable Git LFS.").optional(), "is_git_shallow_clone_enabled": z.boolean().describe("Use a shallow Git clone.").optional(), "disable_build_cache": z.boolean().describe("Disable the build cache.").optional(), "inject_build_args_to_dockerfile": z.boolean().describe("Inject build arguments into the Dockerfile build.").optional(), "include_source_commit_in_build": z.boolean().describe("Include the source commit in the build.").optional(), "is_env_sorting_enabled": z.boolean().describe("Sort environment variables.").optional(), "is_pr_deployments_public_enabled": z.boolean().describe("Make pull request deployments public.").optional(), "stop_grace_period": z.union([z.number().int().gte(1).lte(3600).describe("Container stop grace period in seconds."), z.null()]).optional(), "docker_images_to_keep": z.number().int().gte(0).lte(100).describe("Number of Docker images to retain.").optional(), "is_gzip_enabled": z.boolean().describe("Enable gzip compression.").optional(), "is_stripprefix_enabled": z.boolean().describe("Enable path prefix stripping.").optional(), "is_raw_compose_deployment_enabled": z.boolean().describe("Deploy the raw Docker Compose definition.").optional(), "is_log_drain_enabled": z.boolean().describe("Enable log drain for the application.").optional(), "is_gpu_enabled": z.boolean().describe("Enable GPU support.").optional(), "gpu_driver": z.union([z.string().describe("GPU driver name."), z.null()]).optional(), "gpu_count": z.union([z.string().describe("Number of GPUs to allocate."), z.null()]).optional(), "gpu_device_ids": z.union([z.string().describe("Comma-separated GPU device IDs."), z.null()]).optional(), "gpu_options": z.union([z.string().describe("Additional GPU options."), z.null()]).optional(), "is_consistent_container_name_enabled": z.boolean().describe("Use a consistent container name across deployments.").optional(), "custom_internal_name": z.union([z.string().describe("Custom internal container name."), z.null()]).optional(), "preview_url_template": z.string().describe("Preview URL template.").optional(), "max_restart_count": z.number().int().gte(0).describe("Maximum container restart count before stopping.").optional(), "is_http_basic_auth_enabled": z.boolean().describe("HTTP Basic Authentication enabled.").optional(), "http_basic_auth_username": z.union([z.string().describe("Username for HTTP Basic Authentication"), z.null()]).optional(), "http_basic_auth_password": z.union([z.string().describe("Password for HTTP Basic Authentication"), z.null()]).optional(), "connect_to_docker_network": z.boolean().describe("The flag to connect the service to the predefined Docker network.").optional(), "force_domain_override": z.boolean().describe("Force domain usage even if conflicts are detected. Default is false.").optional(), "autogenerate_domain": z.boolean().describe("If true and domains is empty, auto-generate a domain using the server's wildcard domain or sslip.io fallback. Default: true.").default(true), "is_container_label_escape_enabled": z.boolean().describe("Escape special characters in labels. By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$. If you want to use env variables inside the labels, turn this off.").default(true), "tags": z.array(z.string()).describe("Tags to assign to the application.").optional(), "is_preserve_repository_enabled": z.boolean().describe("Preserve repository during deployment.").default(false) }) }), responseSchema: z.object({ "uuid": z.string().optional() }), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
8
|
-
{ name: "coolify_create_dockerfile_application", method: "POST", path: "/applications/dockerfile", description: "Create (Dockerfile without git)", inputSchema: z.object({ body: z.object({ "project_uuid": z.string().describe("The project UUID."), "server_uuid": z.string().describe("The server UUID."), "environment_name": z.string().describe("The environment name. You need to provide at least one of environment_name or environment_uuid."), "environment_uuid": z.string().describe("The environment UUID. You need to provide at least one of environment_name or environment_uuid."), "dockerfile": z.string().describe("
|
|
9
|
-
{ name: "coolify_create_dockerimage_application", method: "POST", path: "/applications/dockerimage", description: "Create (Docker Image without git)", inputSchema: z.object({ body: z.object({ "project_uuid": z.string().describe("The project UUID."), "server_uuid": z.string().describe("The server UUID."), "environment_name": z.string().describe("The environment name. You need to provide at least one of environment_name or environment_uuid."), "environment_uuid": z.string().describe("The environment UUID. You need to provide at least one of environment_name or environment_uuid."), "docker_registry_image_name": z.string().describe("The docker registry image name."), "docker_registry_image_tag": z.string().describe("The docker registry image tag.").optional(), "ports_exposes": z.string().describe("The ports to expose.").optional(), "destination_uuid": z.string().describe("The destination UUID.").optional(), "name": z.string().describe("The application name.").optional(), "description": z.string().describe("The application description.").optional(), "domains": z.string().describe("The application URLs in a comma-separated list.").optional(), "noindex_domains": z.array(z.string()).describe("The subset of the application domains served with an X-Robots-Tag: noindex, nofollow response header, keeping them out of search engines. Entries that are not among the application domains are ignored.").optional(), "ports_mappings": z.string().describe("The ports mappings.").optional(), "health_check_enabled": z.boolean().describe("Health check enabled.").optional(), "health_check_path": z.string().describe("Health check path.").optional(), "health_check_port": z.union([z.string().describe("Health check port."), z.null()]).optional(), "health_check_host": z.union([z.string().describe("Health check host."), z.null()]).optional(), "health_check_method": z.string().describe("Health check method.").optional(), "health_check_return_code": z.number().int().describe("Health check return code.").optional(), "health_check_scheme": z.string().describe("Health check scheme.").optional(), "health_check_response_text": z.union([z.string().describe("Health check response text."), z.null()]).optional(), "health_check_interval": z.number().int().describe("Health check interval in seconds.").optional(), "health_check_timeout": z.number().int().describe("Health check timeout in seconds.").optional(), "health_check_retries": z.number().int().describe("Health check retries count.").optional(), "health_check_start_period": z.number().int().describe("Health check start period in seconds.").optional(), "limits_memory": z.string().describe("Memory limit.").optional(), "limits_memory_swap": z.string().describe("Memory swap limit.").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness.").optional(), "limits_memory_reservation": z.string().describe("Memory reservation.").optional(), "limits_cpus": z.string().describe("CPU limit.").optional(), "limits_cpuset": z.union([z.string().describe("CPU set."), z.null()]).optional(), "limits_cpu_shares": z.number().int().describe("CPU shares.").optional(), "custom_labels": z.string().describe("Custom labels.").optional(), "custom_docker_run_options": z.string().describe("Custom docker run options.").optional(), "post_deployment_command": z.string().describe("Post deployment command.").optional(), "post_deployment_command_container": z.string().describe("Post deployment command container.").optional(), "pre_deployment_command": z.string().describe("Pre deployment command.").optional(), "pre_deployment_command_container": z.string().describe("Pre deployment command container.").optional(), "manual_webhook_secret_github": z.string().describe("Manual webhook secret for Github.").optional(), "manual_webhook_secret_gitlab": z.string().describe("Manual webhook secret for Gitlab.").optional(), "manual_webhook_secret_bitbucket": z.string().describe("Manual webhook secret for Bitbucket.").optional(), "manual_webhook_secret_gitea": z.string().describe("Manual webhook secret for Gitea.").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("How to set redirect with Traefik / Caddy. www<->non-www."), z.null()]).optional(), "instant_deploy": z.boolean().describe("The flag to indicate if the application should be deployed instantly.").optional(), "is_force_https_enabled": z.boolean().describe("The flag to indicate if HTTPS is forced. Defaults to true.").optional(), "is_preview_deployments_enabled": z.boolean().describe("Enable preview deployments for pull requests.").optional(), "use_build_server": z.union([z.boolean().describe("Use build server."), z.null()]).optional(), "use_build_secrets": z.boolean().describe("Use Docker Build Secrets for build-time environment variables.").default(false), "is_git_submodules_enabled": z.boolean().describe("Clone Git submodules.").optional(), "is_git_lfs_enabled": z.boolean().describe("Enable Git LFS.").optional(), "is_git_shallow_clone_enabled": z.boolean().describe("Use a shallow Git clone.").optional(), "disable_build_cache": z.boolean().describe("Disable the build cache.").optional(), "inject_build_args_to_dockerfile": z.boolean().describe("Inject build arguments into the Dockerfile build.").optional(), "include_source_commit_in_build": z.boolean().describe("Include the source commit in the build.").optional(), "is_env_sorting_enabled": z.boolean().describe("Sort environment variables.").optional(), "is_pr_deployments_public_enabled": z.boolean().describe("Make pull request deployments public.").optional(), "stop_grace_period": z.union([z.number().int().gte(1).lte(3600).describe("Container stop grace period in seconds."), z.null()]).optional(), "docker_images_to_keep": z.number().int().gte(0).lte(100).describe("Number of Docker images to retain.").optional(), "is_gzip_enabled": z.boolean().describe("Enable gzip compression.").optional(), "is_stripprefix_enabled": z.boolean().describe("Enable path prefix stripping.").optional(), "is_raw_compose_deployment_enabled": z.boolean().describe("Deploy the raw Docker Compose definition.").optional(), "is_log_drain_enabled": z.boolean().describe("Enable log drain for the application.").optional(), "is_gpu_enabled": z.boolean().describe("Enable GPU support.").optional(), "gpu_driver": z.union([z.string().describe("GPU driver name."), z.null()]).optional(), "gpu_count": z.union([z.string().describe("Number of GPUs to allocate."), z.null()]).optional(), "gpu_device_ids": z.union([z.string().describe("Comma-separated GPU device IDs."), z.null()]).optional(), "gpu_options": z.union([z.string().describe("Additional GPU options."), z.null()]).optional(), "is_consistent_container_name_enabled": z.boolean().describe("Use a consistent container name across deployments.").optional(), "custom_internal_name": z.union([z.string().describe("Custom internal container name."), z.null()]).optional(), "preview_url_template": z.string().describe("Preview URL template.").optional(), "max_restart_count": z.number().int().gte(0).describe("Maximum container restart count before stopping.").optional(), "is_http_basic_auth_enabled": z.boolean().describe("HTTP Basic Authentication enabled.").optional(), "http_basic_auth_username": z.union([z.string().describe("Username for HTTP Basic Authentication"), z.null()]).optional(), "http_basic_auth_password": z.union([z.string().describe("Password for HTTP Basic Authentication"), z.null()]).optional(), "connect_to_docker_network": z.boolean().describe("The flag to connect the service to the predefined Docker network.").optional(), "force_domain_override": z.boolean().describe("Force domain usage even if conflicts are detected. Default is false.").optional(), "autogenerate_domain": z.boolean().describe("If true and domains is empty, auto-generate a domain using the server's wildcard domain or sslip.io fallback. Default: true.").default(true), "is_container_label_escape_enabled": z.boolean().describe("Escape special characters in labels. By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$. If you want to use env variables inside the labels, turn this off.").default(true), "tags": z.array(z.string()).describe("Tags to assign to the application.").optional() }) }), responseSchema: z.object({ "uuid": z.string().optional() }), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
10
|
-
{ name: "coolify_get_application_by_uuid", method: "GET", path: "/applications/{uuid}", description: "Get", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.object({ "id": z.number().int().describe("The application identifier in the database.").optional(), "description": z.union([z.string().describe("The application description."), z.null()]).optional(), "repository_project_id": z.union([z.number().int().describe("The repository project identifier."), z.null()]).optional(), "uuid": z.string().describe("The application UUID.").optional(), "name": z.string().describe("The application name.").optional(), "fqdn": z.union([z.string().describe("The application domains."), z.null()]).optional(), "noindex_domains": z.union([z.array(z.string()).describe("The subset of the application domains served with an X-Robots-Tag: noindex, nofollow response header."), z.null()]).optional(), "config_hash": z.string().describe("Configuration hash.").optional(), "git_repository": z.string().describe("Git repository URL.").optional(), "git_branch": z.string().describe("Git branch.").optional(), "git_commit_sha": z.string().describe("Git commit SHA.").optional(), "git_full_url": z.union([z.string().describe("Git full URL."), z.null()]).optional(), "docker_registry_image_name": z.union([z.string().describe("Docker registry image name."), z.null()]).optional(), "docker_registry_image_tag": z.union([z.string().describe("Docker registry image tag."), z.null()]).optional(), "build_pack": z.enum(["nixpacks", "railpack", "static", "dockerfile", "dockercompose"]).describe("Build pack.").optional(), "static_image": z.string().describe("Static image used when static site is deployed.").optional(), "install_command": z.union([z.string().describe("Install command."), z.null()]).optional(), "build_command": z.union([z.string().describe("Build command."), z.null()]).optional(), "start_command": z.union([z.string().describe("Start command."), z.null()]).optional(), "ports_exposes": z.string().describe("Ports exposes.").optional(), "ports_mappings": z.union([z.string().describe("Ports mappings."), z.null()]).optional(), "custom_network_aliases": z.union([z.string().describe("Network aliases for Docker container."), z.null()]).optional(), "base_directory": z.string().describe("Base directory for all commands.").optional(), "publish_directory": z.union([z.string().describe("Publish directory."), z.null()]).optional(), "health_check_enabled": z.boolean().describe("Health check enabled.").optional(), "health_check_path": z.string().describe("Health check path.").optional(), "health_check_port": z.union([z.string().describe("Health check port."), z.null()]).optional(), "health_check_host": z.union([z.string().describe("Health check host."), z.null()]).optional(), "health_check_method": z.string().describe("Health check method.").optional(), "health_check_return_code": z.number().int().describe("Health check return code.").optional(), "health_check_scheme": z.string().describe("Health check scheme.").optional(), "health_check_response_text": z.union([z.string().describe("Health check response text."), z.null()]).optional(), "health_check_interval": z.number().int().describe("Health check interval in seconds.").optional(), "health_check_timeout": z.number().int().describe("Health check timeout in seconds.").optional(), "health_check_retries": z.number().int().describe("Health check retries count.").optional(), "health_check_start_period": z.number().int().describe("Health check start period in seconds.").optional(), "health_check_type": z.enum(["http", "cmd"]).describe("Health check type: http or cmd.").optional(), "health_check_command": z.union([z.string().describe("Health check command for CMD type."), z.null()]).optional(), "limits_memory": z.string().describe("Memory limit.").optional(), "limits_memory_swap": z.string().describe("Memory swap limit.").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness.").optional(), "limits_memory_reservation": z.string().describe("Memory reservation.").optional(), "limits_cpus": z.string().describe("CPU limit.").optional(), "limits_cpuset": z.union([z.string().describe("CPU set."), z.null()]).optional(), "limits_cpu_shares": z.number().int().describe("CPU shares.").optional(), "status": z.string().describe("Application status.").optional(), "preview_url_template": z.string().describe("Preview URL template.").optional(), "max_restart_count": z.number().int().describe("Maximum container restart count before stopping.").optional(), "destination_type": z.string().describe("Destination type.").optional(), "destination_id": z.number().int().describe("Destination identifier.").optional(), "source_id": z.union([z.number().int().describe("Source identifier."), z.null()]).optional(), "private_key_id": z.union([z.string().describe("Private key identifier."), z.null()]).optional(), "environment_id": z.number().int().describe("Environment identifier.").optional(), "dockerfile": z.union([z.string().describe("Dockerfile content. Used for dockerfile build pack."), z.null()]).optional(), "dockerfile_location": z.union([z.string().describe("Dockerfile location."), z.null()]).optional(), "custom_labels": z.union([z.string().describe("Custom labels."), z.null()]).optional(), "dockerfile_target_build": z.union([z.string().describe("Dockerfile target build."), z.null()]).optional(), "manual_webhook_secret_github": z.union([z.string().describe("Manual webhook secret for GitHub."), z.null()]).optional(), "manual_webhook_secret_gitlab": z.union([z.string().describe("Manual webhook secret for GitLab."), z.null()]).optional(), "manual_webhook_secret_bitbucket": z.union([z.string().describe("Manual webhook secret for Bitbucket."), z.null()]).optional(), "manual_webhook_secret_gitea": z.union([z.string().describe("Manual webhook secret for Gitea."), z.null()]).optional(), "docker_compose_location": z.string().describe("Docker compose location.").optional(), "docker_compose": z.union([z.string().describe("Docker compose content. Used for docker compose build pack."), z.null()]).optional(), "docker_compose_raw": z.union([z.string().describe("Docker compose raw content."), z.null()]).optional(), "docker_compose_domains": z.union([z.string().describe("Docker compose domains."), z.null()]).optional(), "docker_compose_custom_start_command": z.union([z.string().describe("Docker compose custom start command."), z.null()]).optional(), "docker_compose_custom_build_command": z.union([z.string().describe("Docker compose custom build command."), z.null()]).optional(), "swarm_replicas": z.union([z.number().int().describe("Swarm replicas. Only used for swarm deployments."), z.null()]).optional(), "swarm_placement_constraints": z.union([z.string().describe("Swarm placement constraints. Only used for swarm deployments."), z.null()]).optional(), "custom_docker_run_options": z.union([z.string().describe("Custom docker run options."), z.null()]).optional(), "post_deployment_command": z.union([z.string().describe("Post deployment command."), z.null()]).optional(), "post_deployment_command_container": z.union([z.string().describe("Post deployment command container."), z.null()]).optional(), "pre_deployment_command": z.union([z.string().describe("Pre deployment command."), z.null()]).optional(), "pre_deployment_command_container": z.union([z.string().describe("Pre deployment command container."), z.null()]).optional(), "watch_paths": z.union([z.string().describe("Watch paths."), z.null()]).optional(), "custom_healthcheck_found": z.boolean().describe("Custom healthcheck found.").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("How to set redirect with Traefik / Caddy. www<->non-www."), z.null()]).optional(), "created_at": z.string().datetime({ offset: true }).describe("The date and time when the application was created.").optional(), "updated_at": z.string().datetime({ offset: true }).describe("The date and time when the application was last updated.").optional(), "deleted_at": z.union([z.string().datetime({ offset: true }).describe("The date and time when the application was deleted."), z.null()]).optional(), "compose_parsing_version": z.string().describe("How Coolify parse the compose file.").optional(), "custom_nginx_configuration": z.union([z.string().describe("Custom Nginx configuration base64 encoded."), z.null()]).optional(), "is_http_basic_auth_enabled": z.boolean().describe("HTTP Basic Authentication enabled.").optional(), "http_basic_auth_username": z.union([z.string().describe("Username for HTTP Basic Authentication"), z.null()]).optional(), "http_basic_auth_password": z.union([z.string().describe("Password for HTTP Basic Authentication"), z.null()]).optional(), "settings": z.object({ "is_static": z.boolean().optional(), "is_git_submodules_enabled": z.boolean().optional(), "is_git_lfs_enabled": z.boolean().optional(), "is_auto_deploy_enabled": z.boolean().optional(), "is_force_https_enabled": z.boolean().optional(), "is_debug_enabled": z.boolean().optional(), "is_preview_deployments_enabled": z.boolean().optional(), "is_log_drain_enabled": z.boolean().optional(), "is_gpu_enabled": z.boolean().optional(), "gpu_driver": z.union([z.string(), z.null()]).optional(), "gpu_count": z.union([z.string(), z.null()]).optional(), "gpu_device_ids": z.union([z.string(), z.null()]).optional(), "gpu_options": z.union([z.string(), z.null()]).optional(), "is_include_timestamps": z.boolean().optional(), "is_swarm_only_worker_nodes": z.boolean().optional(), "is_raw_compose_deployment_enabled": z.boolean().optional(), "is_build_server_enabled": z.boolean().optional(), "is_consistent_container_name_enabled": z.boolean().optional(), "is_gzip_enabled": z.boolean().optional(), "is_stripprefix_enabled": z.boolean().optional(), "connect_to_docker_network": z.boolean().optional(), "custom_internal_name": z.union([z.string(), z.null()]).optional(), "is_container_label_escape_enabled": z.boolean().optional(), "is_env_sorting_enabled": z.boolean().optional(), "is_container_label_readonly_enabled": z.boolean().optional(), "is_preserve_repository_enabled": z.boolean().optional(), "disable_build_cache": z.boolean().optional(), "is_spa": z.boolean().optional(), "is_git_shallow_clone_enabled": z.boolean().optional(), "is_pr_deployments_public_enabled": z.boolean().optional(), "use_build_secrets": z.boolean().optional(), "inject_build_args_to_dockerfile": z.boolean().optional(), "include_source_commit_in_build": z.boolean().optional(), "docker_images_to_keep": z.number().int().optional(), "stop_grace_period": z.union([z.number().int(), z.null()]).optional() }).describe("Application settings.").optional() }).describe("Application model"), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
4
|
+
{ name: "coolify_list_applications", method: "GET", path: "/applications", description: "List", inputSchema: z.object({ "tag": z.string().optional() }), responseSchema: z.array(z.object({ "id": z.number().int().describe("The application identifier in the database.").optional(), "description": z.union([z.string().describe("The application description."), z.null()]).optional(), "repository_project_id": z.union([z.number().int().describe("The repository project identifier."), z.null()]).optional(), "uuid": z.string().describe("The application UUID.").optional(), "name": z.string().describe("The application name.").optional(), "fqdn": z.union([z.string().describe("The application domains."), z.null()]).optional(), "noindex_domains": z.union([z.array(z.string()).describe("The subset of the application domains served with an X-Robots-Tag: noindex, nofollow response header."), z.null()]).optional(), "config_hash": z.string().describe("Configuration hash.").optional(), "git_repository": z.string().describe("Git repository URL.").optional(), "git_branch": z.string().describe("Git branch.").optional(), "git_commit_sha": z.string().describe("Git commit SHA.").optional(), "git_full_url": z.union([z.string().describe("Git full URL."), z.null()]).optional(), "docker_registry_image_name": z.union([z.string().describe("Docker registry image name."), z.null()]).optional(), "docker_registry_image_tag": z.union([z.string().describe("Docker registry image tag."), z.null()]).optional(), "build_pack": z.enum(["nixpacks", "railpack", "static", "dockerfile", "dockercompose"]).describe("Build pack.").optional(), "static_image": z.string().describe("Static image used when static site is deployed.").optional(), "install_command": z.union([z.string().describe("Install command."), z.null()]).optional(), "build_command": z.union([z.string().describe("Build command."), z.null()]).optional(), "start_command": z.union([z.string().describe("Start command."), z.null()]).optional(), "ports_exposes": z.string().describe("Ports exposes.").optional(), "ports_mappings": z.union([z.string().describe("Ports mappings."), z.null()]).optional(), "custom_network_aliases": z.union([z.string().describe("Network aliases for Docker container."), z.null()]).optional(), "base_directory": z.string().describe("Base directory for all commands.").optional(), "publish_directory": z.union([z.string().describe("Publish directory."), z.null()]).optional(), "health_check_enabled": z.boolean().describe("Health check enabled.").optional(), "health_check_path": z.string().describe("Health check path.").optional(), "health_check_port": z.union([z.string().describe("Health check port."), z.null()]).optional(), "health_check_host": z.union([z.string().describe("Health check host."), z.null()]).optional(), "health_check_method": z.string().describe("Health check method.").optional(), "health_check_return_code": z.number().int().describe("Health check return code.").optional(), "health_check_scheme": z.string().describe("Health check scheme.").optional(), "health_check_response_text": z.union([z.string().describe("Health check response text."), z.null()]).optional(), "health_check_interval": z.number().int().describe("Health check interval in seconds.").optional(), "health_check_timeout": z.number().int().describe("Health check timeout in seconds.").optional(), "health_check_retries": z.number().int().describe("Health check retries count.").optional(), "health_check_start_period": z.number().int().describe("Health check start period in seconds.").optional(), "health_check_type": z.enum(["http", "cmd"]).describe("Health check type: http or cmd.").optional(), "health_check_command": z.union([z.string().describe("Health check command for CMD type."), z.null()]).optional(), "limits_memory": z.string().describe("Memory limit.").optional(), "limits_memory_swap": z.string().describe("Memory swap limit.").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness.").optional(), "limits_memory_reservation": z.string().describe("Memory reservation.").optional(), "limits_cpus": z.string().describe("CPU limit.").optional(), "limits_cpuset": z.union([z.string().describe("CPU set."), z.null()]).optional(), "limits_cpu_shares": z.number().int().describe("CPU shares.").optional(), "status": z.string().describe("Application status.").optional(), "preview_url_template": z.string().describe("Preview URL template.").optional(), "max_restart_count": z.number().int().describe("Maximum container restart count before stopping.").optional(), "destination_type": z.string().describe("Destination type.").optional(), "destination_id": z.number().int().describe("Destination identifier.").optional(), "source_id": z.union([z.number().int().describe("Source identifier."), z.null()]).optional(), "private_key_id": z.union([z.string().describe("Private key identifier."), z.null()]).optional(), "environment_id": z.number().int().describe("Environment identifier.").optional(), "dockerfile": z.union([z.string().describe("Dockerfile content. Used for dockerfile build pack."), z.null()]).optional(), "dockerfile_location": z.union([z.string().describe("Dockerfile location."), z.null()]).optional(), "custom_labels": z.union([z.string().describe("Custom labels."), z.null()]).optional(), "dockerfile_target_build": z.union([z.string().describe("Dockerfile target build."), z.null()]).optional(), "manual_webhook_secret_github": z.union([z.string().describe("Manual webhook secret for GitHub."), z.null()]).optional(), "manual_webhook_secret_gitlab": z.union([z.string().describe("Manual webhook secret for GitLab."), z.null()]).optional(), "manual_webhook_secret_bitbucket": z.union([z.string().describe("Manual webhook secret for Bitbucket."), z.null()]).optional(), "manual_webhook_secret_gitea": z.union([z.string().describe("Manual webhook secret for Gitea."), z.null()]).optional(), "docker_compose_location": z.string().describe("Docker compose location.").optional(), "docker_compose": z.union([z.string().describe("Docker compose content. Used for docker compose build pack."), z.null()]).optional(), "docker_compose_raw": z.union([z.string().describe("Docker compose raw content."), z.null()]).optional(), "docker_compose_domains": z.union([z.string().describe("Docker compose domains."), z.null()]).optional(), "docker_compose_custom_start_command": z.union([z.string().describe("Docker compose custom start command."), z.null()]).optional(), "docker_compose_custom_build_command": z.union([z.string().describe("Docker compose custom build command."), z.null()]).optional(), "swarm_replicas": z.union([z.number().int().describe("Swarm replicas. Only used for swarm deployments."), z.null()]).optional(), "swarm_placement_constraints": z.union([z.string().describe("Swarm placement constraints. Only used for swarm deployments."), z.null()]).optional(), "custom_docker_run_options": z.union([z.string().describe("Custom docker run options."), z.null()]).optional(), "post_deployment_command": z.union([z.string().describe("Post deployment command."), z.null()]).optional(), "post_deployment_command_container": z.union([z.string().describe("Post deployment command container."), z.null()]).optional(), "pre_deployment_command": z.union([z.string().describe("Pre deployment command."), z.null()]).optional(), "pre_deployment_command_container": z.union([z.string().describe("Pre deployment command container."), z.null()]).optional(), "watch_paths": z.union([z.string().describe("Watch paths."), z.null()]).optional(), "custom_healthcheck_found": z.boolean().describe("Custom healthcheck found.").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("How to set redirect with Traefik / Caddy. www<->non-www."), z.null()]).optional(), "created_at": z.string().datetime({ offset: true }).describe("The date and time when the application was created.").optional(), "updated_at": z.string().datetime({ offset: true }).describe("The date and time when the application was last updated.").optional(), "deleted_at": z.union([z.string().datetime({ offset: true }).describe("The date and time when the application was deleted."), z.null()]).optional(), "compose_parsing_version": z.string().describe("How Coolify parse the compose file.").optional(), "custom_nginx_configuration": z.union([z.string().describe("Custom Nginx configuration base64 encoded."), z.null()]).optional(), "is_http_basic_auth_enabled": z.boolean().describe("HTTP Basic Authentication enabled.").optional(), "http_basic_auth_username": z.union([z.string().describe("Username for HTTP Basic Authentication"), z.null()]).optional(), "http_basic_auth_password": z.union([z.string().describe("Password for HTTP Basic Authentication"), z.null()]).optional(), "settings": z.object({ "is_static": z.boolean().optional(), "is_git_submodules_enabled": z.boolean().optional(), "is_git_lfs_enabled": z.boolean().optional(), "is_auto_deploy_enabled": z.boolean().optional(), "is_force_https_enabled": z.boolean().optional(), "is_debug_enabled": z.boolean().optional(), "is_preview_deployments_enabled": z.boolean().optional(), "is_log_drain_enabled": z.boolean().optional(), "is_gpu_enabled": z.boolean().optional(), "gpu_driver": z.union([z.string(), z.null()]).optional(), "gpu_count": z.union([z.string(), z.null()]).optional(), "gpu_device_ids": z.union([z.string(), z.null()]).optional(), "gpu_options": z.union([z.string(), z.null()]).optional(), "is_include_timestamps": z.boolean().optional(), "is_swarm_only_worker_nodes": z.boolean().optional(), "is_raw_compose_deployment_enabled": z.boolean().optional(), "is_build_server_enabled": z.boolean().optional(), "is_consistent_container_name_enabled": z.boolean().optional(), "is_gzip_enabled": z.boolean().optional(), "is_stripprefix_enabled": z.boolean().optional(), "connect_to_docker_network": z.boolean().optional(), "custom_internal_name": z.union([z.string(), z.null()]).optional(), "is_container_label_escape_enabled": z.boolean().optional(), "is_env_sorting_enabled": z.boolean().optional(), "is_container_label_readonly_enabled": z.boolean().optional(), "is_preserve_repository_enabled": z.boolean().optional(), "disable_build_cache": z.boolean().optional(), "is_spa": z.boolean().optional(), "is_git_shallow_clone_enabled": z.boolean().optional(), "is_pr_deployments_public_enabled": z.boolean().optional(), "use_build_secrets": z.union([z.boolean(), z.string()]).optional(), "inject_build_args_to_dockerfile": z.boolean().optional(), "include_source_commit_in_build": z.boolean().optional(), "docker_images_to_keep": z.number().int().optional(), "stop_grace_period": z.union([z.number().int(), z.null()]).optional() }).describe("Application settings.").optional() }).describe("Application model")), responseKind: "json", parameters: [{ location: "query", name: "tag" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
5
|
+
{ name: "coolify_create_public_application", method: "POST", path: "/applications/public", description: "Create (Public)", inputSchema: z.object({ body: z.object({ "project_uuid": z.string().describe("The project UUID."), "server_uuid": z.string().describe("The server UUID."), "environment_name": z.string().describe("The environment name. You need to provide at least one of environment_name or environment_uuid.").optional(), "environment_uuid": z.string().describe("The environment UUID. You need to provide at least one of environment_name or environment_uuid.").optional(), "git_repository": z.string().describe("The git repository URL."), "git_branch": z.string().describe("The git branch."), "build_pack": z.enum(["nixpacks", "railpack", "static", "dockerfile", "dockercompose"]).describe("The build pack type."), "ports_exposes": z.string().describe("The ports to expose.").optional(), "destination_uuid": z.string().describe("The destination UUID.").optional(), "name": z.string().describe("The application name.").optional(), "description": z.string().describe("The application description.").optional(), "domains": z.string().describe("The application URLs in a comma-separated list.").optional(), "noindex_domains": z.array(z.string()).describe("The subset of the application domains served with an X-Robots-Tag: noindex, nofollow response header, keeping them out of search engines. Entries that are not among the application domains are ignored.").optional(), "git_commit_sha": z.string().describe("The git commit SHA.").optional(), "docker_registry_image_name": z.string().describe("The docker registry image name.").optional(), "docker_registry_image_tag": z.string().describe("The docker registry image tag.").optional(), "is_static": z.boolean().describe("The flag to indicate if the application is static.").optional(), "is_spa": z.boolean().describe("The flag to indicate if the application is a single-page application (SPA). Only relevant when is_static is true.").optional(), "is_auto_deploy_enabled": z.boolean().describe("The flag to indicate if auto-deploy is enabled on git push. Defaults to true.").optional(), "is_force_https_enabled": z.boolean().describe("The flag to indicate if HTTPS is forced. Defaults to true.").optional(), "is_preview_deployments_enabled": z.boolean().describe("Enable preview deployments for pull requests.").optional(), "static_image": z.literal("nginx:alpine").describe("The static image.").optional(), "install_command": z.string().describe("The install command.").optional(), "build_command": z.string().describe("The build command.").optional(), "start_command": z.string().describe("The start command.").optional(), "ports_mappings": z.string().describe("The ports mappings.").optional(), "base_directory": z.string().describe("The base directory for all commands.").optional(), "publish_directory": z.string().describe("The publish directory.").optional(), "health_check_enabled": z.boolean().describe("Health check enabled.").optional(), "health_check_path": z.string().describe("Health check path.").optional(), "health_check_port": z.union([z.string().describe("Health check port."), z.null()]).optional(), "health_check_host": z.union([z.string().describe("Health check host."), z.null()]).optional(), "health_check_method": z.string().describe("Health check method.").optional(), "health_check_return_code": z.number().int().describe("Health check return code.").optional(), "health_check_scheme": z.string().describe("Health check scheme.").optional(), "health_check_response_text": z.union([z.string().describe("Health check response text."), z.null()]).optional(), "health_check_interval": z.number().int().describe("Health check interval in seconds.").optional(), "health_check_timeout": z.number().int().describe("Health check timeout in seconds.").optional(), "health_check_retries": z.number().int().describe("Health check retries count.").optional(), "health_check_start_period": z.number().int().describe("Health check start period in seconds.").optional(), "limits_memory": z.string().describe("Memory limit.").optional(), "limits_memory_swap": z.string().describe("Memory swap limit.").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness.").optional(), "limits_memory_reservation": z.string().describe("Memory reservation.").optional(), "limits_cpus": z.string().describe("CPU limit.").optional(), "limits_cpuset": z.union([z.string().describe("CPU set."), z.null()]).optional(), "limits_cpu_shares": z.number().int().describe("CPU shares.").optional(), "custom_labels": z.string().describe("Custom labels.").optional(), "custom_docker_run_options": z.string().describe("Custom docker run options.").optional(), "post_deployment_command": z.string().describe("Post deployment command.").optional(), "post_deployment_command_container": z.string().describe("Post deployment command container.").optional(), "pre_deployment_command": z.string().describe("Pre deployment command.").optional(), "pre_deployment_command_container": z.string().describe("Pre deployment command container.").optional(), "manual_webhook_secret_github": z.string().describe("Manual webhook secret for Github.").optional(), "manual_webhook_secret_gitlab": z.string().describe("Manual webhook secret for Gitlab.").optional(), "manual_webhook_secret_bitbucket": z.string().describe("Manual webhook secret for Bitbucket.").optional(), "manual_webhook_secret_gitea": z.string().describe("Manual webhook secret for Gitea.").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("How to set redirect with Traefik / Caddy. www<->non-www."), z.null()]).optional(), "instant_deploy": z.boolean().describe("The flag to indicate if the application should be deployed instantly.").optional(), "dockerfile": z.string().describe("The Dockerfile content.").optional(), "dockerfile_location": z.string().describe("The Dockerfile location in the repository.").optional(), "docker_compose_location": z.string().describe("The Docker Compose location.").optional(), "docker_compose_custom_start_command": z.string().describe("The Docker Compose custom start command.").optional(), "docker_compose_custom_build_command": z.string().describe("The Docker Compose custom build command.").optional(), "docker_compose_domains": z.array(z.object({ "name": z.string().describe("The service name as defined in docker-compose.").optional(), "domain": z.string().describe("Comma-separated list of URLs (e.g. \"https://app.coolify.io,https://app2.coolify.io\")").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("Per-service www/non-www redirect for this compose service."), z.null()]).optional() })).describe("Array of URLs to be applied to containers of a dockercompose application.").optional(), "watch_paths": z.string().describe("The watch paths.").optional(), "use_build_server": z.union([z.boolean().describe("Use build server."), z.null()]).optional(), "use_build_secrets": z.boolean().describe("Use Docker Build Secrets for build-time environment variables.").default(false), "is_git_submodules_enabled": z.boolean().describe("Clone Git submodules.").optional(), "is_git_lfs_enabled": z.boolean().describe("Enable Git LFS.").optional(), "is_git_shallow_clone_enabled": z.boolean().describe("Use a shallow Git clone.").optional(), "disable_build_cache": z.boolean().describe("Disable the build cache.").optional(), "inject_build_args_to_dockerfile": z.boolean().describe("Inject build arguments into the Dockerfile build.").optional(), "include_source_commit_in_build": z.boolean().describe("Include the source commit in the build.").optional(), "is_env_sorting_enabled": z.boolean().describe("Sort environment variables.").optional(), "is_pr_deployments_public_enabled": z.boolean().describe("Make pull request deployments public.").optional(), "stop_grace_period": z.union([z.number().int().gte(1).lte(3600).describe("Container stop grace period in seconds."), z.null()]).optional(), "docker_images_to_keep": z.number().int().gte(0).lte(100).describe("Number of Docker images to retain.").optional(), "is_gzip_enabled": z.boolean().describe("Enable gzip compression.").optional(), "is_stripprefix_enabled": z.boolean().describe("Enable path prefix stripping.").optional(), "is_raw_compose_deployment_enabled": z.boolean().describe("Deploy the raw Docker Compose definition.").optional(), "is_log_drain_enabled": z.boolean().describe("Enable log drain for the application.").optional(), "is_gpu_enabled": z.boolean().describe("Enable GPU support.").optional(), "gpu_driver": z.union([z.string().describe("GPU driver name."), z.null()]).optional(), "gpu_count": z.union([z.string().describe("Number of GPUs to allocate."), z.null()]).optional(), "gpu_device_ids": z.union([z.string().describe("Comma-separated GPU device IDs."), z.null()]).optional(), "gpu_options": z.union([z.string().describe("Additional GPU options."), z.null()]).optional(), "is_consistent_container_name_enabled": z.boolean().describe("Use a consistent container name across deployments.").optional(), "custom_internal_name": z.union([z.string().describe("Custom internal container name."), z.null()]).optional(), "preview_url_template": z.string().describe("Preview URL template.").optional(), "max_restart_count": z.number().int().gte(0).describe("Maximum container restart count before stopping.").optional(), "is_http_basic_auth_enabled": z.boolean().describe("HTTP Basic Authentication enabled.").optional(), "http_basic_auth_username": z.union([z.string().describe("Username for HTTP Basic Authentication"), z.null()]).optional(), "http_basic_auth_password": z.union([z.string().describe("Password for HTTP Basic Authentication"), z.null()]).optional(), "connect_to_docker_network": z.boolean().describe("The flag to connect the service to the predefined Docker network.").optional(), "force_domain_override": z.boolean().describe("Force domain usage even if conflicts are detected. Default is false.").optional(), "autogenerate_domain": z.boolean().describe("If true and domains is empty, auto-generate a domain using the server's wildcard domain or sslip.io fallback. Default: true.").default(true), "is_container_label_escape_enabled": z.boolean().describe("Escape special characters in labels. By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$. If you want to use env variables inside the labels, turn this off.").default(true), "tags": z.array(z.string()).describe("Tags to assign to the application.").optional(), "is_preserve_repository_enabled": z.boolean().describe("Preserve repository during deployment.").default(false) }).refine((body) => Boolean(body["environment_name"]) || Boolean(body["environment_uuid"]), { message: "At least one of environment_name, environment_uuid is required" }) }), responseSchema: z.object({ "uuid": z.string().optional() }), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
6
|
+
{ name: "coolify_create_private_github_app_application", method: "POST", path: "/applications/private-github-app", description: "Create (Private - GH App)", inputSchema: z.object({ body: z.object({ "project_uuid": z.string().describe("The project UUID."), "server_uuid": z.string().describe("The server UUID."), "environment_name": z.string().describe("The environment name. You need to provide at least one of environment_name or environment_uuid.").optional(), "environment_uuid": z.string().describe("The environment UUID. You need to provide at least one of environment_name or environment_uuid.").optional(), "github_app_uuid": z.string().describe("The Github App UUID."), "git_repository": z.string().describe("The git repository URL."), "git_branch": z.string().describe("The git branch."), "ports_exposes": z.string().describe("The ports to expose.").optional(), "destination_uuid": z.string().describe("The destination UUID.").optional(), "build_pack": z.enum(["nixpacks", "railpack", "static", "dockerfile", "dockercompose"]).describe("The build pack type."), "name": z.string().describe("The application name.").optional(), "description": z.string().describe("The application description.").optional(), "domains": z.string().describe("The application URLs in a comma-separated list.").optional(), "noindex_domains": z.array(z.string()).describe("The subset of the application domains served with an X-Robots-Tag: noindex, nofollow response header, keeping them out of search engines. Entries that are not among the application domains are ignored.").optional(), "git_commit_sha": z.string().describe("The git commit SHA.").optional(), "docker_registry_image_name": z.string().describe("The docker registry image name.").optional(), "docker_registry_image_tag": z.string().describe("The docker registry image tag.").optional(), "is_static": z.boolean().describe("The flag to indicate if the application is static.").optional(), "is_spa": z.boolean().describe("The flag to indicate if the application is a single-page application (SPA). Only relevant when is_static is true.").optional(), "is_auto_deploy_enabled": z.boolean().describe("The flag to indicate if auto-deploy is enabled on git push. Defaults to true.").optional(), "is_force_https_enabled": z.boolean().describe("The flag to indicate if HTTPS is forced. Defaults to true.").optional(), "is_preview_deployments_enabled": z.boolean().describe("Enable preview deployments for pull requests.").optional(), "static_image": z.literal("nginx:alpine").describe("The static image.").optional(), "install_command": z.string().describe("The install command.").optional(), "build_command": z.string().describe("The build command.").optional(), "start_command": z.string().describe("The start command.").optional(), "ports_mappings": z.string().describe("The ports mappings.").optional(), "base_directory": z.string().describe("The base directory for all commands.").optional(), "publish_directory": z.string().describe("The publish directory.").optional(), "health_check_enabled": z.boolean().describe("Health check enabled.").optional(), "health_check_path": z.string().describe("Health check path.").optional(), "health_check_port": z.union([z.string().describe("Health check port."), z.null()]).optional(), "health_check_host": z.union([z.string().describe("Health check host."), z.null()]).optional(), "health_check_method": z.string().describe("Health check method.").optional(), "health_check_return_code": z.number().int().describe("Health check return code.").optional(), "health_check_scheme": z.string().describe("Health check scheme.").optional(), "health_check_response_text": z.union([z.string().describe("Health check response text."), z.null()]).optional(), "health_check_interval": z.number().int().describe("Health check interval in seconds.").optional(), "health_check_timeout": z.number().int().describe("Health check timeout in seconds.").optional(), "health_check_retries": z.number().int().describe("Health check retries count.").optional(), "health_check_start_period": z.number().int().describe("Health check start period in seconds.").optional(), "limits_memory": z.string().describe("Memory limit.").optional(), "limits_memory_swap": z.string().describe("Memory swap limit.").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness.").optional(), "limits_memory_reservation": z.string().describe("Memory reservation.").optional(), "limits_cpus": z.string().describe("CPU limit.").optional(), "limits_cpuset": z.union([z.string().describe("CPU set."), z.null()]).optional(), "limits_cpu_shares": z.number().int().describe("CPU shares.").optional(), "custom_labels": z.string().describe("Custom labels.").optional(), "custom_docker_run_options": z.string().describe("Custom docker run options.").optional(), "post_deployment_command": z.string().describe("Post deployment command.").optional(), "post_deployment_command_container": z.string().describe("Post deployment command container.").optional(), "pre_deployment_command": z.string().describe("Pre deployment command.").optional(), "pre_deployment_command_container": z.string().describe("Pre deployment command container.").optional(), "manual_webhook_secret_github": z.string().describe("Manual webhook secret for Github.").optional(), "manual_webhook_secret_gitlab": z.string().describe("Manual webhook secret for Gitlab.").optional(), "manual_webhook_secret_bitbucket": z.string().describe("Manual webhook secret for Bitbucket.").optional(), "manual_webhook_secret_gitea": z.string().describe("Manual webhook secret for Gitea.").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("How to set redirect with Traefik / Caddy. www<->non-www."), z.null()]).optional(), "instant_deploy": z.boolean().describe("The flag to indicate if the application should be deployed instantly.").optional(), "dockerfile": z.string().describe("The Dockerfile content.").optional(), "dockerfile_location": z.string().describe("The Dockerfile location in the repository").optional(), "docker_compose_location": z.string().describe("The Docker Compose location.").optional(), "docker_compose_custom_start_command": z.string().describe("The Docker Compose custom start command.").optional(), "docker_compose_custom_build_command": z.string().describe("The Docker Compose custom build command.").optional(), "docker_compose_domains": z.array(z.object({ "name": z.string().describe("The service name as defined in docker-compose.").optional(), "domain": z.string().describe("Comma-separated list of URLs (e.g. \"https://app.coolify.io,https://app2.coolify.io\")").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("Per-service www/non-www redirect for this compose service."), z.null()]).optional() })).describe("Array of URLs to be applied to containers of a dockercompose application.").optional(), "watch_paths": z.string().describe("The watch paths.").optional(), "use_build_server": z.union([z.boolean().describe("Use build server."), z.null()]).optional(), "use_build_secrets": z.boolean().describe("Use Docker Build Secrets for build-time environment variables.").default(false), "is_git_submodules_enabled": z.boolean().describe("Clone Git submodules.").optional(), "is_git_lfs_enabled": z.boolean().describe("Enable Git LFS.").optional(), "is_git_shallow_clone_enabled": z.boolean().describe("Use a shallow Git clone.").optional(), "disable_build_cache": z.boolean().describe("Disable the build cache.").optional(), "inject_build_args_to_dockerfile": z.boolean().describe("Inject build arguments into the Dockerfile build.").optional(), "include_source_commit_in_build": z.boolean().describe("Include the source commit in the build.").optional(), "is_env_sorting_enabled": z.boolean().describe("Sort environment variables.").optional(), "is_pr_deployments_public_enabled": z.boolean().describe("Make pull request deployments public.").optional(), "stop_grace_period": z.union([z.number().int().gte(1).lte(3600).describe("Container stop grace period in seconds."), z.null()]).optional(), "docker_images_to_keep": z.number().int().gte(0).lte(100).describe("Number of Docker images to retain.").optional(), "is_gzip_enabled": z.boolean().describe("Enable gzip compression.").optional(), "is_stripprefix_enabled": z.boolean().describe("Enable path prefix stripping.").optional(), "is_raw_compose_deployment_enabled": z.boolean().describe("Deploy the raw Docker Compose definition.").optional(), "is_log_drain_enabled": z.boolean().describe("Enable log drain for the application.").optional(), "is_gpu_enabled": z.boolean().describe("Enable GPU support.").optional(), "gpu_driver": z.union([z.string().describe("GPU driver name."), z.null()]).optional(), "gpu_count": z.union([z.string().describe("Number of GPUs to allocate."), z.null()]).optional(), "gpu_device_ids": z.union([z.string().describe("Comma-separated GPU device IDs."), z.null()]).optional(), "gpu_options": z.union([z.string().describe("Additional GPU options."), z.null()]).optional(), "is_consistent_container_name_enabled": z.boolean().describe("Use a consistent container name across deployments.").optional(), "custom_internal_name": z.union([z.string().describe("Custom internal container name."), z.null()]).optional(), "preview_url_template": z.string().describe("Preview URL template.").optional(), "max_restart_count": z.number().int().gte(0).describe("Maximum container restart count before stopping.").optional(), "is_http_basic_auth_enabled": z.boolean().describe("HTTP Basic Authentication enabled.").optional(), "http_basic_auth_username": z.union([z.string().describe("Username for HTTP Basic Authentication"), z.null()]).optional(), "http_basic_auth_password": z.union([z.string().describe("Password for HTTP Basic Authentication"), z.null()]).optional(), "connect_to_docker_network": z.boolean().describe("The flag to connect the service to the predefined Docker network.").optional(), "force_domain_override": z.boolean().describe("Force domain usage even if conflicts are detected. Default is false.").optional(), "autogenerate_domain": z.boolean().describe("If true and domains is empty, auto-generate a domain using the server's wildcard domain or sslip.io fallback. Default: true.").default(true), "is_container_label_escape_enabled": z.boolean().describe("Escape special characters in labels. By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$. If you want to use env variables inside the labels, turn this off.").default(true), "tags": z.array(z.string()).describe("Tags to assign to the application.").optional(), "is_preserve_repository_enabled": z.boolean().describe("Preserve repository during deployment.").default(false) }).refine((body) => Boolean(body["environment_name"]) || Boolean(body["environment_uuid"]), { message: "At least one of environment_name, environment_uuid is required" }) }), responseSchema: z.object({ "uuid": z.string().optional() }), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
7
|
+
{ name: "coolify_create_private_deploy_key_application", method: "POST", path: "/applications/private-deploy-key", description: "Create (Private - Deploy Key)", inputSchema: z.object({ body: z.object({ "project_uuid": z.string().describe("The project UUID."), "server_uuid": z.string().describe("The server UUID."), "environment_name": z.string().describe("The environment name. You need to provide at least one of environment_name or environment_uuid.").optional(), "environment_uuid": z.string().describe("The environment UUID. You need to provide at least one of environment_name or environment_uuid.").optional(), "private_key_uuid": z.string().describe("The private key UUID."), "git_repository": z.string().describe("The git repository URL."), "git_branch": z.string().describe("The git branch."), "ports_exposes": z.string().describe("The ports to expose.").optional(), "destination_uuid": z.string().describe("The destination UUID.").optional(), "build_pack": z.enum(["nixpacks", "railpack", "static", "dockerfile", "dockercompose"]).describe("The build pack type."), "name": z.string().describe("The application name.").optional(), "description": z.string().describe("The application description.").optional(), "domains": z.string().describe("The application URLs in a comma-separated list.").optional(), "noindex_domains": z.array(z.string()).describe("The subset of the application domains served with an X-Robots-Tag: noindex, nofollow response header, keeping them out of search engines. Entries that are not among the application domains are ignored.").optional(), "git_commit_sha": z.string().describe("The git commit SHA.").optional(), "docker_registry_image_name": z.string().describe("The docker registry image name.").optional(), "docker_registry_image_tag": z.string().describe("The docker registry image tag.").optional(), "is_static": z.boolean().describe("The flag to indicate if the application is static.").optional(), "is_spa": z.boolean().describe("The flag to indicate if the application is a single-page application (SPA). Only relevant when is_static is true.").optional(), "is_auto_deploy_enabled": z.boolean().describe("The flag to indicate if auto-deploy is enabled on git push. Defaults to true.").optional(), "is_force_https_enabled": z.boolean().describe("The flag to indicate if HTTPS is forced. Defaults to true.").optional(), "is_preview_deployments_enabled": z.boolean().describe("Enable preview deployments for pull requests.").optional(), "static_image": z.literal("nginx:alpine").describe("The static image.").optional(), "install_command": z.string().describe("The install command.").optional(), "build_command": z.string().describe("The build command.").optional(), "start_command": z.string().describe("The start command.").optional(), "ports_mappings": z.string().describe("The ports mappings.").optional(), "base_directory": z.string().describe("The base directory for all commands.").optional(), "publish_directory": z.string().describe("The publish directory.").optional(), "health_check_enabled": z.boolean().describe("Health check enabled.").optional(), "health_check_path": z.string().describe("Health check path.").optional(), "health_check_port": z.union([z.string().describe("Health check port."), z.null()]).optional(), "health_check_host": z.union([z.string().describe("Health check host."), z.null()]).optional(), "health_check_method": z.string().describe("Health check method.").optional(), "health_check_return_code": z.number().int().describe("Health check return code.").optional(), "health_check_scheme": z.string().describe("Health check scheme.").optional(), "health_check_response_text": z.union([z.string().describe("Health check response text."), z.null()]).optional(), "health_check_interval": z.number().int().describe("Health check interval in seconds.").optional(), "health_check_timeout": z.number().int().describe("Health check timeout in seconds.").optional(), "health_check_retries": z.number().int().describe("Health check retries count.").optional(), "health_check_start_period": z.number().int().describe("Health check start period in seconds.").optional(), "limits_memory": z.string().describe("Memory limit.").optional(), "limits_memory_swap": z.string().describe("Memory swap limit.").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness.").optional(), "limits_memory_reservation": z.string().describe("Memory reservation.").optional(), "limits_cpus": z.string().describe("CPU limit.").optional(), "limits_cpuset": z.union([z.string().describe("CPU set."), z.null()]).optional(), "limits_cpu_shares": z.number().int().describe("CPU shares.").optional(), "custom_labels": z.string().describe("Custom labels.").optional(), "custom_docker_run_options": z.string().describe("Custom docker run options.").optional(), "post_deployment_command": z.string().describe("Post deployment command.").optional(), "post_deployment_command_container": z.string().describe("Post deployment command container.").optional(), "pre_deployment_command": z.string().describe("Pre deployment command.").optional(), "pre_deployment_command_container": z.string().describe("Pre deployment command container.").optional(), "manual_webhook_secret_github": z.string().describe("Manual webhook secret for Github.").optional(), "manual_webhook_secret_gitlab": z.string().describe("Manual webhook secret for Gitlab.").optional(), "manual_webhook_secret_bitbucket": z.string().describe("Manual webhook secret for Bitbucket.").optional(), "manual_webhook_secret_gitea": z.string().describe("Manual webhook secret for Gitea.").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("How to set redirect with Traefik / Caddy. www<->non-www."), z.null()]).optional(), "instant_deploy": z.boolean().describe("The flag to indicate if the application should be deployed instantly.").optional(), "dockerfile": z.string().describe("The Dockerfile content.").optional(), "dockerfile_location": z.string().describe("The Dockerfile location in the repository.").optional(), "docker_compose_location": z.string().describe("The Docker Compose location.").optional(), "docker_compose_custom_start_command": z.string().describe("The Docker Compose custom start command.").optional(), "docker_compose_custom_build_command": z.string().describe("The Docker Compose custom build command.").optional(), "docker_compose_domains": z.array(z.object({ "name": z.string().describe("The service name as defined in docker-compose.").optional(), "domain": z.string().describe("Comma-separated list of URLs (e.g. \"https://app.coolify.io,https://app2.coolify.io\")").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("Per-service www/non-www redirect for this compose service."), z.null()]).optional() })).describe("Array of URLs to be applied to containers of a dockercompose application.").optional(), "watch_paths": z.string().describe("The watch paths.").optional(), "use_build_server": z.union([z.boolean().describe("Use build server."), z.null()]).optional(), "use_build_secrets": z.boolean().describe("Use Docker Build Secrets for build-time environment variables.").default(false), "is_git_submodules_enabled": z.boolean().describe("Clone Git submodules.").optional(), "is_git_lfs_enabled": z.boolean().describe("Enable Git LFS.").optional(), "is_git_shallow_clone_enabled": z.boolean().describe("Use a shallow Git clone.").optional(), "disable_build_cache": z.boolean().describe("Disable the build cache.").optional(), "inject_build_args_to_dockerfile": z.boolean().describe("Inject build arguments into the Dockerfile build.").optional(), "include_source_commit_in_build": z.boolean().describe("Include the source commit in the build.").optional(), "is_env_sorting_enabled": z.boolean().describe("Sort environment variables.").optional(), "is_pr_deployments_public_enabled": z.boolean().describe("Make pull request deployments public.").optional(), "stop_grace_period": z.union([z.number().int().gte(1).lte(3600).describe("Container stop grace period in seconds."), z.null()]).optional(), "docker_images_to_keep": z.number().int().gte(0).lte(100).describe("Number of Docker images to retain.").optional(), "is_gzip_enabled": z.boolean().describe("Enable gzip compression.").optional(), "is_stripprefix_enabled": z.boolean().describe("Enable path prefix stripping.").optional(), "is_raw_compose_deployment_enabled": z.boolean().describe("Deploy the raw Docker Compose definition.").optional(), "is_log_drain_enabled": z.boolean().describe("Enable log drain for the application.").optional(), "is_gpu_enabled": z.boolean().describe("Enable GPU support.").optional(), "gpu_driver": z.union([z.string().describe("GPU driver name."), z.null()]).optional(), "gpu_count": z.union([z.string().describe("Number of GPUs to allocate."), z.null()]).optional(), "gpu_device_ids": z.union([z.string().describe("Comma-separated GPU device IDs."), z.null()]).optional(), "gpu_options": z.union([z.string().describe("Additional GPU options."), z.null()]).optional(), "is_consistent_container_name_enabled": z.boolean().describe("Use a consistent container name across deployments.").optional(), "custom_internal_name": z.union([z.string().describe("Custom internal container name."), z.null()]).optional(), "preview_url_template": z.string().describe("Preview URL template.").optional(), "max_restart_count": z.number().int().gte(0).describe("Maximum container restart count before stopping.").optional(), "is_http_basic_auth_enabled": z.boolean().describe("HTTP Basic Authentication enabled.").optional(), "http_basic_auth_username": z.union([z.string().describe("Username for HTTP Basic Authentication"), z.null()]).optional(), "http_basic_auth_password": z.union([z.string().describe("Password for HTTP Basic Authentication"), z.null()]).optional(), "connect_to_docker_network": z.boolean().describe("The flag to connect the service to the predefined Docker network.").optional(), "force_domain_override": z.boolean().describe("Force domain usage even if conflicts are detected. Default is false.").optional(), "autogenerate_domain": z.boolean().describe("If true and domains is empty, auto-generate a domain using the server's wildcard domain or sslip.io fallback. Default: true.").default(true), "is_container_label_escape_enabled": z.boolean().describe("Escape special characters in labels. By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$. If you want to use env variables inside the labels, turn this off.").default(true), "tags": z.array(z.string()).describe("Tags to assign to the application.").optional(), "is_preserve_repository_enabled": z.boolean().describe("Preserve repository during deployment.").default(false) }).refine((body) => Boolean(body["environment_name"]) || Boolean(body["environment_uuid"]), { message: "At least one of environment_name, environment_uuid is required" }) }), responseSchema: z.object({ "uuid": z.string().optional() }), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
8
|
+
{ name: "coolify_create_dockerfile_application", method: "POST", path: "/applications/dockerfile", description: "Create (Dockerfile without git)", inputSchema: z.object({ body: z.object({ "project_uuid": z.string().describe("The project UUID."), "server_uuid": z.string().describe("The server UUID."), "environment_name": z.string().describe("The environment name. You need to provide at least one of environment_name or environment_uuid.").optional(), "environment_uuid": z.string().describe("The environment UUID. You need to provide at least one of environment_name or environment_uuid.").optional(), "dockerfile": z.string().describe("Plain Dockerfile content; the plugin encodes it for Coolify."), "build_pack": z.literal("dockerfile").describe("The build pack type.").optional(), "ports_exposes": z.string().describe("The ports to expose.").optional(), "destination_uuid": z.string().describe("The destination UUID.").optional(), "name": z.string().describe("The application name.").optional(), "description": z.string().describe("The application description.").optional(), "domains": z.string().describe("The application URLs in a comma-separated list.").optional(), "noindex_domains": z.array(z.string()).describe("The subset of the application domains served with an X-Robots-Tag: noindex, nofollow response header, keeping them out of search engines. Entries that are not among the application domains are ignored.").optional(), "docker_registry_image_name": z.string().describe("The docker registry image name.").optional(), "docker_registry_image_tag": z.string().describe("The docker registry image tag.").optional(), "ports_mappings": z.string().describe("The ports mappings.").optional(), "base_directory": z.string().describe("The base directory for all commands.").optional(), "health_check_enabled": z.boolean().describe("Health check enabled.").optional(), "health_check_path": z.string().describe("Health check path.").optional(), "health_check_port": z.union([z.string().describe("Health check port."), z.null()]).optional(), "health_check_host": z.union([z.string().describe("Health check host."), z.null()]).optional(), "health_check_method": z.string().describe("Health check method.").optional(), "health_check_return_code": z.number().int().describe("Health check return code.").optional(), "health_check_scheme": z.string().describe("Health check scheme.").optional(), "health_check_response_text": z.union([z.string().describe("Health check response text."), z.null()]).optional(), "health_check_interval": z.number().int().describe("Health check interval in seconds.").optional(), "health_check_timeout": z.number().int().describe("Health check timeout in seconds.").optional(), "health_check_retries": z.number().int().describe("Health check retries count.").optional(), "health_check_start_period": z.number().int().describe("Health check start period in seconds.").optional(), "limits_memory": z.string().describe("Memory limit.").optional(), "limits_memory_swap": z.string().describe("Memory swap limit.").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness.").optional(), "limits_memory_reservation": z.string().describe("Memory reservation.").optional(), "limits_cpus": z.string().describe("CPU limit.").optional(), "limits_cpuset": z.union([z.string().describe("CPU set."), z.null()]).optional(), "limits_cpu_shares": z.number().int().describe("CPU shares.").optional(), "custom_labels": z.string().describe("Custom labels.").optional(), "custom_docker_run_options": z.string().describe("Custom docker run options.").optional(), "post_deployment_command": z.string().describe("Post deployment command.").optional(), "post_deployment_command_container": z.string().describe("Post deployment command container.").optional(), "pre_deployment_command": z.string().describe("Pre deployment command.").optional(), "pre_deployment_command_container": z.string().describe("Pre deployment command container.").optional(), "manual_webhook_secret_github": z.string().describe("Manual webhook secret for Github.").optional(), "manual_webhook_secret_gitlab": z.string().describe("Manual webhook secret for Gitlab.").optional(), "manual_webhook_secret_bitbucket": z.string().describe("Manual webhook secret for Bitbucket.").optional(), "manual_webhook_secret_gitea": z.string().describe("Manual webhook secret for Gitea.").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("How to set redirect with Traefik / Caddy. www<->non-www."), z.null()]).optional(), "instant_deploy": z.boolean().describe("The flag to indicate if the application should be deployed instantly.").optional(), "is_force_https_enabled": z.boolean().describe("The flag to indicate if HTTPS is forced. Defaults to true.").optional(), "is_preview_deployments_enabled": z.boolean().describe("Enable preview deployments for pull requests.").optional(), "use_build_server": z.union([z.boolean().describe("Use build server."), z.null()]).optional(), "use_build_secrets": z.boolean().describe("Use Docker Build Secrets for build-time environment variables.").default(false), "is_git_submodules_enabled": z.boolean().describe("Clone Git submodules.").optional(), "is_git_lfs_enabled": z.boolean().describe("Enable Git LFS.").optional(), "is_git_shallow_clone_enabled": z.boolean().describe("Use a shallow Git clone.").optional(), "disable_build_cache": z.boolean().describe("Disable the build cache.").optional(), "inject_build_args_to_dockerfile": z.boolean().describe("Inject build arguments into the Dockerfile build.").optional(), "include_source_commit_in_build": z.boolean().describe("Include the source commit in the build.").optional(), "is_env_sorting_enabled": z.boolean().describe("Sort environment variables.").optional(), "is_pr_deployments_public_enabled": z.boolean().describe("Make pull request deployments public.").optional(), "stop_grace_period": z.union([z.number().int().gte(1).lte(3600).describe("Container stop grace period in seconds."), z.null()]).optional(), "docker_images_to_keep": z.number().int().gte(0).lte(100).describe("Number of Docker images to retain.").optional(), "is_gzip_enabled": z.boolean().describe("Enable gzip compression.").optional(), "is_stripprefix_enabled": z.boolean().describe("Enable path prefix stripping.").optional(), "is_raw_compose_deployment_enabled": z.boolean().describe("Deploy the raw Docker Compose definition.").optional(), "is_log_drain_enabled": z.boolean().describe("Enable log drain for the application.").optional(), "is_gpu_enabled": z.boolean().describe("Enable GPU support.").optional(), "gpu_driver": z.union([z.string().describe("GPU driver name."), z.null()]).optional(), "gpu_count": z.union([z.string().describe("Number of GPUs to allocate."), z.null()]).optional(), "gpu_device_ids": z.union([z.string().describe("Comma-separated GPU device IDs."), z.null()]).optional(), "gpu_options": z.union([z.string().describe("Additional GPU options."), z.null()]).optional(), "is_consistent_container_name_enabled": z.boolean().describe("Use a consistent container name across deployments.").optional(), "custom_internal_name": z.union([z.string().describe("Custom internal container name."), z.null()]).optional(), "preview_url_template": z.string().describe("Preview URL template.").optional(), "max_restart_count": z.number().int().gte(0).describe("Maximum container restart count before stopping.").optional(), "is_http_basic_auth_enabled": z.boolean().describe("HTTP Basic Authentication enabled.").optional(), "http_basic_auth_username": z.union([z.string().describe("Username for HTTP Basic Authentication"), z.null()]).optional(), "http_basic_auth_password": z.union([z.string().describe("Password for HTTP Basic Authentication"), z.null()]).optional(), "connect_to_docker_network": z.boolean().describe("The flag to connect the service to the predefined Docker network.").optional(), "force_domain_override": z.boolean().describe("Force domain usage even if conflicts are detected. Default is false.").optional(), "autogenerate_domain": z.boolean().describe("If true and domains is empty, auto-generate a domain using the server's wildcard domain or sslip.io fallback. Default: true.").default(true), "is_container_label_escape_enabled": z.boolean().describe("Escape special characters in labels. By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$. If you want to use env variables inside the labels, turn this off.").default(true), "tags": z.array(z.string()).describe("Tags to assign to the application.").optional() }).refine((body) => Boolean(body["environment_name"]) || Boolean(body["environment_uuid"]), { message: "At least one of environment_name, environment_uuid is required" }) }), responseSchema: z.object({ "uuid": z.string().optional() }), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
9
|
+
{ name: "coolify_create_dockerimage_application", method: "POST", path: "/applications/dockerimage", description: "Create (Docker Image without git)", inputSchema: z.object({ body: z.object({ "project_uuid": z.string().describe("The project UUID."), "server_uuid": z.string().describe("The server UUID."), "environment_name": z.string().describe("The environment name. You need to provide at least one of environment_name or environment_uuid.").optional(), "environment_uuid": z.string().describe("The environment UUID. You need to provide at least one of environment_name or environment_uuid.").optional(), "docker_registry_image_name": z.string().describe("The docker registry image name."), "docker_registry_image_tag": z.string().describe("The docker registry image tag.").optional(), "ports_exposes": z.string().describe("The ports to expose.").optional(), "destination_uuid": z.string().describe("The destination UUID.").optional(), "name": z.string().describe("The application name.").optional(), "description": z.string().describe("The application description.").optional(), "domains": z.string().describe("The application URLs in a comma-separated list.").optional(), "noindex_domains": z.array(z.string()).describe("The subset of the application domains served with an X-Robots-Tag: noindex, nofollow response header, keeping them out of search engines. Entries that are not among the application domains are ignored.").optional(), "ports_mappings": z.string().describe("The ports mappings.").optional(), "health_check_enabled": z.boolean().describe("Health check enabled.").optional(), "health_check_path": z.string().describe("Health check path.").optional(), "health_check_port": z.union([z.string().describe("Health check port."), z.null()]).optional(), "health_check_host": z.union([z.string().describe("Health check host."), z.null()]).optional(), "health_check_method": z.string().describe("Health check method.").optional(), "health_check_return_code": z.number().int().describe("Health check return code.").optional(), "health_check_scheme": z.string().describe("Health check scheme.").optional(), "health_check_response_text": z.union([z.string().describe("Health check response text."), z.null()]).optional(), "health_check_interval": z.number().int().describe("Health check interval in seconds.").optional(), "health_check_timeout": z.number().int().describe("Health check timeout in seconds.").optional(), "health_check_retries": z.number().int().describe("Health check retries count.").optional(), "health_check_start_period": z.number().int().describe("Health check start period in seconds.").optional(), "limits_memory": z.string().describe("Memory limit.").optional(), "limits_memory_swap": z.string().describe("Memory swap limit.").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness.").optional(), "limits_memory_reservation": z.string().describe("Memory reservation.").optional(), "limits_cpus": z.string().describe("CPU limit.").optional(), "limits_cpuset": z.union([z.string().describe("CPU set."), z.null()]).optional(), "limits_cpu_shares": z.number().int().describe("CPU shares.").optional(), "custom_labels": z.string().describe("Custom labels.").optional(), "custom_docker_run_options": z.string().describe("Custom docker run options.").optional(), "post_deployment_command": z.string().describe("Post deployment command.").optional(), "post_deployment_command_container": z.string().describe("Post deployment command container.").optional(), "pre_deployment_command": z.string().describe("Pre deployment command.").optional(), "pre_deployment_command_container": z.string().describe("Pre deployment command container.").optional(), "manual_webhook_secret_github": z.string().describe("Manual webhook secret for Github.").optional(), "manual_webhook_secret_gitlab": z.string().describe("Manual webhook secret for Gitlab.").optional(), "manual_webhook_secret_bitbucket": z.string().describe("Manual webhook secret for Bitbucket.").optional(), "manual_webhook_secret_gitea": z.string().describe("Manual webhook secret for Gitea.").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("How to set redirect with Traefik / Caddy. www<->non-www."), z.null()]).optional(), "instant_deploy": z.boolean().describe("The flag to indicate if the application should be deployed instantly.").optional(), "is_force_https_enabled": z.boolean().describe("The flag to indicate if HTTPS is forced. Defaults to true.").optional(), "is_preview_deployments_enabled": z.boolean().describe("Enable preview deployments for pull requests.").optional(), "use_build_server": z.union([z.boolean().describe("Use build server."), z.null()]).optional(), "use_build_secrets": z.boolean().describe("Use Docker Build Secrets for build-time environment variables.").default(false), "is_git_submodules_enabled": z.boolean().describe("Clone Git submodules.").optional(), "is_git_lfs_enabled": z.boolean().describe("Enable Git LFS.").optional(), "is_git_shallow_clone_enabled": z.boolean().describe("Use a shallow Git clone.").optional(), "disable_build_cache": z.boolean().describe("Disable the build cache.").optional(), "inject_build_args_to_dockerfile": z.boolean().describe("Inject build arguments into the Dockerfile build.").optional(), "include_source_commit_in_build": z.boolean().describe("Include the source commit in the build.").optional(), "is_env_sorting_enabled": z.boolean().describe("Sort environment variables.").optional(), "is_pr_deployments_public_enabled": z.boolean().describe("Make pull request deployments public.").optional(), "stop_grace_period": z.union([z.number().int().gte(1).lte(3600).describe("Container stop grace period in seconds."), z.null()]).optional(), "docker_images_to_keep": z.number().int().gte(0).lte(100).describe("Number of Docker images to retain.").optional(), "is_gzip_enabled": z.boolean().describe("Enable gzip compression.").optional(), "is_stripprefix_enabled": z.boolean().describe("Enable path prefix stripping.").optional(), "is_raw_compose_deployment_enabled": z.boolean().describe("Deploy the raw Docker Compose definition.").optional(), "is_log_drain_enabled": z.boolean().describe("Enable log drain for the application.").optional(), "is_gpu_enabled": z.boolean().describe("Enable GPU support.").optional(), "gpu_driver": z.union([z.string().describe("GPU driver name."), z.null()]).optional(), "gpu_count": z.union([z.string().describe("Number of GPUs to allocate."), z.null()]).optional(), "gpu_device_ids": z.union([z.string().describe("Comma-separated GPU device IDs."), z.null()]).optional(), "gpu_options": z.union([z.string().describe("Additional GPU options."), z.null()]).optional(), "is_consistent_container_name_enabled": z.boolean().describe("Use a consistent container name across deployments.").optional(), "custom_internal_name": z.union([z.string().describe("Custom internal container name."), z.null()]).optional(), "preview_url_template": z.string().describe("Preview URL template.").optional(), "max_restart_count": z.number().int().gte(0).describe("Maximum container restart count before stopping.").optional(), "is_http_basic_auth_enabled": z.boolean().describe("HTTP Basic Authentication enabled.").optional(), "http_basic_auth_username": z.union([z.string().describe("Username for HTTP Basic Authentication"), z.null()]).optional(), "http_basic_auth_password": z.union([z.string().describe("Password for HTTP Basic Authentication"), z.null()]).optional(), "connect_to_docker_network": z.boolean().describe("The flag to connect the service to the predefined Docker network.").optional(), "force_domain_override": z.boolean().describe("Force domain usage even if conflicts are detected. Default is false.").optional(), "autogenerate_domain": z.boolean().describe("If true and domains is empty, auto-generate a domain using the server's wildcard domain or sslip.io fallback. Default: true.").default(true), "is_container_label_escape_enabled": z.boolean().describe("Escape special characters in labels. By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$. If you want to use env variables inside the labels, turn this off.").default(true), "tags": z.array(z.string()).describe("Tags to assign to the application.").optional() }).refine((body) => Boolean(body["environment_name"]) || Boolean(body["environment_uuid"]), { message: "At least one of environment_name, environment_uuid is required" }) }), responseSchema: z.object({ "uuid": z.string().optional() }), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
10
|
+
{ name: "coolify_get_application_by_uuid", method: "GET", path: "/applications/{uuid}", description: "Get", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.object({ "id": z.number().int().describe("The application identifier in the database.").optional(), "description": z.union([z.string().describe("The application description."), z.null()]).optional(), "repository_project_id": z.union([z.number().int().describe("The repository project identifier."), z.null()]).optional(), "uuid": z.string().describe("The application UUID.").optional(), "name": z.string().describe("The application name.").optional(), "fqdn": z.union([z.string().describe("The application domains."), z.null()]).optional(), "noindex_domains": z.union([z.array(z.string()).describe("The subset of the application domains served with an X-Robots-Tag: noindex, nofollow response header."), z.null()]).optional(), "config_hash": z.string().describe("Configuration hash.").optional(), "git_repository": z.string().describe("Git repository URL.").optional(), "git_branch": z.string().describe("Git branch.").optional(), "git_commit_sha": z.string().describe("Git commit SHA.").optional(), "git_full_url": z.union([z.string().describe("Git full URL."), z.null()]).optional(), "docker_registry_image_name": z.union([z.string().describe("Docker registry image name."), z.null()]).optional(), "docker_registry_image_tag": z.union([z.string().describe("Docker registry image tag."), z.null()]).optional(), "build_pack": z.enum(["nixpacks", "railpack", "static", "dockerfile", "dockercompose"]).describe("Build pack.").optional(), "static_image": z.string().describe("Static image used when static site is deployed.").optional(), "install_command": z.union([z.string().describe("Install command."), z.null()]).optional(), "build_command": z.union([z.string().describe("Build command."), z.null()]).optional(), "start_command": z.union([z.string().describe("Start command."), z.null()]).optional(), "ports_exposes": z.string().describe("Ports exposes.").optional(), "ports_mappings": z.union([z.string().describe("Ports mappings."), z.null()]).optional(), "custom_network_aliases": z.union([z.string().describe("Network aliases for Docker container."), z.null()]).optional(), "base_directory": z.string().describe("Base directory for all commands.").optional(), "publish_directory": z.union([z.string().describe("Publish directory."), z.null()]).optional(), "health_check_enabled": z.boolean().describe("Health check enabled.").optional(), "health_check_path": z.string().describe("Health check path.").optional(), "health_check_port": z.union([z.string().describe("Health check port."), z.null()]).optional(), "health_check_host": z.union([z.string().describe("Health check host."), z.null()]).optional(), "health_check_method": z.string().describe("Health check method.").optional(), "health_check_return_code": z.number().int().describe("Health check return code.").optional(), "health_check_scheme": z.string().describe("Health check scheme.").optional(), "health_check_response_text": z.union([z.string().describe("Health check response text."), z.null()]).optional(), "health_check_interval": z.number().int().describe("Health check interval in seconds.").optional(), "health_check_timeout": z.number().int().describe("Health check timeout in seconds.").optional(), "health_check_retries": z.number().int().describe("Health check retries count.").optional(), "health_check_start_period": z.number().int().describe("Health check start period in seconds.").optional(), "health_check_type": z.enum(["http", "cmd"]).describe("Health check type: http or cmd.").optional(), "health_check_command": z.union([z.string().describe("Health check command for CMD type."), z.null()]).optional(), "limits_memory": z.string().describe("Memory limit.").optional(), "limits_memory_swap": z.string().describe("Memory swap limit.").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness.").optional(), "limits_memory_reservation": z.string().describe("Memory reservation.").optional(), "limits_cpus": z.string().describe("CPU limit.").optional(), "limits_cpuset": z.union([z.string().describe("CPU set."), z.null()]).optional(), "limits_cpu_shares": z.number().int().describe("CPU shares.").optional(), "status": z.string().describe("Application status.").optional(), "preview_url_template": z.string().describe("Preview URL template.").optional(), "max_restart_count": z.number().int().describe("Maximum container restart count before stopping.").optional(), "destination_type": z.string().describe("Destination type.").optional(), "destination_id": z.number().int().describe("Destination identifier.").optional(), "source_id": z.union([z.number().int().describe("Source identifier."), z.null()]).optional(), "private_key_id": z.union([z.string().describe("Private key identifier."), z.null()]).optional(), "environment_id": z.number().int().describe("Environment identifier.").optional(), "dockerfile": z.union([z.string().describe("Dockerfile content. Used for dockerfile build pack."), z.null()]).optional(), "dockerfile_location": z.union([z.string().describe("Dockerfile location."), z.null()]).optional(), "custom_labels": z.union([z.string().describe("Custom labels."), z.null()]).optional(), "dockerfile_target_build": z.union([z.string().describe("Dockerfile target build."), z.null()]).optional(), "manual_webhook_secret_github": z.union([z.string().describe("Manual webhook secret for GitHub."), z.null()]).optional(), "manual_webhook_secret_gitlab": z.union([z.string().describe("Manual webhook secret for GitLab."), z.null()]).optional(), "manual_webhook_secret_bitbucket": z.union([z.string().describe("Manual webhook secret for Bitbucket."), z.null()]).optional(), "manual_webhook_secret_gitea": z.union([z.string().describe("Manual webhook secret for Gitea."), z.null()]).optional(), "docker_compose_location": z.string().describe("Docker compose location.").optional(), "docker_compose": z.union([z.string().describe("Docker compose content. Used for docker compose build pack."), z.null()]).optional(), "docker_compose_raw": z.union([z.string().describe("Docker compose raw content."), z.null()]).optional(), "docker_compose_domains": z.union([z.string().describe("Docker compose domains."), z.null()]).optional(), "docker_compose_custom_start_command": z.union([z.string().describe("Docker compose custom start command."), z.null()]).optional(), "docker_compose_custom_build_command": z.union([z.string().describe("Docker compose custom build command."), z.null()]).optional(), "swarm_replicas": z.union([z.number().int().describe("Swarm replicas. Only used for swarm deployments."), z.null()]).optional(), "swarm_placement_constraints": z.union([z.string().describe("Swarm placement constraints. Only used for swarm deployments."), z.null()]).optional(), "custom_docker_run_options": z.union([z.string().describe("Custom docker run options."), z.null()]).optional(), "post_deployment_command": z.union([z.string().describe("Post deployment command."), z.null()]).optional(), "post_deployment_command_container": z.union([z.string().describe("Post deployment command container."), z.null()]).optional(), "pre_deployment_command": z.union([z.string().describe("Pre deployment command."), z.null()]).optional(), "pre_deployment_command_container": z.union([z.string().describe("Pre deployment command container."), z.null()]).optional(), "watch_paths": z.union([z.string().describe("Watch paths."), z.null()]).optional(), "custom_healthcheck_found": z.boolean().describe("Custom healthcheck found.").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("How to set redirect with Traefik / Caddy. www<->non-www."), z.null()]).optional(), "created_at": z.string().datetime({ offset: true }).describe("The date and time when the application was created.").optional(), "updated_at": z.string().datetime({ offset: true }).describe("The date and time when the application was last updated.").optional(), "deleted_at": z.union([z.string().datetime({ offset: true }).describe("The date and time when the application was deleted."), z.null()]).optional(), "compose_parsing_version": z.string().describe("How Coolify parse the compose file.").optional(), "custom_nginx_configuration": z.union([z.string().describe("Custom Nginx configuration base64 encoded."), z.null()]).optional(), "is_http_basic_auth_enabled": z.boolean().describe("HTTP Basic Authentication enabled.").optional(), "http_basic_auth_username": z.union([z.string().describe("Username for HTTP Basic Authentication"), z.null()]).optional(), "http_basic_auth_password": z.union([z.string().describe("Password for HTTP Basic Authentication"), z.null()]).optional(), "settings": z.object({ "is_static": z.boolean().optional(), "is_git_submodules_enabled": z.boolean().optional(), "is_git_lfs_enabled": z.boolean().optional(), "is_auto_deploy_enabled": z.boolean().optional(), "is_force_https_enabled": z.boolean().optional(), "is_debug_enabled": z.boolean().optional(), "is_preview_deployments_enabled": z.boolean().optional(), "is_log_drain_enabled": z.boolean().optional(), "is_gpu_enabled": z.boolean().optional(), "gpu_driver": z.union([z.string(), z.null()]).optional(), "gpu_count": z.union([z.string(), z.null()]).optional(), "gpu_device_ids": z.union([z.string(), z.null()]).optional(), "gpu_options": z.union([z.string(), z.null()]).optional(), "is_include_timestamps": z.boolean().optional(), "is_swarm_only_worker_nodes": z.boolean().optional(), "is_raw_compose_deployment_enabled": z.boolean().optional(), "is_build_server_enabled": z.boolean().optional(), "is_consistent_container_name_enabled": z.boolean().optional(), "is_gzip_enabled": z.boolean().optional(), "is_stripprefix_enabled": z.boolean().optional(), "connect_to_docker_network": z.boolean().optional(), "custom_internal_name": z.union([z.string(), z.null()]).optional(), "is_container_label_escape_enabled": z.boolean().optional(), "is_env_sorting_enabled": z.boolean().optional(), "is_container_label_readonly_enabled": z.boolean().optional(), "is_preserve_repository_enabled": z.boolean().optional(), "disable_build_cache": z.boolean().optional(), "is_spa": z.boolean().optional(), "is_git_shallow_clone_enabled": z.boolean().optional(), "is_pr_deployments_public_enabled": z.boolean().optional(), "use_build_secrets": z.union([z.boolean(), z.string()]).optional(), "inject_build_args_to_dockerfile": z.boolean().optional(), "include_source_commit_in_build": z.boolean().optional(), "docker_images_to_keep": z.number().int().optional(), "stop_grace_period": z.union([z.number().int(), z.null()]).optional() }).describe("Application settings.").optional() }).describe("Application model"), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
11
11
|
{ name: "coolify_delete_application_by_uuid", method: "DELETE", path: "/applications/{uuid}", description: "Delete", inputSchema: z.object({ "uuid": z.string(), "delete_configurations": z.boolean().default(true), "delete_volumes": z.boolean().default(true), "docker_cleanup": z.boolean().default(true), "delete_connected_networks": z.boolean().default(true) }), responseSchema: z.object({ "message": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "query", name: "delete_configurations" }, { location: "query", name: "delete_volumes" }, { location: "query", name: "docker_cleanup" }, { location: "query", name: "delete_connected_networks" }], annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false } },
|
|
12
12
|
{ name: "coolify_update_application_by_uuid", method: "PATCH", path: "/applications/{uuid}", description: "Update", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "project_uuid": z.string().describe("The project UUID.").optional(), "server_uuid": z.string().describe("The server UUID.").optional(), "environment_name": z.string().describe("The environment name.").optional(), "github_app_uuid": z.string().describe("The Github App UUID.").optional(), "git_repository": z.string().describe("The git repository URL.").optional(), "git_branch": z.string().describe("The git branch.").optional(), "ports_exposes": z.string().describe("The ports to expose.").optional(), "destination_uuid": z.string().describe("The destination UUID.").optional(), "build_pack": z.enum(["nixpacks", "railpack", "static", "dockerfile", "dockercompose"]).describe("The build pack type.").optional(), "name": z.string().describe("The application name.").optional(), "description": z.string().describe("The application description.").optional(), "domains": z.string().describe("The application URLs in a comma-separated list.").optional(), "noindex_domains": z.array(z.string()).describe("The subset of the application domains served with an X-Robots-Tag: noindex, nofollow response header, keeping them out of search engines. Entries that are not among the application domains are ignored.").optional(), "git_commit_sha": z.string().describe("The git commit SHA.").optional(), "docker_registry_image_name": z.string().describe("The docker registry image name.").optional(), "docker_registry_image_tag": z.string().describe("The docker registry image tag.").optional(), "is_static": z.boolean().describe("The flag to indicate if the application is static.").optional(), "is_spa": z.boolean().describe("The flag to indicate if the application is a single-page application (SPA). Only relevant when is_static is true.").optional(), "is_auto_deploy_enabled": z.boolean().describe("The flag to indicate if auto-deploy is enabled on git push. Defaults to true.").optional(), "is_force_https_enabled": z.boolean().describe("The flag to indicate if HTTPS is forced. Defaults to true.").optional(), "is_preview_deployments_enabled": z.boolean().describe("Enable preview deployments for pull requests.").optional(), "install_command": z.string().describe("The install command.").optional(), "build_command": z.string().describe("The build command.").optional(), "start_command": z.string().describe("The start command.").optional(), "ports_mappings": z.string().describe("The ports mappings.").optional(), "base_directory": z.string().describe("The base directory for all commands.").optional(), "publish_directory": z.string().describe("The publish directory.").optional(), "health_check_enabled": z.boolean().describe("Health check enabled.").optional(), "health_check_path": z.string().describe("Health check path.").optional(), "health_check_port": z.union([z.string().describe("Health check port."), z.null()]).optional(), "health_check_host": z.union([z.string().describe("Health check host."), z.null()]).optional(), "health_check_method": z.string().describe("Health check method.").optional(), "health_check_return_code": z.number().int().describe("Health check return code.").optional(), "health_check_scheme": z.string().describe("Health check scheme.").optional(), "health_check_response_text": z.union([z.string().describe("Health check response text."), z.null()]).optional(), "health_check_interval": z.number().int().describe("Health check interval in seconds.").optional(), "health_check_timeout": z.number().int().describe("Health check timeout in seconds.").optional(), "health_check_retries": z.number().int().describe("Health check retries count.").optional(), "health_check_start_period": z.number().int().describe("Health check start period in seconds.").optional(), "limits_memory": z.string().describe("Memory limit.").optional(), "limits_memory_swap": z.string().describe("Memory swap limit.").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness.").optional(), "limits_memory_reservation": z.string().describe("Memory reservation.").optional(), "limits_cpus": z.string().describe("CPU limit.").optional(), "limits_cpuset": z.union([z.string().describe("CPU set."), z.null()]).optional(), "limits_cpu_shares": z.number().int().describe("CPU shares.").optional(), "custom_labels": z.string().describe("Custom labels.").optional(), "custom_docker_run_options": z.string().describe("Custom docker run options.").optional(), "post_deployment_command": z.string().describe("Post deployment command.").optional(), "post_deployment_command_container": z.string().describe("Post deployment command container.").optional(), "pre_deployment_command": z.string().describe("Pre deployment command.").optional(), "pre_deployment_command_container": z.string().describe("Pre deployment command container.").optional(), "manual_webhook_secret_github": z.string().describe("Manual webhook secret for Github.").optional(), "manual_webhook_secret_gitlab": z.string().describe("Manual webhook secret for Gitlab.").optional(), "manual_webhook_secret_bitbucket": z.string().describe("Manual webhook secret for Bitbucket.").optional(), "manual_webhook_secret_gitea": z.string().describe("Manual webhook secret for Gitea.").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("How to set redirect with Traefik / Caddy. www<->non-www."), z.null()]).optional(), "instant_deploy": z.boolean().describe("The flag to indicate if the application should be deployed instantly.").optional(), "dockerfile": z.string().describe("The Dockerfile content.").optional(), "dockerfile_location": z.string().describe("The Dockerfile location in the repository.").optional(), "docker_compose_location": z.string().describe("The Docker Compose location.").optional(), "docker_compose_custom_start_command": z.string().describe("The Docker Compose custom start command.").optional(), "docker_compose_custom_build_command": z.string().describe("The Docker Compose custom build command.").optional(), "docker_compose_domains": z.array(z.object({ "name": z.string().describe("The service name as defined in docker-compose.").optional(), "domain": z.string().describe("Comma-separated list of URLs (e.g. \"https://app.coolify.io,https://app2.coolify.io\")").optional(), "redirect": z.union([z.enum(["www", "non-www", "both"]).describe("Per-service www/non-www redirect for this compose service."), z.null()]).optional() })).describe("Array of URLs to be applied to containers of a dockercompose application.").optional(), "watch_paths": z.string().describe("The watch paths.").optional(), "use_build_server": z.union([z.boolean().describe("Use build server."), z.null()]).optional(), "use_build_secrets": z.boolean().describe("Use Docker Build Secrets for build-time environment variables.").optional(), "is_git_submodules_enabled": z.boolean().describe("Clone Git submodules.").optional(), "is_git_lfs_enabled": z.boolean().describe("Enable Git LFS.").optional(), "is_git_shallow_clone_enabled": z.boolean().describe("Use a shallow Git clone.").optional(), "disable_build_cache": z.boolean().describe("Disable the build cache.").optional(), "inject_build_args_to_dockerfile": z.boolean().describe("Inject build arguments into the Dockerfile build.").optional(), "include_source_commit_in_build": z.boolean().describe("Include the source commit in the build.").optional(), "is_env_sorting_enabled": z.boolean().describe("Sort environment variables.").optional(), "is_pr_deployments_public_enabled": z.boolean().describe("Make pull request deployments public.").optional(), "stop_grace_period": z.union([z.number().int().gte(1).lte(3600).describe("Container stop grace period in seconds."), z.null()]).optional(), "docker_images_to_keep": z.number().int().gte(0).lte(100).describe("Number of Docker images to retain.").optional(), "is_gzip_enabled": z.boolean().describe("Enable gzip compression.").optional(), "is_stripprefix_enabled": z.boolean().describe("Enable path prefix stripping.").optional(), "is_raw_compose_deployment_enabled": z.boolean().describe("Deploy the raw Docker Compose definition.").optional(), "is_log_drain_enabled": z.boolean().describe("Enable log drain for the application.").optional(), "is_gpu_enabled": z.boolean().describe("Enable GPU support.").optional(), "gpu_driver": z.union([z.string().describe("GPU driver name."), z.null()]).optional(), "gpu_count": z.union([z.string().describe("Number of GPUs to allocate."), z.null()]).optional(), "gpu_device_ids": z.union([z.string().describe("Comma-separated GPU device IDs."), z.null()]).optional(), "gpu_options": z.union([z.string().describe("Additional GPU options."), z.null()]).optional(), "is_consistent_container_name_enabled": z.boolean().describe("Use a consistent container name across deployments.").optional(), "custom_internal_name": z.union([z.string().describe("Custom internal container name."), z.null()]).optional(), "preview_url_template": z.string().describe("Preview URL template.").optional(), "max_restart_count": z.number().int().gte(0).describe("Maximum container restart count before stopping.").optional(), "connect_to_docker_network": z.boolean().describe("The flag to connect the service to the predefined Docker network.").optional(), "force_domain_override": z.boolean().describe("Force domain usage even if conflicts are detected. Default is false.").optional(), "is_container_label_escape_enabled": z.boolean().describe("Escape special characters in labels. By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$. If you want to use env variables inside the labels, turn this off.").default(true), "is_preserve_repository_enabled": z.boolean().describe("Preserve git repository during application update. If false, the existing repository will be removed and replaced with the new one. If true, the existing repository will be kept and the new one will be ignored. Default is false.").optional() }) }), responseSchema: z.object({ "uuid": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
13
13
|
{ name: "coolify_get_application_logs_by_uuid", method: "GET", path: "/applications/{uuid}/logs", description: "Get application logs.", inputSchema: z.object({ "uuid": z.string(), "lines": z.number().int().default(100), "show_timestamps": z.boolean().default(false) }), responseSchema: z.object({ "logs": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "query", name: "lines" }, { location: "query", name: "show_timestamps" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
@@ -55,10 +55,10 @@ export const operations = [
|
|
|
55
55
|
{ name: "coolify_clone_application_by_uuid", method: "POST", path: "/applications/{uuid}/clone", description: "Clone", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "destination_uuid": z.string().describe("UUID of the destination to clone into."), "name": z.union([z.string().describe("Optional name for the cloned application."), z.null().describe("Optional name for the cloned application.")]).describe("Optional name for the cloned application.").optional(), "clone_volumes": z.boolean().describe("Whether to clone volume data.").default(false) }) }), responseSchema: z.object({ "uuid": z.string().optional(), "message": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
56
56
|
{ name: "coolify_list_application_rollback_images", method: "GET", path: "/applications/{uuid}/rollback-images", description: "List Rollback Images", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.object({ "current": z.union([z.string(), z.null()]).optional(), "images": z.array(z.object({ "tag": z.string().optional(), "created_at": z.string().optional(), "is_current": z.boolean().optional() })).optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
57
57
|
{ name: "coolify_rollback_application_by_uuid", method: "POST", path: "/applications/{uuid}/rollback", description: "Rollback", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "commit": z.string().describe("Image tag / commit to roll back to.") }) }), responseSchema: z.object({ "message": z.string().optional(), "deployment_uuid": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
58
|
-
{ name: "coolify_list_application_destinations", method: "GET", path: "/applications/{uuid}/destinations", description: "List Destinations", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.
|
|
58
|
+
{ name: "coolify_list_application_destinations", method: "GET", path: "/applications/{uuid}/destinations", description: "List Destinations", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.array(z.record(z.string(), z.any())), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
59
59
|
{ name: "coolify_add_application_destination", method: "POST", path: "/applications/{uuid}/destinations", description: "Add Destination", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "destination_uuid": z.string() }) }), responseSchema: z.null(), responseKind: "empty", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
60
60
|
{ name: "coolify_remove_application_destination", method: "DELETE", path: "/applications/{uuid}/destinations/{destination_uuid}", description: "Remove Destination", inputSchema: z.object({ "uuid": z.string(), "destination_uuid": z.string() }), responseSchema: z.null(), responseKind: "empty", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "destination_uuid" }], annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false } },
|
|
61
|
-
{ name: "coolify_list_cloud_init_scripts", method: "GET", path: "/cloud-init-scripts", description: "List Cloud-init Scripts", inputSchema: z.object({}), responseSchema: z.
|
|
61
|
+
{ name: "coolify_list_cloud_init_scripts", method: "GET", path: "/cloud-init-scripts", description: "List Cloud-init Scripts", inputSchema: z.object({}), responseSchema: z.array(z.record(z.string(), z.any())), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
62
62
|
{ name: "coolify_create_cloud_init_script", method: "POST", path: "/cloud-init-scripts", description: "Create Cloud-init Script", inputSchema: z.object({ body: z.object({ "name": z.string(), "script": z.string().describe("Bash script (#!) or cloud-config YAML.") }) }), responseSchema: z.null(), responseKind: "empty", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
63
63
|
{ name: "coolify_get_cloud_init_script_by_uuid", method: "GET", path: "/cloud-init-scripts/{uuid}", description: "Get Cloud-init Script", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.null(), responseKind: "empty", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
64
64
|
{ name: "coolify_delete_cloud_init_script_by_uuid", method: "DELETE", path: "/cloud-init-scripts/{uuid}", description: "Delete Cloud-init Script", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.null(), responseKind: "empty", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false } },
|
|
@@ -70,22 +70,22 @@ export const operations = [
|
|
|
70
70
|
{ name: "coolify_update_cloud_token_by_uuid", method: "PATCH", path: "/cloud-tokens/{uuid}", description: "Update Cloud Provider Token", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "name": z.string().describe("The friendly name for the token.").optional() }) }), responseSchema: z.object({ "uuid": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
71
71
|
{ name: "coolify_validate_cloud_token_by_uuid", method: "POST", path: "/cloud-tokens/{uuid}/validate", description: "Validate Cloud Provider Token", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.object({ "valid": z.boolean().optional(), "message": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
72
72
|
{ name: "coolify_list_databases", method: "GET", path: "/databases", description: "List", inputSchema: z.object({}), responseSchema: z.array(z.object({ "uuid": z.string(), "name": z.string().optional(), "database_type": z.string().optional(), "environment_id": z.number().int().optional(), "status": z.string().optional() }).catchall(z.any())), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
73
|
-
{ name: "coolify_get_database_backups_by_uuid", method: "GET", path: "/databases/{uuid}/backups", description: "Get", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.string(), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
74
|
-
{ name: "coolify_create_database_backup", method: "POST", path: "/databases/{uuid}/backups", description: "Create Backup", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "frequency": z.string().describe("Backup frequency (cron expression or: every_minute, hourly, daily, weekly, monthly, yearly)"), "enabled": z.boolean().describe("Whether the backup is enabled").default(true), "save_s3": z.boolean().describe("Whether to save backups to S3").default(false), "s3_storage_uuid": z.string().describe("S3 storage UUID (required if save_s3 is true)").optional(), "databases_to_backup": z.string().describe("Comma separated list of databases to backup").optional(), "dump_all": z.boolean().describe("Whether to dump all databases").default(false), "backup_now": z.boolean().describe("Whether to trigger backup immediately after creation").optional(), "database_backup_retention_amount_locally": z.number().int().describe("Number of backups to retain locally").optional(), "database_backup_retention_days_locally": z.number().int().describe("Number of days to retain backups locally").optional(), "database_backup_retention_max_storage_locally": z.number().describe("Max storage (GB) for local backups").optional(), "database_backup_retention_amount_s3": z.number().int().describe("Number of backups to retain in S3").optional(), "database_backup_retention_days_s3": z.number().int().describe("Number of days to retain backups in S3").optional(), "database_backup_retention_max_storage_s3": z.number().describe("Max storage (GB) for S3 backups").optional(), "timeout": z.number().int().describe("Backup job timeout in seconds (min: 60, max: 36000)").default(3600) }) }), responseSchema: z.object({ "uuid": z.string().
|
|
75
|
-
{ name: "coolify_get_database_by_uuid", method: "GET", path: "/databases/{uuid}", description: "Get", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.string(), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
73
|
+
{ name: "coolify_get_database_backups_by_uuid", method: "GET", path: "/databases/{uuid}/backups", description: "Get", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.array(z.record(z.string(), z.any())), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
74
|
+
{ name: "coolify_create_database_backup", method: "POST", path: "/databases/{uuid}/backups", description: "Create Backup", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "frequency": z.string().describe("Backup frequency (cron expression or: every_minute, hourly, daily, weekly, monthly, yearly)"), "enabled": z.boolean().describe("Whether the backup is enabled").default(true), "save_s3": z.boolean().describe("Whether to save backups to S3").default(false), "s3_storage_uuid": z.string().describe("S3 storage UUID (required if save_s3 is true)").optional(), "databases_to_backup": z.string().describe("Comma separated list of databases to backup").optional(), "dump_all": z.boolean().describe("Whether to dump all databases").default(false), "backup_now": z.boolean().describe("Whether to trigger backup immediately after creation").optional(), "database_backup_retention_amount_locally": z.number().int().describe("Number of backups to retain locally").optional(), "database_backup_retention_days_locally": z.number().int().describe("Number of days to retain backups locally").optional(), "database_backup_retention_max_storage_locally": z.number().describe("Max storage (GB) for local backups").optional(), "database_backup_retention_amount_s3": z.number().int().describe("Number of backups to retain in S3").optional(), "database_backup_retention_days_s3": z.number().int().describe("Number of days to retain backups in S3").optional(), "database_backup_retention_max_storage_s3": z.number().describe("Max storage (GB) for S3 backups").optional(), "timeout": z.number().int().describe("Backup job timeout in seconds (min: 60, max: 36000)").default(3600) }) }), responseSchema: z.object({ "uuid": z.string().optional(), "message": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
75
|
+
{ name: "coolify_get_database_by_uuid", method: "GET", path: "/databases/{uuid}", description: "Get", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.record(z.string(), z.any()), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
76
76
|
{ name: "coolify_delete_database_by_uuid", method: "DELETE", path: "/databases/{uuid}", description: "Delete", inputSchema: z.object({ "uuid": z.string(), "delete_configurations": z.boolean().default(true), "delete_volumes": z.boolean().default(true), "docker_cleanup": z.boolean().default(true), "delete_connected_networks": z.boolean().default(true) }), responseSchema: z.object({ "message": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "query", name: "delete_configurations" }, { location: "query", name: "delete_volumes" }, { location: "query", name: "docker_cleanup" }, { location: "query", name: "delete_connected_networks" }], annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false } },
|
|
77
|
-
{ name: "coolify_update_database_by_uuid", method: "PATCH", path: "/databases/{uuid}", description: "Update", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "postgres_user": z.string().describe("PostgreSQL user").optional(), "postgres_password": z.string().describe("PostgreSQL password").optional(), "postgres_db": z.string().describe("PostgreSQL database").optional(), "postgres_initdb_args": z.string().describe("PostgreSQL initdb args").optional(), "postgres_host_auth_method": z.string().describe("PostgreSQL host auth method").optional(), "postgres_conf": z.string().describe("PostgreSQL conf").optional(), "clickhouse_admin_user": z.string().describe("Clickhouse admin user").optional(), "clickhouse_admin_password": z.string().describe("Clickhouse admin password").optional(), "dragonfly_password": z.string().describe("DragonFly password").optional(), "redis_password": z.string().describe("Redis password").optional(), "redis_conf": z.string().describe("Redis conf").optional(), "keydb_password": z.string().describe("KeyDB password").optional(), "keydb_conf": z.string().describe("KeyDB conf").optional(), "mariadb_conf": z.string().describe("MariaDB conf").optional(), "mariadb_root_password": z.string().describe("MariaDB root password").optional(), "mariadb_user": z.string().describe("MariaDB user").optional(), "mariadb_password": z.string().describe("MariaDB password").optional(), "mariadb_database": z.string().describe("MariaDB database").optional(), "mongo_conf": z.string().describe("Mongo conf").optional(), "mongo_initdb_root_username": z.string().describe("Mongo initdb root username").optional(), "mongo_initdb_root_password": z.string().describe("Mongo initdb root password").optional(), "mongo_initdb_database": z.string().describe("Mongo initdb init database").optional(), "mysql_root_password": z.string().describe("MySQL root password").optional(), "mysql_password": z.string().describe("MySQL password").optional(), "mysql_user": z.string().describe("MySQL user").optional(), "mysql_database": z.string().describe("MySQL database").optional(), "mysql_conf": z.string().describe("MySQL conf").optional(), "health_check_enabled": z.boolean().describe("Enable the database healthcheck probe.").optional(), "health_check_interval": z.number().int().gte(1).describe("Healthcheck interval in seconds.").optional(), "health_check_timeout": z.number().int().gte(1).describe("Healthcheck timeout in seconds.").optional(), "health_check_retries": z.number().int().gte(1).describe("Healthcheck retries count.").optional(), "health_check_start_period": z.number().int().gte(0).describe("Healthcheck start period in seconds.").optional(), "custom_docker_run_options": z.string().describe("Docker run options for the database container.").optional() }) }), responseSchema: z.null(), responseKind: "
|
|
77
|
+
{ name: "coolify_update_database_by_uuid", method: "PATCH", path: "/databases/{uuid}", description: "Update", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "postgres_user": z.string().describe("PostgreSQL user").optional(), "postgres_password": z.string().describe("PostgreSQL password").optional(), "postgres_db": z.string().describe("PostgreSQL database").optional(), "postgres_initdb_args": z.string().describe("PostgreSQL initdb args").optional(), "postgres_host_auth_method": z.string().describe("PostgreSQL host auth method").optional(), "postgres_conf": z.string().describe("PostgreSQL conf").optional(), "clickhouse_admin_user": z.string().describe("Clickhouse admin user").optional(), "clickhouse_admin_password": z.string().describe("Clickhouse admin password").optional(), "dragonfly_password": z.string().describe("DragonFly password").optional(), "redis_password": z.string().describe("Redis password").optional(), "redis_conf": z.string().describe("Redis conf").optional(), "keydb_password": z.string().describe("KeyDB password").optional(), "keydb_conf": z.string().describe("KeyDB conf").optional(), "mariadb_conf": z.string().describe("MariaDB conf").optional(), "mariadb_root_password": z.string().describe("MariaDB root password").optional(), "mariadb_user": z.string().describe("MariaDB user").optional(), "mariadb_password": z.string().describe("MariaDB password").optional(), "mariadb_database": z.string().describe("MariaDB database").optional(), "mongo_conf": z.string().describe("Mongo conf").optional(), "mongo_initdb_root_username": z.string().describe("Mongo initdb root username").optional(), "mongo_initdb_root_password": z.string().describe("Mongo initdb root password").optional(), "mongo_initdb_database": z.string().describe("Mongo initdb init database").optional(), "mysql_root_password": z.string().describe("MySQL root password").optional(), "mysql_password": z.string().describe("MySQL password").optional(), "mysql_user": z.string().describe("MySQL user").optional(), "mysql_database": z.string().describe("MySQL database").optional(), "mysql_conf": z.string().describe("MySQL conf").optional(), "health_check_enabled": z.boolean().describe("Enable the database healthcheck probe.").optional(), "health_check_interval": z.number().int().gte(1).describe("Healthcheck interval in seconds.").optional(), "health_check_timeout": z.number().int().gte(1).describe("Healthcheck timeout in seconds.").optional(), "health_check_retries": z.number().int().gte(1).describe("Healthcheck retries count.").optional(), "health_check_start_period": z.number().int().gte(0).describe("Healthcheck start period in seconds.").optional(), "custom_docker_run_options": z.string().describe("Docker run options for the database container.").optional() }) }), responseSchema: z.union([z.record(z.string(), z.any()), z.null()]), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
78
78
|
{ name: "coolify_delete_backup_configuration_by_uuid", method: "DELETE", path: "/databases/{uuid}/backups/{scheduled_backup_uuid}", description: "Delete backup configuration", inputSchema: z.object({ "uuid": z.string(), "scheduled_backup_uuid": z.string(), "delete_s3": z.boolean().default(false) }), responseSchema: z.object({ "message": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "scheduled_backup_uuid" }, { location: "query", name: "delete_s3" }], annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false } },
|
|
79
79
|
{ name: "coolify_update_database_backup", method: "PATCH", path: "/databases/{uuid}/backups/{scheduled_backup_uuid}", description: "Update", inputSchema: z.object({ "uuid": z.string(), "scheduled_backup_uuid": z.string(), body: z.object({ "save_s3": z.boolean().describe("Whether data is saved in s3 or not").optional(), "s3_storage_uuid": z.string().describe("S3 storage UUID").optional(), "backup_now": z.boolean().describe("Whether to take a backup now or not").optional(), "enabled": z.boolean().describe("Whether the backup is enabled or not").optional(), "databases_to_backup": z.string().describe("Comma separated list of databases to backup").optional(), "dump_all": z.boolean().describe("Whether all databases are dumped or not").optional(), "frequency": z.string().describe("Frequency of the backup").optional(), "database_backup_retention_amount_locally": z.number().int().describe("Retention amount of the backup locally").optional(), "database_backup_retention_days_locally": z.number().int().describe("Retention days of the backup locally").optional(), "database_backup_retention_max_storage_locally": z.number().describe("Max storage of the backup locally").optional(), "database_backup_retention_amount_s3": z.number().int().describe("Retention amount of the backup in s3").optional(), "database_backup_retention_days_s3": z.number().int().describe("Retention days of the backup in s3").optional(), "database_backup_retention_max_storage_s3": z.number().describe("Max storage of the backup in S3").optional(), "timeout": z.number().int().describe("Backup job timeout in seconds (min: 60, max: 36000)").default(3600) }) }), responseSchema: z.null(), responseKind: "empty", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "scheduled_backup_uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
80
|
-
{ name: "coolify_create_database_postgresql", method: "POST", path: "/databases/postgresql", description: "Create (PostgreSQL)", inputSchema: z.object({ body: z.object({ "server_uuid": z.string().describe("UUID of the server"), "project_uuid": z.string().describe("UUID of the project"), "environment_name": z.string().describe("Name of the environment. You need to provide at least one of environment_name or environment_uuid."), "environment_uuid": z.string().describe("UUID of the environment. You need to provide at least one of environment_name or environment_uuid."), "postgres_user": z.string().describe("PostgreSQL user").optional(), "postgres_password": z.string().describe("PostgreSQL password").optional(), "postgres_db": z.string().describe("PostgreSQL database").optional(), "postgres_initdb_args": z.string().describe("PostgreSQL initdb args").optional(), "postgres_host_auth_method": z.string().describe("PostgreSQL host auth method").optional(), "postgres_conf": z.string().describe("PostgreSQL conf").optional(), "destination_uuid": z.string().describe("UUID of the destination if the server has multiple destinations").optional(), "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "instant_deploy": z.boolean().describe("Instant deploy the database").optional(), "tags": z.array(z.string()).describe("Tags to assign to the database.").optional() }) }), responseSchema: z.null(), responseKind: "
|
|
81
|
-
{ name: "coolify_create_database_clickhouse", method: "POST", path: "/databases/clickhouse", description: "Create (Clickhouse)", inputSchema: z.object({ body: z.object({ "server_uuid": z.string().describe("UUID of the server"), "project_uuid": z.string().describe("UUID of the project"), "environment_name": z.string().describe("Name of the environment. You need to provide at least one of environment_name or environment_uuid."), "environment_uuid": z.string().describe("UUID of the environment. You need to provide at least one of environment_name or environment_uuid."), "destination_uuid": z.string().describe("UUID of the destination if the server has multiple destinations").optional(), "clickhouse_admin_user": z.string().describe("Clickhouse admin user").optional(), "clickhouse_admin_password": z.string().describe("Clickhouse admin password").optional(), "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "instant_deploy": z.boolean().describe("Instant deploy the database").optional(), "tags": z.array(z.string()).describe("Tags to assign to the database.").optional() }) }), responseSchema: z.null(), responseKind: "
|
|
82
|
-
{ name: "coolify_create_database_dragonfly", method: "POST", path: "/databases/dragonfly", description: "Create (DragonFly)", inputSchema: z.object({ body: z.object({ "server_uuid": z.string().describe("UUID of the server"), "project_uuid": z.string().describe("UUID of the project"), "environment_name": z.string().describe("Name of the environment. You need to provide at least one of environment_name or environment_uuid."), "environment_uuid": z.string().describe("UUID of the environment. You need to provide at least one of environment_name or environment_uuid."), "destination_uuid": z.string().describe("UUID of the destination if the server has multiple destinations").optional(), "dragonfly_password": z.string().describe("DragonFly password").optional(), "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "instant_deploy": z.boolean().describe("Instant deploy the database").optional(), "tags": z.array(z.string()).describe("Tags to assign to the database.").optional() }) }), responseSchema: z.null(), responseKind: "
|
|
83
|
-
{ name: "coolify_create_database_redis", method: "POST", path: "/databases/redis", description: "Create (Redis)", inputSchema: z.object({ body: z.object({ "server_uuid": z.string().describe("UUID of the server"), "project_uuid": z.string().describe("UUID of the project"), "environment_name": z.string().describe("Name of the environment. You need to provide at least one of environment_name or environment_uuid."), "environment_uuid": z.string().describe("UUID of the environment. You need to provide at least one of environment_name or environment_uuid."), "destination_uuid": z.string().describe("UUID of the destination if the server has multiple destinations").optional(), "redis_password": z.string().describe("Redis password").optional(), "redis_conf": z.string().describe("Redis conf").optional(), "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "instant_deploy": z.boolean().describe("Instant deploy the database").optional(), "tags": z.array(z.string()).describe("Tags to assign to the database.").optional() }) }), responseSchema: z.null(), responseKind: "
|
|
84
|
-
{ name: "coolify_create_database_keydb", method: "POST", path: "/databases/keydb", description: "Create (KeyDB)", inputSchema: z.object({ body: z.object({ "server_uuid": z.string().describe("UUID of the server"), "project_uuid": z.string().describe("UUID of the project"), "environment_name": z.string().describe("Name of the environment. You need to provide at least one of environment_name or environment_uuid."), "environment_uuid": z.string().describe("UUID of the environment. You need to provide at least one of environment_name or environment_uuid."), "destination_uuid": z.string().describe("UUID of the destination if the server has multiple destinations").optional(), "keydb_password": z.string().describe("KeyDB password").optional(), "keydb_conf": z.string().describe("KeyDB conf").optional(), "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "instant_deploy": z.boolean().describe("Instant deploy the database").optional(), "tags": z.array(z.string()).describe("Tags to assign to the database.").optional() }) }), responseSchema: z.null(), responseKind: "
|
|
85
|
-
{ name: "coolify_create_database_mariadb", method: "POST", path: "/databases/mariadb", description: "Create (MariaDB)", inputSchema: z.object({ body: z.object({ "server_uuid": z.string().describe("UUID of the server"), "project_uuid": z.string().describe("UUID of the project"), "environment_name": z.string().describe("Name of the environment. You need to provide at least one of environment_name or environment_uuid."), "environment_uuid": z.string().describe("UUID of the environment. You need to provide at least one of environment_name or environment_uuid."), "destination_uuid": z.string().describe("UUID of the destination if the server has multiple destinations").optional(), "mariadb_conf": z.string().describe("MariaDB conf").optional(), "mariadb_root_password": z.string().describe("MariaDB root password").optional(), "mariadb_user": z.string().describe("MariaDB user").optional(), "mariadb_password": z.string().describe("MariaDB password").optional(), "mariadb_database": z.string().describe("MariaDB database").optional(), "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "instant_deploy": z.boolean().describe("Instant deploy the database").optional(), "tags": z.array(z.string()).describe("Tags to assign to the database.").optional() }) }), responseSchema: z.null(), responseKind: "
|
|
86
|
-
{ name: "coolify_create_database_mysql", method: "POST", path: "/databases/mysql", description: "Create (MySQL)", inputSchema: z.object({ body: z.object({ "server_uuid": z.string().describe("UUID of the server"), "project_uuid": z.string().describe("UUID of the project"), "environment_name": z.string().describe("Name of the environment. You need to provide at least one of environment_name or environment_uuid."), "environment_uuid": z.string().describe("UUID of the environment. You need to provide at least one of environment_name or environment_uuid."), "destination_uuid": z.string().describe("UUID of the destination if the server has multiple destinations").optional(), "mysql_root_password": z.string().describe("MySQL root password").optional(), "mysql_password": z.string().describe("MySQL password").optional(), "mysql_user": z.string().describe("MySQL user").optional(), "mysql_database": z.string().describe("MySQL database").optional(), "mysql_conf": z.string().describe("MySQL conf").optional(), "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "instant_deploy": z.boolean().describe("Instant deploy the database").optional(), "tags": z.array(z.string()).describe("Tags to assign to the database.").optional() }) }), responseSchema: z.null(), responseKind: "
|
|
87
|
-
{ name: "coolify_create_database_mongodb", method: "POST", path: "/databases/mongodb", description: "Create (MongoDB)", inputSchema: z.object({ body: z.object({ "server_uuid": z.string().describe("UUID of the server"), "project_uuid": z.string().describe("UUID of the project"), "environment_name": z.string().describe("Name of the environment. You need to provide at least one of environment_name or environment_uuid."), "environment_uuid": z.string().describe("UUID of the environment. You need to provide at least one of environment_name or environment_uuid."), "destination_uuid": z.string().describe("UUID of the destination if the server has multiple destinations").optional(), "mongo_conf": z.string().describe("MongoDB conf").optional(), "mongo_initdb_root_username": z.string().describe("MongoDB initdb root username").optional(), "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "instant_deploy": z.boolean().describe("Instant deploy the database").optional(), "tags": z.array(z.string()).describe("Tags to assign to the database.").optional() }) }), responseSchema: z.null(), responseKind: "
|
|
88
|
-
{ name: "coolify_get_database_logs_by_uuid", method: "GET", path: "/databases/{uuid}/logs", description: "Get database logs.", inputSchema: z.object({ "uuid": z.string()
|
|
80
|
+
{ name: "coolify_create_database_postgresql", method: "POST", path: "/databases/postgresql", description: "Create (PostgreSQL)", inputSchema: z.object({ body: z.object({ "server_uuid": z.string().describe("UUID of the server"), "project_uuid": z.string().describe("UUID of the project"), "environment_name": z.string().describe("Name of the environment. You need to provide at least one of environment_name or environment_uuid.").optional(), "environment_uuid": z.string().describe("UUID of the environment. You need to provide at least one of environment_name or environment_uuid.").optional(), "postgres_user": z.string().describe("PostgreSQL user").optional(), "postgres_password": z.string().describe("PostgreSQL password").optional(), "postgres_db": z.string().describe("PostgreSQL database").optional(), "postgres_initdb_args": z.string().describe("PostgreSQL initdb args").optional(), "postgres_host_auth_method": z.string().describe("PostgreSQL host auth method").optional(), "postgres_conf": z.string().describe("PostgreSQL conf").optional(), "destination_uuid": z.string().describe("UUID of the destination if the server has multiple destinations").optional(), "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "instant_deploy": z.boolean().describe("Instant deploy the database").optional(), "tags": z.array(z.string()).describe("Tags to assign to the database.").optional() }).refine((body) => Boolean(body["environment_name"]) || Boolean(body["environment_uuid"]), { message: "At least one of environment_name, environment_uuid is required" }) }), responseSchema: z.union([z.record(z.string(), z.any()), z.null()]), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
81
|
+
{ name: "coolify_create_database_clickhouse", method: "POST", path: "/databases/clickhouse", description: "Create (Clickhouse)", inputSchema: z.object({ body: z.object({ "server_uuid": z.string().describe("UUID of the server"), "project_uuid": z.string().describe("UUID of the project"), "environment_name": z.string().describe("Name of the environment. You need to provide at least one of environment_name or environment_uuid.").optional(), "environment_uuid": z.string().describe("UUID of the environment. You need to provide at least one of environment_name or environment_uuid.").optional(), "destination_uuid": z.string().describe("UUID of the destination if the server has multiple destinations").optional(), "clickhouse_admin_user": z.string().describe("Clickhouse admin user").optional(), "clickhouse_admin_password": z.string().describe("Clickhouse admin password").optional(), "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "instant_deploy": z.boolean().describe("Instant deploy the database").optional(), "tags": z.array(z.string()).describe("Tags to assign to the database.").optional() }).refine((body) => Boolean(body["environment_name"]) || Boolean(body["environment_uuid"]), { message: "At least one of environment_name, environment_uuid is required" }) }), responseSchema: z.union([z.record(z.string(), z.any()), z.null()]), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
82
|
+
{ name: "coolify_create_database_dragonfly", method: "POST", path: "/databases/dragonfly", description: "Create (DragonFly)", inputSchema: z.object({ body: z.object({ "server_uuid": z.string().describe("UUID of the server"), "project_uuid": z.string().describe("UUID of the project"), "environment_name": z.string().describe("Name of the environment. You need to provide at least one of environment_name or environment_uuid.").optional(), "environment_uuid": z.string().describe("UUID of the environment. You need to provide at least one of environment_name or environment_uuid.").optional(), "destination_uuid": z.string().describe("UUID of the destination if the server has multiple destinations").optional(), "dragonfly_password": z.string().describe("DragonFly password").optional(), "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "instant_deploy": z.boolean().describe("Instant deploy the database").optional(), "tags": z.array(z.string()).describe("Tags to assign to the database.").optional() }).refine((body) => Boolean(body["environment_name"]) || Boolean(body["environment_uuid"]), { message: "At least one of environment_name, environment_uuid is required" }) }), responseSchema: z.union([z.record(z.string(), z.any()), z.null()]), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
83
|
+
{ name: "coolify_create_database_redis", method: "POST", path: "/databases/redis", description: "Create (Redis)", inputSchema: z.object({ body: z.object({ "server_uuid": z.string().describe("UUID of the server"), "project_uuid": z.string().describe("UUID of the project"), "environment_name": z.string().describe("Name of the environment. You need to provide at least one of environment_name or environment_uuid.").optional(), "environment_uuid": z.string().describe("UUID of the environment. You need to provide at least one of environment_name or environment_uuid.").optional(), "destination_uuid": z.string().describe("UUID of the destination if the server has multiple destinations").optional(), "redis_password": z.string().describe("Redis password").optional(), "redis_conf": z.string().describe("Redis conf").optional(), "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "instant_deploy": z.boolean().describe("Instant deploy the database").optional(), "tags": z.array(z.string()).describe("Tags to assign to the database.").optional() }).refine((body) => Boolean(body["environment_name"]) || Boolean(body["environment_uuid"]), { message: "At least one of environment_name, environment_uuid is required" }) }), responseSchema: z.union([z.record(z.string(), z.any()), z.null()]), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
84
|
+
{ name: "coolify_create_database_keydb", method: "POST", path: "/databases/keydb", description: "Create (KeyDB)", inputSchema: z.object({ body: z.object({ "server_uuid": z.string().describe("UUID of the server"), "project_uuid": z.string().describe("UUID of the project"), "environment_name": z.string().describe("Name of the environment. You need to provide at least one of environment_name or environment_uuid.").optional(), "environment_uuid": z.string().describe("UUID of the environment. You need to provide at least one of environment_name or environment_uuid.").optional(), "destination_uuid": z.string().describe("UUID of the destination if the server has multiple destinations").optional(), "keydb_password": z.string().describe("KeyDB password").optional(), "keydb_conf": z.string().describe("KeyDB conf").optional(), "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "instant_deploy": z.boolean().describe("Instant deploy the database").optional(), "tags": z.array(z.string()).describe("Tags to assign to the database.").optional() }).refine((body) => Boolean(body["environment_name"]) || Boolean(body["environment_uuid"]), { message: "At least one of environment_name, environment_uuid is required" }) }), responseSchema: z.union([z.record(z.string(), z.any()), z.null()]), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
85
|
+
{ name: "coolify_create_database_mariadb", method: "POST", path: "/databases/mariadb", description: "Create (MariaDB)", inputSchema: z.object({ body: z.object({ "server_uuid": z.string().describe("UUID of the server"), "project_uuid": z.string().describe("UUID of the project"), "environment_name": z.string().describe("Name of the environment. You need to provide at least one of environment_name or environment_uuid.").optional(), "environment_uuid": z.string().describe("UUID of the environment. You need to provide at least one of environment_name or environment_uuid.").optional(), "destination_uuid": z.string().describe("UUID of the destination if the server has multiple destinations").optional(), "mariadb_conf": z.string().describe("MariaDB conf").optional(), "mariadb_root_password": z.string().describe("MariaDB root password").optional(), "mariadb_user": z.string().describe("MariaDB user").optional(), "mariadb_password": z.string().describe("MariaDB password").optional(), "mariadb_database": z.string().describe("MariaDB database").optional(), "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "instant_deploy": z.boolean().describe("Instant deploy the database").optional(), "tags": z.array(z.string()).describe("Tags to assign to the database.").optional() }).refine((body) => Boolean(body["environment_name"]) || Boolean(body["environment_uuid"]), { message: "At least one of environment_name, environment_uuid is required" }) }), responseSchema: z.union([z.record(z.string(), z.any()), z.null()]), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
86
|
+
{ name: "coolify_create_database_mysql", method: "POST", path: "/databases/mysql", description: "Create (MySQL)", inputSchema: z.object({ body: z.object({ "server_uuid": z.string().describe("UUID of the server"), "project_uuid": z.string().describe("UUID of the project"), "environment_name": z.string().describe("Name of the environment. You need to provide at least one of environment_name or environment_uuid.").optional(), "environment_uuid": z.string().describe("UUID of the environment. You need to provide at least one of environment_name or environment_uuid.").optional(), "destination_uuid": z.string().describe("UUID of the destination if the server has multiple destinations").optional(), "mysql_root_password": z.string().describe("MySQL root password").optional(), "mysql_password": z.string().describe("MySQL password").optional(), "mysql_user": z.string().describe("MySQL user").optional(), "mysql_database": z.string().describe("MySQL database").optional(), "mysql_conf": z.string().describe("MySQL conf").optional(), "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "instant_deploy": z.boolean().describe("Instant deploy the database").optional(), "tags": z.array(z.string()).describe("Tags to assign to the database.").optional() }).refine((body) => Boolean(body["environment_name"]) || Boolean(body["environment_uuid"]), { message: "At least one of environment_name, environment_uuid is required" }) }), responseSchema: z.union([z.record(z.string(), z.any()), z.null()]), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
87
|
+
{ name: "coolify_create_database_mongodb", method: "POST", path: "/databases/mongodb", description: "Create (MongoDB)", inputSchema: z.object({ body: z.object({ "server_uuid": z.string().describe("UUID of the server"), "project_uuid": z.string().describe("UUID of the project"), "environment_name": z.string().describe("Name of the environment. You need to provide at least one of environment_name or environment_uuid.").optional(), "environment_uuid": z.string().describe("UUID of the environment. You need to provide at least one of environment_name or environment_uuid.").optional(), "destination_uuid": z.string().describe("UUID of the destination if the server has multiple destinations").optional(), "mongo_conf": z.string().describe("MongoDB conf").optional(), "mongo_initdb_root_username": z.string().describe("MongoDB initdb root username").optional(), "name": z.string().describe("Name of the database").optional(), "description": z.string().describe("Description of the database").optional(), "image": z.string().describe("Docker Image of the database").optional(), "is_public": z.boolean().describe("Is the database public?").optional(), "public_port": z.number().int().describe("Public port of the database").optional(), "public_port_timeout": z.number().int().describe("Public port timeout in seconds (default: 3600)").optional(), "limits_memory": z.string().describe("Memory limit of the database").optional(), "limits_memory_swap": z.string().describe("Memory swap limit of the database").optional(), "limits_memory_swappiness": z.number().int().describe("Memory swappiness of the database").optional(), "limits_memory_reservation": z.string().describe("Memory reservation of the database").optional(), "limits_cpus": z.string().describe("CPU limit of the database").optional(), "limits_cpuset": z.string().describe("CPU set of the database").optional(), "limits_cpu_shares": z.number().int().describe("CPU shares of the database").optional(), "instant_deploy": z.boolean().describe("Instant deploy the database").optional(), "tags": z.array(z.string()).describe("Tags to assign to the database.").optional() }).refine((body) => Boolean(body["environment_name"]) || Boolean(body["environment_uuid"]), { message: "At least one of environment_name, environment_uuid is required" }) }), responseSchema: z.union([z.record(z.string(), z.any()), z.null()]), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
88
|
+
{ name: "coolify_get_database_logs_by_uuid", method: "GET", path: "/databases/{uuid}/logs", description: "Get database logs.", inputSchema: z.object({ "uuid": z.string(), "lines": z.number().int().default(100), "show_timestamps": z.boolean().default(false) }), responseSchema: z.object({ "logs": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "query", name: "lines" }, { location: "query", name: "show_timestamps" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
89
89
|
{ name: "coolify_delete_backup_execution_by_uuid", method: "DELETE", path: "/databases/{uuid}/backups/{scheduled_backup_uuid}/executions/{execution_uuid}", description: "Delete backup execution", inputSchema: z.object({ "uuid": z.string(), "scheduled_backup_uuid": z.string(), "execution_uuid": z.string(), "delete_s3": z.boolean().default(false) }), responseSchema: z.object({ "message": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "scheduled_backup_uuid" }, { location: "path", name: "execution_uuid" }, { location: "query", name: "delete_s3" }], annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false } },
|
|
90
90
|
{ name: "coolify_list_backup_executions", method: "GET", path: "/databases/{uuid}/backups/{scheduled_backup_uuid}/executions", description: "List backup executions", inputSchema: z.object({ "uuid": z.string(), "scheduled_backup_uuid": z.string() }), responseSchema: z.object({ "executions": z.array(z.object({ "uuid": z.string().optional(), "filename": z.string().optional(), "size": z.number().int().optional(), "created_at": z.string().optional(), "message": z.string().optional(), "status": z.string().optional() })).optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "scheduled_backup_uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
91
91
|
{ name: "coolify_move_database_by_uuid", method: "POST", path: "/databases/{uuid}/move", description: "Move", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "environment_uuid": z.string().describe("UUID of the target environment.") }) }), responseSchema: z.object({ "message": z.string().optional(), "uuid": z.string().optional(), "project_uuid": z.string().optional(), "environment_uuid": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
@@ -122,7 +122,7 @@ export const operations = [
|
|
|
122
122
|
{ name: "coolify_get_digitalocean_images", method: "GET", path: "/digitalocean/images", description: "Get DigitalOcean images", inputSchema: z.object({ "cloud_provider_token_uuid": z.string().optional(), "cloud_provider_token_id": z.string().optional() }), responseSchema: z.null(), responseKind: "empty", parameters: [{ location: "query", name: "cloud_provider_token_uuid" }, { location: "query", name: "cloud_provider_token_id" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
123
123
|
{ name: "coolify_get_digitalocean_ssh_keys", method: "GET", path: "/digitalocean/ssh-keys", description: "Get DigitalOcean SSH keys", inputSchema: z.object({ "cloud_provider_token_uuid": z.string().optional(), "cloud_provider_token_id": z.string().optional() }), responseSchema: z.null(), responseKind: "empty", parameters: [{ location: "query", name: "cloud_provider_token_uuid" }, { location: "query", name: "cloud_provider_token_id" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
124
124
|
{ name: "coolify_create_digitalocean_server", method: "POST", path: "/servers/digitalocean", description: "Create a server on DigitalOcean", inputSchema: z.object({}), responseSchema: z.null(), responseKind: "empty", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
125
|
-
{ name: "coolify_list_github_apps", method: "GET", path: "/github-apps", description: "List", inputSchema: z.object({}), responseSchema: z.array(z.object({ "id": z.number().int().optional(), "uuid": z.string().optional(), "name": z.string().optional(), "organization": z.union([z.string(), z.null()]).optional(), "api_url": z.string().optional(), "html_url": z.string().optional(), "custom_user": z.string().optional(), "custom_port": z.number().int().optional(), "app_id": z.number().int().optional(), "installation_id": z.number().int().optional(), "client_id": z.string().optional(), "private_key_id": z.
|
|
125
|
+
{ name: "coolify_list_github_apps", method: "GET", path: "/github-apps", description: "List", inputSchema: z.object({}), responseSchema: z.array(z.object({ "id": z.number().int().optional(), "uuid": z.string().optional(), "name": z.string().optional(), "organization": z.union([z.string(), z.null()]).optional(), "api_url": z.string().optional(), "html_url": z.string().optional(), "custom_user": z.string().optional(), "custom_port": z.number().int().optional(), "app_id": z.union([z.number().int(), z.null()]).optional(), "installation_id": z.union([z.number().int(), z.null()]).optional(), "client_id": z.union([z.string(), z.null()]).optional(), "private_key_id": z.string().optional(), "is_system_wide": z.boolean().optional(), "is_public": z.boolean().optional(), "team_id": z.number().int().optional(), "type": z.string().optional() })), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
126
126
|
{ name: "coolify_create_github_app", method: "POST", path: "/github-apps", description: "Create GitHub App", inputSchema: z.object({ body: z.object({ "name": z.string().describe("Name of the GitHub app."), "organization": z.union([z.string().describe("Organization to associate the app with."), z.null()]).optional(), "api_url": z.string().describe("API URL for the GitHub app (e.g., https://api.github.com).").optional(), "html_url": z.string().describe("HTML URL for the GitHub app (e.g., https://github.com)."), "custom_user": z.string().describe("Custom user for SSH access (default: git).").optional(), "custom_port": z.number().int().describe("Custom port for SSH access (default: 22).").optional(), "app_id": z.number().int().describe("GitHub App ID from GitHub."), "installation_id": z.number().int().describe("GitHub Installation ID."), "client_id": z.string().describe("GitHub OAuth App Client ID."), "client_secret": z.string().describe("GitHub OAuth App Client Secret."), "webhook_secret": z.string().describe("Webhook secret for GitHub webhooks.").optional(), "private_key_uuid": z.string().describe("UUID of an existing private key for GitHub App authentication."), "is_system_wide": z.boolean().describe("Is this app system-wide (cloud only).").optional() }) }), responseSchema: z.object({ "id": z.number().int().optional(), "uuid": z.string().optional(), "name": z.string().optional(), "organization": z.union([z.string(), z.null()]).optional(), "api_url": z.string().optional(), "html_url": z.string().optional(), "custom_user": z.string().optional(), "custom_port": z.number().int().optional(), "app_id": z.number().int().optional(), "installation_id": z.number().int().optional(), "client_id": z.string().optional(), "private_key_id": z.number().int().optional(), "is_system_wide": z.boolean().optional(), "team_id": z.number().int().optional() }), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
127
127
|
{ name: "coolify_load_repositories", method: "GET", path: "/github-apps/{github_app_id}/repositories", description: "Load Repositories for a GitHub App", inputSchema: z.object({ "github_app_id": z.number().int() }), responseSchema: z.object({ "repositories": z.array(z.record(z.string(), z.any())).optional() }), responseKind: "json", parameters: [{ location: "path", name: "github_app_id" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
128
128
|
{ name: "coolify_load_branches", method: "GET", path: "/github-apps/{github_app_id}/repositories/{owner}/{repo}/branches", description: "Load Branches for a GitHub Repository", inputSchema: z.object({ "github_app_id": z.number().int(), "owner": z.string(), "repo": z.string() }), responseSchema: z.object({ "branches": z.array(z.record(z.string(), z.any())).optional() }), responseKind: "json", parameters: [{ location: "path", name: "github_app_id" }, { location: "path", name: "owner" }, { location: "path", name: "repo" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
@@ -139,17 +139,17 @@ export const operations = [
|
|
|
139
139
|
{ name: "coolify_get_hetzner_firewalls", method: "GET", path: "/hetzner/firewalls", description: "Get Hetzner Firewalls", inputSchema: z.object({ "cloud_provider_token_uuid": z.string().optional(), "cloud_provider_token_id": z.string().optional() }), responseSchema: z.array(z.object({ "id": z.number().int().optional(), "name": z.string().optional() })), responseKind: "json", parameters: [{ location: "query", name: "cloud_provider_token_uuid" }, { location: "query", name: "cloud_provider_token_id" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
140
140
|
{ name: "coolify_get_hetzner_networks", method: "GET", path: "/hetzner/networks", description: "Get Hetzner Networks", inputSchema: z.object({ "cloud_provider_token_uuid": z.string().optional(), "cloud_provider_token_id": z.string().optional() }), responseSchema: z.array(z.object({ "id": z.number().int().optional(), "name": z.string().optional(), "ip_range": z.string().optional() })), responseKind: "json", parameters: [{ location: "query", name: "cloud_provider_token_uuid" }, { location: "query", name: "cloud_provider_token_id" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
141
141
|
{ name: "coolify_create_hetzner_server", method: "POST", path: "/servers/hetzner", description: "Create Hetzner Server", inputSchema: z.object({ body: z.object({ "cloud_provider_token_uuid": z.string().describe("Cloud provider token UUID. Required if cloud_provider_token_id is not provided.").optional(), "cloud_provider_token_id": z.string().describe("Deprecated: Use cloud_provider_token_uuid instead. Cloud provider token UUID.").optional(), "location": z.string().describe("Hetzner location name"), "server_type": z.string().describe("Hetzner server type name"), "image": z.number().int().describe("Hetzner image ID"), "name": z.string().describe("Server name (auto-generated if not provided)").optional(), "private_key_uuid": z.string().describe("Private key UUID"), "enable_ipv4": z.boolean().describe("Enable IPv4 (default: true)").optional(), "enable_ipv6": z.boolean().describe("Enable IPv6 (default: true)").optional(), "enable_backups": z.boolean().describe("Enable Hetzner server backups after creation (adds 20% to the monthly server fee)").optional(), "hetzner_ssh_key_ids": z.array(z.number().int()).describe("Additional Hetzner SSH key IDs").optional(), "hetzner_firewall_ids": z.array(z.number().int()).describe("Existing Hetzner firewall IDs to apply during server creation").optional(), "hetzner_network_ids": z.array(z.number().int()).describe("Existing Hetzner network IDs to attach during server creation").optional(), "cloud_init_script": z.string().describe("Cloud-init YAML script (optional)").optional(), "instant_validate": z.boolean().describe("Validate server immediately after creation").optional() }) }), responseSchema: z.object({ "uuid": z.string().describe("The UUID of the server.").optional(), "hetzner_server_id": z.number().int().describe("The Hetzner server ID.").optional(), "ip": z.string().describe("The server IP address.").optional() }), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
142
|
-
{ name: "coolify_get_current_team_email_notifications", method: "GET", path: "/notifications/email", description: "Get email notification settings", inputSchema: z.object({}), responseSchema: z.
|
|
142
|
+
{ name: "coolify_get_current_team_email_notifications", method: "GET", path: "/notifications/email", description: "Get email notification settings", inputSchema: z.object({}), responseSchema: z.record(z.string(), z.any()), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
143
143
|
{ name: "coolify_update_current_team_email_notifications", method: "PATCH", path: "/notifications/email", description: "Update email notification settings", inputSchema: z.object({}), responseSchema: z.null(), responseKind: "empty", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
144
|
-
{ name: "coolify_get_current_team_discord_notifications", method: "GET", path: "/notifications/discord", description: "Get Discord notification settings", inputSchema: z.object({}), responseSchema: z.
|
|
144
|
+
{ name: "coolify_get_current_team_discord_notifications", method: "GET", path: "/notifications/discord", description: "Get Discord notification settings", inputSchema: z.object({}), responseSchema: z.record(z.string(), z.any()), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
145
145
|
{ name: "coolify_update_current_team_discord_notifications", method: "PATCH", path: "/notifications/discord", description: "Update Discord notification settings", inputSchema: z.object({}), responseSchema: z.null(), responseKind: "empty", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
146
|
-
{ name: "coolify_get_current_team_slack_notifications", method: "GET", path: "/notifications/slack", description: "Get Slack notification settings", inputSchema: z.object({}), responseSchema: z.
|
|
146
|
+
{ name: "coolify_get_current_team_slack_notifications", method: "GET", path: "/notifications/slack", description: "Get Slack notification settings", inputSchema: z.object({}), responseSchema: z.record(z.string(), z.any()), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
147
147
|
{ name: "coolify_update_current_team_slack_notifications", method: "PATCH", path: "/notifications/slack", description: "Update Slack notification settings", inputSchema: z.object({}), responseSchema: z.null(), responseKind: "empty", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
148
|
-
{ name: "coolify_get_current_team_telegram_notifications", method: "GET", path: "/notifications/telegram", description: "Get Telegram notification settings", inputSchema: z.object({}), responseSchema: z.
|
|
148
|
+
{ name: "coolify_get_current_team_telegram_notifications", method: "GET", path: "/notifications/telegram", description: "Get Telegram notification settings", inputSchema: z.object({}), responseSchema: z.record(z.string(), z.any()), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
149
149
|
{ name: "coolify_update_current_team_telegram_notifications", method: "PATCH", path: "/notifications/telegram", description: "Update Telegram notification settings", inputSchema: z.object({}), responseSchema: z.null(), responseKind: "empty", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
150
|
-
{ name: "coolify_get_current_team_pushover_notifications", method: "GET", path: "/notifications/pushover", description: "Get Pushover notification settings", inputSchema: z.object({}), responseSchema: z.
|
|
150
|
+
{ name: "coolify_get_current_team_pushover_notifications", method: "GET", path: "/notifications/pushover", description: "Get Pushover notification settings", inputSchema: z.object({}), responseSchema: z.record(z.string(), z.any()), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
151
151
|
{ name: "coolify_update_current_team_pushover_notifications", method: "PATCH", path: "/notifications/pushover", description: "Update Pushover notification settings", inputSchema: z.object({}), responseSchema: z.null(), responseKind: "empty", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
152
|
-
{ name: "coolify_get_current_team_webhook_notifications", method: "GET", path: "/notifications/webhook", description: "Get webhook notification settings", inputSchema: z.object({}), responseSchema: z.
|
|
152
|
+
{ name: "coolify_get_current_team_webhook_notifications", method: "GET", path: "/notifications/webhook", description: "Get webhook notification settings", inputSchema: z.object({}), responseSchema: z.record(z.string(), z.any()), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
153
153
|
{ name: "coolify_update_current_team_webhook_notifications", method: "PATCH", path: "/notifications/webhook", description: "Update webhook notification settings", inputSchema: z.object({}), responseSchema: z.null(), responseKind: "empty", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
154
154
|
{ name: "coolify_version", method: "GET", path: "/version", description: "Version", inputSchema: z.object({}), responseSchema: z.string(), responseKind: "text", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
155
155
|
{ name: "coolify_enable_api", method: "POST", path: "/enable", description: "Enable API", inputSchema: z.object({}), responseSchema: z.object({ "message": z.string().optional() }), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
@@ -186,10 +186,10 @@ export const operations = [
|
|
|
186
186
|
{ name: "coolify_list_scheduled_task_executions_by_service_uuid", method: "GET", path: "/services/{uuid}/scheduled-tasks/{task_uuid}/executions", description: "List Executions", inputSchema: z.object({ "uuid": z.string(), "task_uuid": z.string() }), responseSchema: z.array(z.object({ "uuid": z.string().describe("The unique identifier of the execution.").optional(), "status": z.enum(["success", "failed", "running"]).describe("The status of the execution.").optional(), "message": z.union([z.string().describe("The output message of the execution."), z.null()]).optional(), "retry_count": z.number().int().describe("The number of retries.").optional(), "duration": z.union([z.number().describe("Duration in seconds."), z.null()]).optional(), "started_at": z.union([z.string().datetime({ offset: true }).describe("When the execution started."), z.null()]).optional(), "finished_at": z.union([z.string().datetime({ offset: true }).describe("When the execution finished."), z.null()]).optional(), "created_at": z.string().datetime({ offset: true }).describe("When the record was created.").optional(), "updated_at": z.string().datetime({ offset: true }).describe("When the record was last updated.").optional() }).describe("Scheduled Task Execution model")), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "task_uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
187
187
|
{ name: "coolify_execute_scheduled_task_by_application_uuid", method: "POST", path: "/applications/{uuid}/scheduled-tasks/{task_uuid}/execute", description: "Execute Task", inputSchema: z.object({ "uuid": z.string(), "task_uuid": z.string() }), responseSchema: z.null(), responseKind: "empty", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "task_uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
188
188
|
{ name: "coolify_execute_scheduled_task_by_service_uuid", method: "POST", path: "/services/{uuid}/scheduled-tasks/{task_uuid}/execute", description: "Execute Task", inputSchema: z.object({ "uuid": z.string(), "task_uuid": z.string() }), responseSchema: z.null(), responseKind: "empty", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "task_uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
189
|
-
{ name: "coolify_list_private_keys", method: "GET", path: "/security/keys", description: "List", inputSchema: z.object({}), responseSchema: z.array(z.object({ "id": z.number().int().optional(), "uuid": z.string().optional(), "name": z.string().optional(), "description": z.string().optional(), "private_key": z.string().optional(), "public_key": z.string().describe("The public key of the private key.").optional(), "fingerprint": z.string().describe("The fingerprint of the private key.").optional(), "is_git_related": z.boolean().optional(), "team_id": z.number().int().optional(), "created_at": z.string().optional(), "updated_at": z.string().optional() }).describe("Private Key model")), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
189
|
+
{ name: "coolify_list_private_keys", method: "GET", path: "/security/keys", description: "List", inputSchema: z.object({}), responseSchema: z.array(z.object({ "id": z.number().int().optional(), "uuid": z.string().optional(), "name": z.string().optional(), "description": z.union([z.string(), z.null()]).optional(), "private_key": z.string().optional(), "public_key": z.string().describe("The public key of the private key.").optional(), "fingerprint": z.string().describe("The fingerprint of the private key.").optional(), "is_git_related": z.boolean().optional(), "team_id": z.number().int().optional(), "created_at": z.string().optional(), "updated_at": z.string().optional() }).describe("Private Key model")), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
190
190
|
{ name: "coolify_create_private_key", method: "POST", path: "/security/keys", description: "Create", inputSchema: z.object({ body: z.object({ "name": z.string().optional(), "description": z.string().optional(), "private_key": z.string() }).strict() }), responseSchema: z.object({ "uuid": z.string().optional() }), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
191
191
|
{ name: "coolify_update_private_key", method: "PATCH", path: "/security/keys", description: "Update", inputSchema: z.object({ body: z.object({ "name": z.string().optional(), "description": z.string().optional(), "private_key": z.string() }).strict() }), responseSchema: z.object({ "uuid": z.string().optional() }), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
192
|
-
{ name: "coolify_get_private_key_by_uuid", method: "GET", path: "/security/keys/{uuid}", description: "Get", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.object({ "id": z.number().int().optional(), "uuid": z.string().optional(), "name": z.string().optional(), "description": z.string().optional(), "private_key": z.string().optional(), "public_key": z.string().describe("The public key of the private key.").optional(), "fingerprint": z.string().describe("The fingerprint of the private key.").optional(), "is_git_related": z.boolean().optional(), "team_id": z.number().int().optional(), "created_at": z.string().optional(), "updated_at": z.string().optional() }).describe("Private Key model"), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
192
|
+
{ name: "coolify_get_private_key_by_uuid", method: "GET", path: "/security/keys/{uuid}", description: "Get", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.object({ "id": z.number().int().optional(), "uuid": z.string().optional(), "name": z.string().optional(), "description": z.union([z.string(), z.null()]).optional(), "private_key": z.string().optional(), "public_key": z.string().describe("The public key of the private key.").optional(), "fingerprint": z.string().describe("The fingerprint of the private key.").optional(), "is_git_related": z.boolean().optional(), "team_id": z.number().int().optional(), "created_at": z.string().optional(), "updated_at": z.string().optional() }).describe("Private Key model"), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
193
193
|
{ name: "coolify_delete_private_key_by_uuid", method: "DELETE", path: "/security/keys/{uuid}", description: "Delete", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.object({ "message": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false } },
|
|
194
194
|
{ name: "coolify_get_server_cloudflare_tunnel", method: "GET", path: "/servers/{uuid}/cloudflare-tunnel", description: "Get Cloudflare Tunnel settings", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.object({ "is_cloudflare_tunnel": z.boolean().optional(), "ip": z.string().optional(), "ip_previous": z.union([z.string(), z.null()]).optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
195
195
|
{ name: "coolify_update_server_cloudflare_tunnel", method: "PATCH", path: "/servers/{uuid}/cloudflare-tunnel", description: "Update Cloudflare Tunnel settings", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "is_cloudflare_tunnel": z.boolean().optional() }) }), responseSchema: z.null(), responseKind: "empty", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
@@ -199,7 +199,7 @@ export const operations = [
|
|
|
199
199
|
{ name: "coolify_update_server_docker_cleanup", method: "PATCH", path: "/servers/{uuid}/docker-cleanup", description: "Update Docker cleanup settings", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "docker_cleanup_frequency": z.string().describe("Cron / human frequency expression.").optional(), "docker_cleanup_threshold": z.number().int().gte(1).lte(99).optional(), "force_docker_cleanup": z.boolean().optional(), "delete_unused_volumes": z.boolean().optional(), "delete_unused_networks": z.boolean().optional(), "disable_application_image_retention": z.boolean().optional() }) }), responseSchema: z.object({ "docker_cleanup_frequency": z.string().optional(), "docker_cleanup_threshold": z.number().int().optional(), "force_docker_cleanup": z.boolean().optional(), "delete_unused_volumes": z.boolean().optional(), "delete_unused_networks": z.boolean().optional(), "disable_application_image_retention": z.boolean().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
200
200
|
{ name: "coolify_run_server_docker_cleanup", method: "POST", path: "/servers/{uuid}/docker-cleanup/run", description: "Run Docker cleanup", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "delete_unused_volumes": z.boolean().optional(), "delete_unused_networks": z.boolean().optional() }).optional() }), responseSchema: z.object({ "message": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
201
201
|
{ name: "coolify_list_server_docker_cleanup_executions", method: "GET", path: "/servers/{uuid}/docker-cleanup/executions", description: "List Docker cleanup executions", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.array(z.object({ "uuid": z.string().optional(), "status": z.string().optional(), "message": z.union([z.string(), z.null()]).optional(), "finished_at": z.union([z.string(), z.null()]).optional(), "created_at": z.string().optional(), "updated_at": z.string().optional() })), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
202
|
-
{ name: "coolify_get_server_log_drains", method: "GET", path: "/servers/{uuid}/log-drains", description: "Get log drain settings", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.object({ "is_logdrain_newrelic_enabled": z.boolean().optional(), "logdrain_newrelic_license_key": z.string().describe("Only present with read:sensitive.").optional(), "logdrain_newrelic_base_uri": z.union([z.string(), z.null()]).optional(), "is_logdrain_axiom_enabled": z.boolean().optional(), "logdrain_axiom_dataset_name": z.union([z.string(), z.null()]).optional(), "logdrain_axiom_api_key": z.string().describe("Only present with read:sensitive.").optional(), "is_logdrain_custom_enabled": z.boolean().optional(), "logdrain_custom_config": z.string().describe("Only present with read:sensitive.").optional(), "logdrain_custom_config_parser": z.string().describe("Only present with read:sensitive.").optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
202
|
+
{ name: "coolify_get_server_log_drains", method: "GET", path: "/servers/{uuid}/log-drains", description: "Get log drain settings", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.object({ "is_logdrain_newrelic_enabled": z.boolean().optional(), "logdrain_newrelic_license_key": z.union([z.string().describe("Only present with read:sensitive."), z.null().describe("Only present with read:sensitive.")]).describe("Only present with read:sensitive.").optional(), "logdrain_newrelic_base_uri": z.union([z.string(), z.null()]).optional(), "is_logdrain_axiom_enabled": z.boolean().optional(), "logdrain_axiom_dataset_name": z.union([z.string(), z.null()]).optional(), "logdrain_axiom_api_key": z.union([z.string().describe("Only present with read:sensitive."), z.null().describe("Only present with read:sensitive.")]).describe("Only present with read:sensitive.").optional(), "is_logdrain_custom_enabled": z.boolean().optional(), "logdrain_custom_config": z.union([z.string().describe("Only present with read:sensitive."), z.null().describe("Only present with read:sensitive.")]).describe("Only present with read:sensitive.").optional(), "logdrain_custom_config_parser": z.union([z.string().describe("Only present with read:sensitive."), z.null().describe("Only present with read:sensitive.")]).describe("Only present with read:sensitive.").optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
203
203
|
{ name: "coolify_update_server_log_drains", method: "PATCH", path: "/servers/{uuid}/log-drains", description: "Update log drain settings", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "is_logdrain_newrelic_enabled": z.boolean().optional(), "logdrain_newrelic_license_key": z.string().optional(), "logdrain_newrelic_base_uri": z.string().optional(), "is_logdrain_axiom_enabled": z.boolean().optional(), "logdrain_axiom_dataset_name": z.string().optional(), "logdrain_axiom_api_key": z.string().optional(), "is_logdrain_custom_enabled": z.boolean().optional(), "logdrain_custom_config": z.string().optional(), "logdrain_custom_config_parser": z.string().optional() }) }), responseSchema: z.null(), responseKind: "empty", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
204
204
|
{ name: "coolify_get_server_proxy", method: "GET", path: "/servers/{uuid}/proxy", description: "Get server proxy", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.object({ "proxy_type": z.union([z.string(), z.null()]).optional(), "status": z.union([z.string(), z.null()]).optional(), "redirect_enabled": z.boolean().optional(), "redirect_url": z.union([z.string(), z.null()]).optional(), "generate_exact_labels": z.boolean().optional(), "configuration": z.union([z.string().describe("Docker Compose proxy configuration when stored in the database. Only present with read:sensitive."), z.null().describe("Docker Compose proxy configuration when stored in the database. Only present with read:sensitive.")]).describe("Docker Compose proxy configuration when stored in the database. Only present with read:sensitive.").optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
205
205
|
{ name: "coolify_update_server_proxy", method: "PATCH", path: "/servers/{uuid}/proxy", description: "Update server proxy", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "redirect_enabled": z.boolean().optional(), "redirect_url": z.union([z.string().describe("Public http(s) redirect URL, or null to clear."), z.null().describe("Public http(s) redirect URL, or null to clear.")]).describe("Public http(s) redirect URL, or null to clear.").optional(), "generate_exact_labels": z.boolean().optional(), "proxy_type": z.enum(["traefik", "caddy", "nginx", "none"]).describe("Proxy type (case-insensitive).").optional() }) }), responseSchema: z.object({ "proxy_type": z.union([z.string(), z.null()]).optional(), "status": z.union([z.string(), z.null()]).optional(), "redirect_enabled": z.boolean().optional(), "redirect_url": z.union([z.string(), z.null()]).optional(), "generate_exact_labels": z.boolean().optional(), "configuration": z.union([z.string(), z.null()]).optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
@@ -235,12 +235,12 @@ export const operations = [
|
|
|
235
235
|
{ name: "coolify_start_service_database_by_service_and_database_uuid", method: "POST", path: "/services/{uuid}/databases/{database_uuid}/start", description: "Start or redeploy service database container", inputSchema: z.object({ "uuid": z.string(), "database_uuid": z.string(), "force": z.boolean().default(false), "latest": z.boolean().default(false) }), responseSchema: z.object({ "message": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "database_uuid" }, { location: "query", name: "force" }, { location: "query", name: "latest" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
236
236
|
{ name: "coolify_restart_service_database_by_service_and_database_uuid", method: "POST", path: "/services/{uuid}/databases/{database_uuid}/restart", description: "Restart service database container", inputSchema: z.object({ "uuid": z.string(), "database_uuid": z.string() }), responseSchema: z.object({ "message": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "database_uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
237
237
|
{ name: "coolify_stop_service_database_by_service_and_database_uuid", method: "POST", path: "/services/{uuid}/databases/{database_uuid}/stop", description: "Stop service database container", inputSchema: z.object({ "uuid": z.string(), "database_uuid": z.string() }), responseSchema: z.object({ "message": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "database_uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
238
|
-
{ name: "coolify_list_services", method: "GET", path: "/services", description: "List", inputSchema: z.object({}), responseSchema: z.array(z.object({ "id": z.number().int().describe("The unique identifier of the service. Only used for database identification.").optional(), "uuid": z.string().describe("The unique identifier of the service.").optional(), "name": z.string().describe("The name of the service.").optional(), "environment_id": z.number().int().describe("The unique identifier of the environment where the service is attached to.").optional(), "server_id": z.number().int().describe("The unique identifier of the server where the service is running.").optional(), "description": z.string().describe("The description of the service.").optional(), "docker_compose_raw": z.string().describe("The raw docker-compose.yml file of the service.").optional(), "docker_compose": z.string().describe("The docker-compose.yml file that is parsed and modified by Coolify.").optional(), "destination_type": z.string().describe("Destination type.").optional(), "destination_id": z.number().int().describe("The unique identifier of the destination where the service is running.").optional(), "connect_to_docker_network": z.boolean().describe("The flag to connect the service to the predefined Docker network.").optional(), "is_container_label_escape_enabled": z.boolean().describe("The flag to enable the container label escape.").optional(), "is_container_label_readonly_enabled": z.boolean().describe("The flag to enable the container label readonly.").optional(), "config_hash": z.string().describe("The hash of the service configuration.").optional(), "service_type": z.union([z.string().describe("The type of the service."), z.null()]).optional(), "created_at": z.string().describe("The date and time when the service was created.").optional(), "updated_at": z.string().describe("The date and time when the service was last updated.").optional(), "deleted_at": z.union([z.string().describe("The date and time when the service was deleted."), z.null()]).optional(), "status": z.string().optional() }).describe("Service model")), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
239
|
-
{ name: "coolify_create_service", method: "POST", path: "/services", description: "Create service", inputSchema: z.object({ body: z.object({ "type": z.string().describe("The one-click service type (e.g. \"actualbudget\", \"calibre-web\", \"gitea-with-mysql\" ...)").optional(), "name": z.string().max(255).describe("Name of the service.").optional(), "description": z.union([z.string().describe("Description of the service."), z.null()]).optional(), "project_uuid": z.string().describe("Project UUID."), "environment_name": z.string().describe("Environment name. You need to provide at least one of environment_name or environment_uuid."), "environment_uuid": z.string().describe("Environment UUID. You need to provide at least one of environment_name or environment_uuid."), "server_uuid": z.string().describe("Server UUID."), "destination_uuid": z.string().describe("Destination UUID. Required if server has multiple destinations.").optional(), "instant_deploy": z.boolean().describe("Start the service immediately after creation.").default(false), "docker_compose_raw": z.string().describe("The base64 encoded Docker Compose content.").optional(), "urls": z.array(z.object({ "name": z.string().describe("The service name as defined in docker-compose.").optional(), "url": z.string().describe("Comma-separated list of URLs (e.g. \"https://app.coolify.io,https://app2.coolify.io\").").optional() })).describe("Array of URLs to be applied to containers of a service.").optional(), "force_domain_override": z.boolean().describe("Force domain override even if conflicts are detected.").default(false), "is_container_label_escape_enabled": z.boolean().describe("Escape special characters in labels. By default, $ (and other chars) is escaped. If you want to use env variables inside the labels, turn this off.").default(true), "tags": z.array(z.string()).describe("Tags to assign to the service.").optional() }) }), responseSchema: z.object({ "uuid": z.string().describe("Service UUID.").optional(), "domains": z.array(z.string()).describe("Service domains.").optional() }), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
240
|
-
{ name: "coolify_get_service_by_uuid", method: "GET", path: "/services/{uuid}", description: "Get", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.object({ "id": z.number().int().describe("The unique identifier of the service. Only used for database identification.").optional(), "uuid": z.string().describe("The unique identifier of the service.").optional(), "name": z.string().describe("The name of the service.").optional(), "environment_id": z.number().int().describe("The unique identifier of the environment where the service is attached to.").optional(), "server_id": z.number().int().describe("The unique identifier of the server where the service is running.").optional(), "description": z.string().describe("The description of the service.").optional(), "docker_compose_raw": z.string().describe("The raw docker-compose.yml file of the service.").optional(), "docker_compose": z.string().describe("The docker-compose.yml file that is parsed and modified by Coolify.").optional(), "destination_type": z.string().describe("Destination type.").optional(), "destination_id": z.number().int().describe("The unique identifier of the destination where the service is running.").optional(), "connect_to_docker_network": z.boolean().describe("The flag to connect the service to the predefined Docker network.").optional(), "is_container_label_escape_enabled": z.boolean().describe("The flag to enable the container label escape.").optional(), "is_container_label_readonly_enabled": z.boolean().describe("The flag to enable the container label readonly.").optional(), "config_hash": z.string().describe("The hash of the service configuration.").optional(), "service_type": z.union([z.string().describe("The type of the service."), z.null()]).optional(), "created_at": z.string().describe("The date and time when the service was created.").optional(), "updated_at": z.string().describe("The date and time when the service was last updated.").optional(), "deleted_at": z.union([z.string().describe("The date and time when the service was deleted."), z.null()]).optional(), "status": z.string().optional() }).describe("Service model"), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
238
|
+
{ name: "coolify_list_services", method: "GET", path: "/services", description: "List", inputSchema: z.object({}), responseSchema: z.array(z.object({ "id": z.number().int().describe("The unique identifier of the service. Only used for database identification.").optional(), "uuid": z.string().describe("The unique identifier of the service.").optional(), "name": z.string().describe("The name of the service.").optional(), "environment_id": z.number().int().describe("The unique identifier of the environment where the service is attached to.").optional(), "server_id": z.number().int().describe("The unique identifier of the server where the service is running.").optional(), "description": z.string().describe("The description of the service.").optional(), "docker_compose_raw": z.string().describe("The raw docker-compose.yml file of the service.").optional(), "docker_compose": z.string().describe("The docker-compose.yml file that is parsed and modified by Coolify.").optional(), "destination_type": z.string().describe("Destination type.").optional(), "destination_id": z.number().int().describe("The unique identifier of the destination where the service is running.").optional(), "connect_to_docker_network": z.boolean().describe("The flag to connect the service to the predefined Docker network.").optional(), "is_container_label_escape_enabled": z.boolean().describe("The flag to enable the container label escape.").optional(), "is_container_label_readonly_enabled": z.boolean().describe("The flag to enable the container label readonly.").optional(), "config_hash": z.union([z.string().describe("The hash of the service configuration."), z.null()]).optional(), "service_type": z.union([z.string().describe("The type of the service."), z.null()]).optional(), "created_at": z.string().describe("The date and time when the service was created.").optional(), "updated_at": z.string().describe("The date and time when the service was last updated.").optional(), "deleted_at": z.union([z.string().describe("The date and time when the service was deleted."), z.null()]).optional(), "status": z.string().optional() }).describe("Service model")), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
239
|
+
{ name: "coolify_create_service", method: "POST", path: "/services", description: "Create service", inputSchema: z.object({ body: z.object({ "type": z.string().describe("The one-click service type (e.g. \"actualbudget\", \"calibre-web\", \"gitea-with-mysql\" ...)").optional(), "name": z.string().max(255).describe("Name of the service.").optional(), "description": z.union([z.string().describe("Description of the service."), z.null()]).optional(), "project_uuid": z.string().describe("Project UUID."), "environment_name": z.string().describe("Environment name. You need to provide at least one of environment_name or environment_uuid.").optional(), "environment_uuid": z.string().describe("Environment UUID. You need to provide at least one of environment_name or environment_uuid.").optional(), "server_uuid": z.string().describe("Server UUID."), "destination_uuid": z.string().describe("Destination UUID. Required if server has multiple destinations.").optional(), "instant_deploy": z.boolean().describe("Start the service immediately after creation.").default(false), "docker_compose_raw": z.string().describe("The base64 encoded Docker Compose content.").optional(), "urls": z.array(z.object({ "name": z.string().describe("The service name as defined in docker-compose.").optional(), "url": z.string().describe("Comma-separated list of URLs (e.g. \"https://app.coolify.io,https://app2.coolify.io\").").optional() })).describe("Array of URLs to be applied to containers of a service.").optional(), "force_domain_override": z.boolean().describe("Force domain override even if conflicts are detected.").default(false), "is_container_label_escape_enabled": z.boolean().describe("Escape special characters in labels. By default, $ (and other chars) is escaped. If you want to use env variables inside the labels, turn this off.").default(true), "tags": z.array(z.string()).describe("Tags to assign to the service.").optional() }).refine((body) => Boolean(body["environment_name"]) || Boolean(body["environment_uuid"]), { message: "At least one of environment_name, environment_uuid is required" }) }), responseSchema: z.object({ "uuid": z.string().describe("Service UUID.").optional(), "domains": z.array(z.string()).describe("Service domains.").optional() }), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
240
|
+
{ name: "coolify_get_service_by_uuid", method: "GET", path: "/services/{uuid}", description: "Get", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.object({ "id": z.number().int().describe("The unique identifier of the service. Only used for database identification.").optional(), "uuid": z.string().describe("The unique identifier of the service.").optional(), "name": z.string().describe("The name of the service.").optional(), "environment_id": z.number().int().describe("The unique identifier of the environment where the service is attached to.").optional(), "server_id": z.number().int().describe("The unique identifier of the server where the service is running.").optional(), "description": z.string().describe("The description of the service.").optional(), "docker_compose_raw": z.string().describe("The raw docker-compose.yml file of the service.").optional(), "docker_compose": z.string().describe("The docker-compose.yml file that is parsed and modified by Coolify.").optional(), "destination_type": z.string().describe("Destination type.").optional(), "destination_id": z.number().int().describe("The unique identifier of the destination where the service is running.").optional(), "connect_to_docker_network": z.boolean().describe("The flag to connect the service to the predefined Docker network.").optional(), "is_container_label_escape_enabled": z.boolean().describe("The flag to enable the container label escape.").optional(), "is_container_label_readonly_enabled": z.boolean().describe("The flag to enable the container label readonly.").optional(), "config_hash": z.union([z.string().describe("The hash of the service configuration."), z.null()]).optional(), "service_type": z.union([z.string().describe("The type of the service."), z.null()]).optional(), "created_at": z.string().describe("The date and time when the service was created.").optional(), "updated_at": z.string().describe("The date and time when the service was last updated.").optional(), "deleted_at": z.union([z.string().describe("The date and time when the service was deleted."), z.null()]).optional(), "status": z.string().optional() }).describe("Service model"), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
241
241
|
{ name: "coolify_delete_service_by_uuid", method: "DELETE", path: "/services/{uuid}", description: "Delete", inputSchema: z.object({ "uuid": z.string(), "delete_configurations": z.boolean().default(true), "delete_volumes": z.boolean().default(true), "docker_cleanup": z.boolean().default(true), "delete_connected_networks": z.boolean().default(true) }), responseSchema: z.object({ "message": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "query", name: "delete_configurations" }, { location: "query", name: "delete_volumes" }, { location: "query", name: "docker_cleanup" }, { location: "query", name: "delete_connected_networks" }], annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false } },
|
|
242
242
|
{ name: "coolify_update_service_by_uuid", method: "PATCH", path: "/services/{uuid}", description: "Update", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "name": z.string().describe("The service name.").optional(), "description": z.string().describe("The service description.").optional(), "instant_deploy": z.boolean().describe("The flag to indicate if the service should be deployed instantly.").optional(), "connect_to_docker_network": z.boolean().describe("Connect the service to the predefined docker network.").default(false), "docker_compose_raw": z.string().describe("The base64 encoded Docker Compose content.").optional(), "urls": z.array(z.object({ "name": z.string().describe("The service name as defined in docker-compose.").optional(), "url": z.string().describe("Comma-separated list of URLs (e.g. \"https://app.coolify.io,https://app2.coolify.io\").").optional() })).describe("Array of URLs to be applied to containers of a service.").optional(), "force_domain_override": z.boolean().describe("Force domain override even if conflicts are detected.").default(false), "is_container_label_escape_enabled": z.boolean().describe("Escape special characters in labels. By default, $ (and other chars) is escaped. If you want to use env variables inside the labels, turn this off.").default(true) }) }), responseSchema: z.object({ "uuid": z.string().describe("Service UUID.").optional(), "domains": z.array(z.string()).describe("Service domains.").optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
243
|
-
{ name: "coolify_get_service_logs_by_uuid", method: "GET", path: "/services/{uuid}/logs", description: "Get service logs.", inputSchema: z.object({ "uuid": z.string()
|
|
243
|
+
{ name: "coolify_get_service_logs_by_uuid", method: "GET", path: "/services/{uuid}/logs", description: "Get service logs.", inputSchema: z.object({ "uuid": z.string(), "sub_service_name": z.string(), "lines": z.number().int().default(100), "show_timestamps": z.boolean().default(false) }), responseSchema: z.object({ "logs": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "query", name: "sub_service_name" }, { location: "query", name: "lines" }, { location: "query", name: "show_timestamps" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
244
244
|
{ name: "coolify_list_envs_by_service_uuid", method: "GET", path: "/services/{uuid}/envs", description: "List Envs", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.array(z.object({ "id": z.number().int().optional(), "uuid": z.string().optional(), "resourceable_type": z.string().optional(), "resourceable_id": z.number().int().optional(), "is_literal": z.boolean().optional(), "is_multiline": z.boolean().optional(), "is_preview": z.boolean().optional(), "is_runtime": z.boolean().optional(), "is_buildtime": z.boolean().optional(), "is_shared": z.boolean().optional(), "is_shown_once": z.boolean().optional(), "key": z.string().optional(), "value": z.string().optional(), "real_value": z.string().optional(), "comment": z.union([z.string(), z.null()]).optional(), "version": z.string().optional(), "created_at": z.string().optional(), "updated_at": z.string().optional() }).describe("Environment Variable model")), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
245
245
|
{ name: "coolify_create_env_by_service_uuid", method: "POST", path: "/services/{uuid}/envs", description: "Create Env", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "key": z.string().describe("The key of the environment variable.").optional(), "value": z.string().describe("The value of the environment variable.").optional(), "is_preview": z.boolean().describe("The flag to indicate if the environment variable is used in preview deployments.").optional(), "is_literal": z.boolean().describe("The flag to indicate if the environment variable is a literal, nothing espaced.").optional(), "is_multiline": z.boolean().describe("The flag to indicate if the environment variable is multiline.").optional(), "is_shown_once": z.boolean().describe("The flag to indicate if the environment variable's value is shown on the UI.").optional() }) }), responseSchema: z.object({ "uuid": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
246
246
|
{ name: "coolify_update_env_by_service_uuid", method: "PATCH", path: "/services/{uuid}/envs", description: "Update Env", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "key": z.string().describe("The key of the environment variable."), "value": z.string().describe("The value of the environment variable."), "is_preview": z.boolean().describe("The flag to indicate if the environment variable is used in preview deployments.").optional(), "is_literal": z.boolean().describe("The flag to indicate if the environment variable is a literal, nothing espaced.").optional(), "is_multiline": z.boolean().describe("The flag to indicate if the environment variable is multiline.").optional(), "is_shown_once": z.boolean().describe("The flag to indicate if the environment variable's value is shown on the UI.").optional() }) }), responseSchema: z.object({ "id": z.number().int().optional(), "uuid": z.string().optional(), "resourceable_type": z.string().optional(), "resourceable_id": z.number().int().optional(), "is_literal": z.boolean().optional(), "is_multiline": z.boolean().optional(), "is_preview": z.boolean().optional(), "is_runtime": z.boolean().optional(), "is_buildtime": z.boolean().optional(), "is_shared": z.boolean().optional(), "is_shown_once": z.boolean().optional(), "key": z.string().optional(), "value": z.string().optional(), "real_value": z.string().optional(), "comment": z.union([z.string(), z.null()]).optional(), "version": z.string().optional(), "created_at": z.string().optional(), "updated_at": z.string().optional() }).describe("Environment Variable model"), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
@@ -259,31 +259,31 @@ export const operations = [
|
|
|
259
259
|
{ name: "coolify_create_tag_by_service_uuid", method: "POST", path: "/services/{uuid}/tags", description: "Create Tag", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "tag_name": z.string().describe("The tag name (min 2 characters). Required if tag_names is not provided.").optional(), "tag_names": z.array(z.string()).describe("Array of tag names (each min 2 characters). Required if tag_name is not provided.").optional() }) }), responseSchema: z.array(z.object({ "uuid": z.string().optional(), "name": z.string().optional(), "created_at": z.string().optional(), "updated_at": z.string().optional() }).describe("Tag model")), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
260
260
|
{ name: "coolify_delete_tag_by_service_uuid", method: "DELETE", path: "/services/{uuid}/tags/{tag_uuid}", description: "Delete Tag", inputSchema: z.object({ "uuid": z.string(), "tag_uuid": z.string() }), responseSchema: z.null(), responseKind: "empty", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "tag_uuid" }], annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false } },
|
|
261
261
|
{ name: "coolify_clone_service_by_uuid", method: "POST", path: "/services/{uuid}/clone", description: "Clone", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "destination_uuid": z.string(), "name": z.union([z.string(), z.null()]).optional(), "clone_volumes": z.boolean().default(false) }) }), responseSchema: z.null(), responseKind: "empty", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
262
|
-
{ name: "coolify_list_team_shared_envs", method: "GET", path: "/team/envs", description: "List Team Shared Envs", inputSchema: z.object({}), responseSchema: z.
|
|
263
|
-
{ name: "coolify_create_team_shared_env", method: "POST", path: "/team/envs", description: "Create Team Shared Env", inputSchema: z.object({ body: z.object({ "key": z.string(), "value": z.union([z.string(), z.null()]).optional(), "is_literal": z.boolean().optional(), "is_multiline": z.boolean().optional(), "is_shown_once": z.boolean().optional(), "comment": z.union([z.string(), z.null()]).optional() }) }), responseSchema: z.
|
|
264
|
-
{ name: "coolify_delete_team_shared_env", method: "DELETE", path: "/team/envs/{env_id}", description: "Delete Team Shared Env", inputSchema: z.object({ "env_id": z.number().int() }), responseSchema: z.
|
|
265
|
-
{ name: "coolify_update_team_shared_env", method: "PATCH", path: "/team/envs/{env_id}", description: "Update Team Shared Env", inputSchema: z.object({ "env_id": z.number().int() }), responseSchema: z.
|
|
266
|
-
{ name: "coolify_list_project_shared_envs", method: "GET", path: "/projects/{uuid}/envs", description: "List Project Shared Envs", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.
|
|
267
|
-
{ name: "coolify_create_project_shared_env", method: "POST", path: "/projects/{uuid}/envs", description: "Create Project Shared Env", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.
|
|
268
|
-
{ name: "coolify_delete_project_shared_env", method: "DELETE", path: "/projects/{uuid}/envs/{env_id}", description: "Delete Project Shared Env", inputSchema: z.object({ "uuid": z.string(), "env_id": z.number().int() }), responseSchema: z.
|
|
269
|
-
{ name: "coolify_update_project_shared_env", method: "PATCH", path: "/projects/{uuid}/envs/{env_id}", description: "Update Project Shared Env", inputSchema: z.object({ "uuid": z.string(), "env_id": z.number().int() }), responseSchema: z.
|
|
270
|
-
{ name: "coolify_list_environment_shared_envs", method: "GET", path: "/projects/{uuid}/environments/{environment_name_or_uuid}/envs", description: "List Environment Shared Envs", inputSchema: z.object({ "uuid": z.string(), "environment_name_or_uuid": z.string() }), responseSchema: z.
|
|
271
|
-
{ name: "coolify_create_environment_shared_env", method: "POST", path: "/projects/{uuid}/environments/{environment_name_or_uuid}/envs", description: "Create Environment Shared Env", inputSchema: z.object({ "uuid": z.string(), "environment_name_or_uuid": z.string() }), responseSchema: z.
|
|
272
|
-
{ name: "coolify_delete_environment_shared_env", method: "DELETE", path: "/projects/{uuid}/environments/{environment_name_or_uuid}/envs/{env_id}", description: "Delete Environment Shared Env", inputSchema: z.object({ "uuid": z.string(), "environment_name_or_uuid": z.string(), "env_id": z.number().int() }), responseSchema: z.
|
|
273
|
-
{ name: "coolify_update_environment_shared_env", method: "PATCH", path: "/projects/{uuid}/environments/{environment_name_or_uuid}/envs/{env_id}", description: "Update Environment Shared Env", inputSchema: z.object({ "uuid": z.string(), "environment_name_or_uuid": z.string(), "env_id": z.number().int() }), responseSchema: z.
|
|
274
|
-
{ name: "coolify_list_server_shared_envs", method: "GET", path: "/servers/{uuid}/envs", description: "List Server Shared Envs", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.
|
|
275
|
-
{ name: "coolify_create_server_shared_env", method: "POST", path: "/servers/{uuid}/envs", description: "Create Server Shared Env", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.
|
|
276
|
-
{ name: "coolify_delete_server_shared_env", method: "DELETE", path: "/servers/{uuid}/envs/{env_id}", description: "Delete Server Shared Env", inputSchema: z.object({ "uuid": z.string(), "env_id": z.number().int() }), responseSchema: z.
|
|
277
|
-
{ name: "coolify_update_server_shared_env", method: "PATCH", path: "/servers/{uuid}/envs/{env_id}", description: "Update Server Shared Env", inputSchema: z.object({ "uuid": z.string(), "env_id": z.number().int() }), responseSchema: z.
|
|
262
|
+
{ name: "coolify_list_team_shared_envs", method: "GET", path: "/team/envs", description: "List Team Shared Envs", inputSchema: z.object({}), responseSchema: z.array(z.record(z.string(), z.any())), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
263
|
+
{ name: "coolify_create_team_shared_env", method: "POST", path: "/team/envs", description: "Create Team Shared Env", inputSchema: z.object({ body: z.object({ "key": z.string(), "value": z.union([z.string(), z.null()]).optional(), "is_literal": z.boolean().optional(), "is_multiline": z.boolean().optional(), "is_shown_once": z.boolean().optional(), "comment": z.union([z.string(), z.null()]).optional() }) }), responseSchema: z.object({ "id": z.number().int() }), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
264
|
+
{ name: "coolify_delete_team_shared_env", method: "DELETE", path: "/team/envs/{env_id}", description: "Delete Team Shared Env", inputSchema: z.object({ "env_id": z.number().int() }), responseSchema: z.object({ "message": z.string() }), responseKind: "json", parameters: [{ location: "path", name: "env_id" }], annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false } },
|
|
265
|
+
{ name: "coolify_update_team_shared_env", method: "PATCH", path: "/team/envs/{env_id}", description: "Update Team Shared Env", inputSchema: z.object({ "env_id": z.number().int(), body: z.object({ "key": z.string().optional(), "value": z.union([z.string(), z.null()]).optional(), "is_literal": z.boolean().optional(), "is_multiline": z.boolean().optional(), "is_shown_once": z.boolean().optional(), "comment": z.union([z.string(), z.null()]).optional() }).strict() }), responseSchema: z.record(z.string(), z.any()), responseKind: "json", parameters: [{ location: "path", name: "env_id" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
266
|
+
{ name: "coolify_list_project_shared_envs", method: "GET", path: "/projects/{uuid}/envs", description: "List Project Shared Envs", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.array(z.record(z.string(), z.any())), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
267
|
+
{ name: "coolify_create_project_shared_env", method: "POST", path: "/projects/{uuid}/envs", description: "Create Project Shared Env", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "key": z.string(), "value": z.union([z.string(), z.null()]).optional(), "is_literal": z.boolean().optional(), "is_multiline": z.boolean().optional(), "is_shown_once": z.boolean().optional(), "comment": z.union([z.string(), z.null()]).optional() }) }), responseSchema: z.object({ "id": z.number().int() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
268
|
+
{ name: "coolify_delete_project_shared_env", method: "DELETE", path: "/projects/{uuid}/envs/{env_id}", description: "Delete Project Shared Env", inputSchema: z.object({ "uuid": z.string(), "env_id": z.number().int() }), responseSchema: z.object({ "message": z.string() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "env_id" }], annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false } },
|
|
269
|
+
{ name: "coolify_update_project_shared_env", method: "PATCH", path: "/projects/{uuid}/envs/{env_id}", description: "Update Project Shared Env", inputSchema: z.object({ "uuid": z.string(), "env_id": z.number().int(), body: z.object({ "key": z.string().optional(), "value": z.union([z.string(), z.null()]).optional(), "is_literal": z.boolean().optional(), "is_multiline": z.boolean().optional(), "is_shown_once": z.boolean().optional(), "comment": z.union([z.string(), z.null()]).optional() }).strict() }), responseSchema: z.record(z.string(), z.any()), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "env_id" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
270
|
+
{ name: "coolify_list_environment_shared_envs", method: "GET", path: "/projects/{uuid}/environments/{environment_name_or_uuid}/envs", description: "List Environment Shared Envs", inputSchema: z.object({ "uuid": z.string(), "environment_name_or_uuid": z.string() }), responseSchema: z.array(z.record(z.string(), z.any())), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "environment_name_or_uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
271
|
+
{ name: "coolify_create_environment_shared_env", method: "POST", path: "/projects/{uuid}/environments/{environment_name_or_uuid}/envs", description: "Create Environment Shared Env", inputSchema: z.object({ "uuid": z.string(), "environment_name_or_uuid": z.string(), body: z.object({ "key": z.string(), "value": z.union([z.string(), z.null()]).optional(), "is_literal": z.boolean().optional(), "is_multiline": z.boolean().optional(), "is_shown_once": z.boolean().optional(), "comment": z.union([z.string(), z.null()]).optional() }) }), responseSchema: z.object({ "id": z.number().int() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "environment_name_or_uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
272
|
+
{ name: "coolify_delete_environment_shared_env", method: "DELETE", path: "/projects/{uuid}/environments/{environment_name_or_uuid}/envs/{env_id}", description: "Delete Environment Shared Env", inputSchema: z.object({ "uuid": z.string(), "environment_name_or_uuid": z.string(), "env_id": z.number().int() }), responseSchema: z.object({ "message": z.string() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "environment_name_or_uuid" }, { location: "path", name: "env_id" }], annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false } },
|
|
273
|
+
{ name: "coolify_update_environment_shared_env", method: "PATCH", path: "/projects/{uuid}/environments/{environment_name_or_uuid}/envs/{env_id}", description: "Update Environment Shared Env", inputSchema: z.object({ "uuid": z.string(), "environment_name_or_uuid": z.string(), "env_id": z.number().int(), body: z.object({ "key": z.string().optional(), "value": z.union([z.string(), z.null()]).optional(), "is_literal": z.boolean().optional(), "is_multiline": z.boolean().optional(), "is_shown_once": z.boolean().optional(), "comment": z.union([z.string(), z.null()]).optional() }).strict() }), responseSchema: z.record(z.string(), z.any()), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "environment_name_or_uuid" }, { location: "path", name: "env_id" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
274
|
+
{ name: "coolify_list_server_shared_envs", method: "GET", path: "/servers/{uuid}/envs", description: "List Server Shared Envs", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.array(z.record(z.string(), z.any())), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
275
|
+
{ name: "coolify_create_server_shared_env", method: "POST", path: "/servers/{uuid}/envs", description: "Create Server Shared Env", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "key": z.string(), "value": z.union([z.string(), z.null()]).optional(), "is_literal": z.boolean().optional(), "is_multiline": z.boolean().optional(), "is_shown_once": z.boolean().optional(), "comment": z.union([z.string(), z.null()]).optional() }) }), responseSchema: z.object({ "id": z.number().int() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
276
|
+
{ name: "coolify_delete_server_shared_env", method: "DELETE", path: "/servers/{uuid}/envs/{env_id}", description: "Delete Server Shared Env", inputSchema: z.object({ "uuid": z.string(), "env_id": z.number().int() }), responseSchema: z.object({ "message": z.string() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "env_id" }], annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false } },
|
|
277
|
+
{ name: "coolify_update_server_shared_env", method: "PATCH", path: "/servers/{uuid}/envs/{env_id}", description: "Update Server Shared Env", inputSchema: z.object({ "uuid": z.string(), "env_id": z.number().int(), body: z.object({ "key": z.string().optional(), "value": z.union([z.string(), z.null()]).optional(), "is_literal": z.boolean().optional(), "is_multiline": z.boolean().optional(), "is_shown_once": z.boolean().optional(), "comment": z.union([z.string(), z.null()]).optional() }).strict() }), responseSchema: z.record(z.string(), z.any()), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "env_id" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
278
278
|
{ name: "coolify_list_tags", method: "GET", path: "/tags", description: "List", inputSchema: z.object({}), responseSchema: z.array(z.object({ "uuid": z.string().optional(), "name": z.string().optional(), "created_at": z.string().optional(), "updated_at": z.string().optional() }).describe("Tag model")), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
279
279
|
{ name: "coolify_create_tag", method: "POST", path: "/tags", description: "Create", inputSchema: z.object({ body: z.object({ "name": z.string().min(2).max(255) }) }), responseSchema: z.object({ "uuid": z.string().optional(), "name": z.string().optional(), "created_at": z.string().optional(), "updated_at": z.string().optional() }).describe("Tag model"), responseKind: "json", parameters: [], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
280
280
|
{ name: "coolify_delete_tag_by_uuid", method: "DELETE", path: "/tags/{uuid}", description: "Delete", inputSchema: z.object({ "uuid": z.string() }), responseSchema: z.object({ "message": z.string().optional() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false } },
|
|
281
281
|
{ name: "coolify_update_tag_by_uuid", method: "PATCH", path: "/tags/{uuid}", description: "Update", inputSchema: z.object({ "uuid": z.string(), body: z.object({ "name": z.string().min(2).max(255) }) }), responseSchema: z.object({ "uuid": z.string().optional(), "name": z.string().optional(), "created_at": z.string().optional(), "updated_at": z.string().optional() }).describe("Tag model"), responseKind: "json", parameters: [{ location: "path", name: "uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false } },
|
|
282
|
-
{ name: "coolify_list_teams", method: "GET", path: "/teams", description: "List", inputSchema: z.object({}), responseSchema: z.array(z.object({ "id": z.number().int().describe("The unique identifier of the team.").optional(), "name": z.string().describe("The name of the team.").optional(), "description": z.string().describe("The description of the team.").optional(), "personal_team": z.boolean().describe("Whether the team is personal or not.").optional(), "created_at": z.string().describe("The date and time the team was created.").optional(), "updated_at": z.string().describe("The date and time the team was last updated.").optional(), "show_boarding": z.boolean().describe("Whether to show the boarding screen or not.").optional(), "custom_server_limit": z.string().describe("The custom server limit.").optional(), "members": z.array(z.object({ "id": z.number().int().describe("The user identifier in the database.").optional(), "name": z.string().describe("The user name.").optional(), "email": z.string().describe("The user email.").optional(), "email_verified_at": z.string().describe("The date when the user email was verified.").optional(), "created_at": z.string().describe("The date when the user was created.").optional(), "updated_at": z.string().describe("The date when the user was updated.").optional(), "two_factor_confirmed_at": z.string().describe("The date when the user two factor was confirmed.").optional(), "force_password_reset": z.boolean().describe("The flag to force the user to reset the password.").optional(), "marketing_emails": z.boolean().describe("The flag to receive marketing emails.").optional() }).describe("User model")).describe("The members of the team.").optional() }).describe("Team model")), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
283
|
-
{ name: "coolify_get_team_by_id", method: "GET", path: "/teams/{id}", description: "Get", inputSchema: z.object({ "id": z.number().int() }), responseSchema: z.object({ "id": z.number().int().describe("The unique identifier of the team.").optional(), "name": z.string().describe("The name of the team.").optional(), "description": z.string().describe("The description of the team.").optional(), "personal_team": z.boolean().describe("Whether the team is personal or not.").optional(), "created_at": z.string().describe("The date and time the team was created.").optional(), "updated_at": z.string().describe("The date and time the team was last updated.").optional(), "show_boarding": z.boolean().describe("Whether to show the boarding screen or not.").optional(), "custom_server_limit": z.string().describe("The custom server limit.").optional(), "members": z.array(z.object({ "id": z.number().int().describe("The user identifier in the database.").optional(), "name": z.string().describe("The user name.").optional(), "email": z.string().describe("The user email.").optional(), "email_verified_at": z.string().describe("The date when the user email was verified.").optional(), "created_at": z.string().describe("The date when the user was created.").optional(), "updated_at": z.string().describe("The date when the user was updated.").optional(), "two_factor_confirmed_at": z.string().describe("The date when the user two factor was confirmed.").optional(), "force_password_reset": z.boolean().describe("The flag to force the user to reset the password.").optional(), "marketing_emails": z.boolean().describe("The flag to receive marketing emails.").optional() }).describe("User model")).describe("The members of the team.").optional() }).describe("Team model"), responseKind: "json", parameters: [{ location: "path", name: "id" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
284
|
-
{ name: "coolify_get_members_by_team_id", method: "GET", path: "/teams/{id}/members", description: "Members", inputSchema: z.object({ "id": z.number().int() }), responseSchema: z.array(z.object({ "id": z.number().int().describe("The user identifier in the database.").optional(), "name": z.string().describe("The user name.").optional(), "email": z.string().describe("The user email.").optional(), "email_verified_at": z.string().describe("The date when the user email was verified.").optional(), "created_at": z.string().describe("The date when the user was created.").optional(), "updated_at": z.string().describe("The date when the user was updated.").optional(), "two_factor_confirmed_at": z.string().describe("The date when the user two factor was confirmed.").optional(), "force_password_reset": z.boolean().describe("The flag to force the user to reset the password.").optional(), "marketing_emails": z.boolean().describe("The flag to receive marketing emails.").optional() }).describe("User model")), responseKind: "json", parameters: [{ location: "path", name: "id" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
285
|
-
{ name: "coolify_get_token_team", method: "GET", path: "/team", description: "Authenticated Team", inputSchema: z.object({}), responseSchema: z.object({ "id": z.number().int().describe("The unique identifier of the team.").optional(), "name": z.string().describe("The name of the team.").optional(), "description": z.string().describe("The description of the team.").optional(), "personal_team": z.boolean().describe("Whether the team is personal or not.").optional(), "created_at": z.string().describe("The date and time the team was created.").optional(), "updated_at": z.string().describe("The date and time the team was last updated.").optional(), "show_boarding": z.boolean().describe("Whether to show the boarding screen or not.").optional(), "custom_server_limit": z.string().describe("The custom server limit.").optional(), "members": z.array(z.object({ "id": z.number().int().describe("The user identifier in the database.").optional(), "name": z.string().describe("The user name.").optional(), "email": z.string().describe("The user email.").optional(), "email_verified_at": z.string().describe("The date when the user email was verified.").optional(), "created_at": z.string().describe("The date when the user was created.").optional(), "updated_at": z.string().describe("The date when the user was updated.").optional(), "two_factor_confirmed_at": z.string().describe("The date when the user two factor was confirmed.").optional(), "force_password_reset": z.boolean().describe("The flag to force the user to reset the password.").optional(), "marketing_emails": z.boolean().describe("The flag to receive marketing emails.").optional() }).describe("User model")).describe("The members of the team.").optional() }).describe("Team model"), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
286
|
-
{ name: "coolify_get_token_team_members", method: "GET", path: "/team/members", description: "Authenticated Team Members", inputSchema: z.object({}), responseSchema: z.array(z.object({ "id": z.number().int().describe("The user identifier in the database.").optional(), "name": z.string().describe("The user name.").optional(), "email": z.string().describe("The user email.").optional(), "email_verified_at": z.string().describe("The date when the user email was verified.").optional(), "created_at": z.string().describe("The date when the user was created.").optional(), "updated_at": z.string().describe("The date when the user was updated.").optional(), "two_factor_confirmed_at": z.string().describe("The date when the user two factor was confirmed.").optional(), "force_password_reset": z.boolean().describe("The flag to force the user to reset the password.").optional(), "marketing_emails": z.boolean().describe("The flag to receive marketing emails.").optional() }).describe("User model")), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
282
|
+
{ name: "coolify_list_teams", method: "GET", path: "/teams", description: "List", inputSchema: z.object({}), responseSchema: z.array(z.object({ "id": z.number().int().describe("The unique identifier of the team.").optional(), "name": z.string().describe("The name of the team.").optional(), "description": z.union([z.string().describe("The description of the team."), z.null()]).optional(), "personal_team": z.boolean().describe("Whether the team is personal or not.").optional(), "created_at": z.string().describe("The date and time the team was created.").optional(), "updated_at": z.string().describe("The date and time the team was last updated.").optional(), "show_boarding": z.boolean().describe("Whether to show the boarding screen or not.").optional(), "custom_server_limit": z.string().describe("The custom server limit.").optional(), "members": z.array(z.object({ "id": z.number().int().describe("The user identifier in the database.").optional(), "name": z.string().describe("The user name.").optional(), "email": z.string().describe("The user email.").optional(), "email_verified_at": z.union([z.string().describe("The date when the user email was verified."), z.null()]).optional(), "created_at": z.string().describe("The date when the user was created.").optional(), "updated_at": z.string().describe("The date when the user was updated.").optional(), "two_factor_confirmed_at": z.union([z.string().describe("The date when the user two factor was confirmed."), z.null()]).optional(), "force_password_reset": z.union([z.boolean().describe("The flag to force the user to reset the password."), z.string().describe("The flag to force the user to reset the password.")]).describe("The flag to force the user to reset the password.").optional(), "marketing_emails": z.boolean().describe("The flag to receive marketing emails.").optional() }).describe("User model")).describe("The members of the team.").optional() }).describe("Team model")), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
283
|
+
{ name: "coolify_get_team_by_id", method: "GET", path: "/teams/{id}", description: "Get", inputSchema: z.object({ "id": z.number().int() }), responseSchema: z.object({ "id": z.number().int().describe("The unique identifier of the team.").optional(), "name": z.string().describe("The name of the team.").optional(), "description": z.union([z.string().describe("The description of the team."), z.null()]).optional(), "personal_team": z.boolean().describe("Whether the team is personal or not.").optional(), "created_at": z.string().describe("The date and time the team was created.").optional(), "updated_at": z.string().describe("The date and time the team was last updated.").optional(), "show_boarding": z.boolean().describe("Whether to show the boarding screen or not.").optional(), "custom_server_limit": z.string().describe("The custom server limit.").optional(), "members": z.array(z.object({ "id": z.number().int().describe("The user identifier in the database.").optional(), "name": z.string().describe("The user name.").optional(), "email": z.string().describe("The user email.").optional(), "email_verified_at": z.union([z.string().describe("The date when the user email was verified."), z.null()]).optional(), "created_at": z.string().describe("The date when the user was created.").optional(), "updated_at": z.string().describe("The date when the user was updated.").optional(), "two_factor_confirmed_at": z.union([z.string().describe("The date when the user two factor was confirmed."), z.null()]).optional(), "force_password_reset": z.union([z.boolean().describe("The flag to force the user to reset the password."), z.string().describe("The flag to force the user to reset the password.")]).describe("The flag to force the user to reset the password.").optional(), "marketing_emails": z.boolean().describe("The flag to receive marketing emails.").optional() }).describe("User model")).describe("The members of the team.").optional() }).describe("Team model"), responseKind: "json", parameters: [{ location: "path", name: "id" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
284
|
+
{ name: "coolify_get_members_by_team_id", method: "GET", path: "/teams/{id}/members", description: "Members", inputSchema: z.object({ "id": z.number().int() }), responseSchema: z.array(z.object({ "id": z.number().int().describe("The user identifier in the database.").optional(), "name": z.string().describe("The user name.").optional(), "email": z.string().describe("The user email.").optional(), "email_verified_at": z.union([z.string().describe("The date when the user email was verified."), z.null()]).optional(), "created_at": z.string().describe("The date when the user was created.").optional(), "updated_at": z.string().describe("The date when the user was updated.").optional(), "two_factor_confirmed_at": z.union([z.string().describe("The date when the user two factor was confirmed."), z.null()]).optional(), "force_password_reset": z.union([z.boolean().describe("The flag to force the user to reset the password."), z.string().describe("The flag to force the user to reset the password.")]).describe("The flag to force the user to reset the password.").optional(), "marketing_emails": z.boolean().describe("The flag to receive marketing emails.").optional() }).describe("User model")), responseKind: "json", parameters: [{ location: "path", name: "id" }], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
285
|
+
{ name: "coolify_get_token_team", method: "GET", path: "/team", description: "Authenticated Team", inputSchema: z.object({}), responseSchema: z.object({ "id": z.number().int().describe("The unique identifier of the team.").optional(), "name": z.string().describe("The name of the team.").optional(), "description": z.union([z.string().describe("The description of the team."), z.null()]).optional(), "personal_team": z.boolean().describe("Whether the team is personal or not.").optional(), "created_at": z.string().describe("The date and time the team was created.").optional(), "updated_at": z.string().describe("The date and time the team was last updated.").optional(), "show_boarding": z.boolean().describe("Whether to show the boarding screen or not.").optional(), "custom_server_limit": z.string().describe("The custom server limit.").optional(), "members": z.array(z.object({ "id": z.number().int().describe("The user identifier in the database.").optional(), "name": z.string().describe("The user name.").optional(), "email": z.string().describe("The user email.").optional(), "email_verified_at": z.union([z.string().describe("The date when the user email was verified."), z.null()]).optional(), "created_at": z.string().describe("The date when the user was created.").optional(), "updated_at": z.string().describe("The date when the user was updated.").optional(), "two_factor_confirmed_at": z.union([z.string().describe("The date when the user two factor was confirmed."), z.null()]).optional(), "force_password_reset": z.union([z.boolean().describe("The flag to force the user to reset the password."), z.string().describe("The flag to force the user to reset the password.")]).describe("The flag to force the user to reset the password.").optional(), "marketing_emails": z.boolean().describe("The flag to receive marketing emails.").optional() }).describe("User model")).describe("The members of the team.").optional() }).describe("Team model"), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
286
|
+
{ name: "coolify_get_token_team_members", method: "GET", path: "/team/members", description: "Authenticated Team Members", inputSchema: z.object({}), responseSchema: z.array(z.object({ "id": z.number().int().describe("The user identifier in the database.").optional(), "name": z.string().describe("The user name.").optional(), "email": z.string().describe("The user email.").optional(), "email_verified_at": z.union([z.string().describe("The date when the user email was verified."), z.null()]).optional(), "created_at": z.string().describe("The date when the user was created.").optional(), "updated_at": z.string().describe("The date when the user was updated.").optional(), "two_factor_confirmed_at": z.union([z.string().describe("The date when the user two factor was confirmed."), z.null()]).optional(), "force_password_reset": z.union([z.boolean().describe("The flag to force the user to reset the password."), z.string().describe("The flag to force the user to reset the password.")]).describe("The flag to force the user to reset the password.").optional(), "marketing_emails": z.boolean().describe("The flag to receive marketing emails.").optional() }).describe("User model")), responseKind: "json", parameters: [], annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
287
287
|
{ name: "coolify_set_application_storage_backup_schedule", method: "PUT", path: "/applications/{uuid}/storages/{storage_uuid}/backups", description: "Set application storage backup schedule", inputSchema: z.object({ "uuid": z.string(), "storage_uuid": z.string(), body: z.object({ "frequency": z.string().max(255), "enabled": z.boolean().default(true), "save_s3": z.boolean().default(false), "disable_local_backup": z.boolean().default(false), "stop_during_backup": z.boolean().default(false), "s3_storage_uuid": z.union([z.string(), z.null()]).optional(), "retention_amount_locally": z.number().int().gte(0).lte(10000).default(7), "retention_days_locally": z.number().int().gte(0).lte(2147483647).default(0), "retention_max_storage_locally": z.number().gte(0).lte(9999999999).default(0), "retention_amount_s3": z.number().int().gte(0).lte(10000).default(7), "retention_days_s3": z.number().int().gte(0).lte(2147483647).default(0), "retention_max_storage_s3": z.number().gte(0).lte(9999999999).default(0), "timeout": z.number().int().gte(60).lte(36000).default(3600) }).strict() }), responseSchema: z.object({ "uuid": z.string(), "message": z.string(), "storage_uuid": z.string(), "storage_type": z.enum(["persistent", "directory"]), "frequency": z.string(), "enabled": z.boolean(), "save_s3": z.boolean(), "disable_local_backup": z.boolean(), "stop_during_backup": z.boolean(), "s3_storage_uuid": z.union([z.string(), z.null()]).optional(), "retention_amount_locally": z.number().int(), "retention_days_locally": z.number().int(), "retention_max_storage_locally": z.number(), "retention_amount_s3": z.number().int(), "retention_days_s3": z.number().int(), "retention_max_storage_s3": z.number(), "timeout": z.number().int() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "storage_uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|
|
288
288
|
{ name: "coolify_delete_application_storage_backup_schedule", method: "DELETE", path: "/applications/{uuid}/storages/{storage_uuid}/backups", description: "Delete application storage backup schedule", inputSchema: z.object({ "uuid": z.string(), "storage_uuid": z.string() }), responseSchema: z.null(), responseKind: "empty", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "storage_uuid" }], annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false } },
|
|
289
289
|
{ name: "coolify_set_database_storage_backup_schedule", method: "PUT", path: "/databases/{uuid}/storages/{storage_uuid}/backups", description: "Set database storage backup schedule", inputSchema: z.object({ "uuid": z.string(), "storage_uuid": z.string(), body: z.object({ "frequency": z.string().max(255), "enabled": z.boolean().default(true), "save_s3": z.boolean().default(false), "disable_local_backup": z.boolean().default(false), "stop_during_backup": z.boolean().default(false), "s3_storage_uuid": z.union([z.string(), z.null()]).optional(), "retention_amount_locally": z.number().int().gte(0).lte(10000).default(7), "retention_days_locally": z.number().int().gte(0).lte(2147483647).default(0), "retention_max_storage_locally": z.number().gte(0).lte(9999999999).default(0), "retention_amount_s3": z.number().int().gte(0).lte(10000).default(7), "retention_days_s3": z.number().int().gte(0).lte(2147483647).default(0), "retention_max_storage_s3": z.number().gte(0).lte(9999999999).default(0), "timeout": z.number().int().gte(60).lte(36000).default(3600) }).strict() }), responseSchema: z.object({ "uuid": z.string(), "message": z.string(), "storage_uuid": z.string(), "storage_type": z.enum(["persistent", "directory"]), "frequency": z.string(), "enabled": z.boolean(), "save_s3": z.boolean(), "disable_local_backup": z.boolean(), "stop_during_backup": z.boolean(), "s3_storage_uuid": z.union([z.string(), z.null()]).optional(), "retention_amount_locally": z.number().int(), "retention_days_locally": z.number().int(), "retention_max_storage_locally": z.number(), "retention_amount_s3": z.number().int(), "retention_days_s3": z.number().int(), "retention_max_storage_s3": z.number(), "timeout": z.number().int() }), responseKind: "json", parameters: [{ location: "path", name: "uuid" }, { location: "path", name: "storage_uuid" }], annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: false } },
|