Skip to main content
Glama

InfraOps MCP Server

A Model Context Protocol server that exposes infrastructure operations as callable tools for Claude Code. Runs locally over stdio — no HTTP server, no container, no remote deployment.

This is the "doer." For infrastructure standards and deployment patterns see the infra-brain MCP. For application-level context see app-brain.

Providers

Provider

Prefix

Tools

Always on

Required env

Coolify

coolify_

86

✅

COOLIFY_PROD_BASE_URL + COOLIFY_PROD_API_TOKEN

VPS (SSH/orb)

vps_

7

✅

— (defaults route to the OVH prod VPS)

Hetzner Cloud

hetzner_

26

❌

HETZNER_API_TOKEN

Namecheap

namecheap_

19

❌

NAMECHEAP_API_USER + NAMECHEAP_API_KEY + NAMECHEAP_PROXY_TOKEN

Porkbun

porkbun_

3

❌

PORKBUN_API_KEY + PORKBUN_SECRET_API_KEY

Cloudflare

cloudflare_

44

❌

CLOUDFLARE_API_TOKEN + CLOUDFLARE_ACCOUNT_ID

Supabase

supabase_

28

❌

SUPABASE_ACCESS_TOKEN

GitHub

github_

4

❌

GITHUB_TOKEN

217 tools across 8 providers. Coolify and VPS register unconditionally; optional providers register only when their env vars are present at startup.

Coolify and VPS tools both accept an instance: "prod" | "dev" parameter that routes between the OVH production VPS and a local OrbStack dev VM. Tool implementations live in src/tools/ — schemas are defined inline via Zod in each tool file.

Porkbun's three tools are a gateway to Porkbun's official MCP server (@porkbunllc/mcp-server, pinned in package.json), which infraops starts as a child process on the first Porkbun call. Because that package lives in node_modules, run npm ci after any pull that changes package-lock.json; the session-start hook does this for you.

Related MCP server: Coolify MCP Tools

Quickstart

npm ci
npm run build
npm test        # vitest

The server is launched by Claude Code as a subprocess via start.sh, which fetches secrets from Bitwarden Secrets Manager (BWS) and execs node dist/index.js. To run it standalone (e.g. for debugging), invoke start.sh from a shell that has BWS_ACCESS_TOKEN set.

Where to Look

Document

What's in it

CLAUDE.md

Architecture map, patterns, per-provider notes, private-repo deploy workflow, compose app config, secrets policy. The canonical "how this works" doc.

RUNBOOK.md

Local setup, dev workflow, CI/CD, provider configuration, secret management, .claude.json example, troubleshooting. The canonical "how do I use/debug this" doc.

BACKLOG.md

Deferred work with full context — threat models, tradeoffs, acceptance criteria — designed to be resumed cold in a future session.

INFRAOPS_IMPROVEMENTS.md

Historical design doc for the v3.2.0 deploy-key / GitHub / compose work. Retained as context. Most items shipped; one remains open and is tracked in BACKLOG.md.

Versioning

Current version: 3.3.0 (see package.json). Minor bumps track user-visible tool API surface changes (new tools, new parameters); patch bumps track bug fixes. CI runs tsc as the type-check gate on every push to main via .github/workflows/build.yml.

Available Tools

93 tools
coolify_application_logsGet Application LogsA
Read-onlyIdempotent

Retrieve recent logs for an application by its UUID. Returns an informational message (not an error) if the application is stopped. Requires: uuid (application UUID, not service UUID — use vps_docker_logs for compose services).

Inputs: uuid (required), lines, reveal, instance.

coolify_audit_standardsAudit Coolify Resources Against StandardsA
Read-onlyIdempotent

Scan all (or one) Coolify application and database against infra-brain standards (fetched from infra-brain's REST API; cached fallback). Returns proposals — each a deviation paired with a concrete remediation tool-call. Read-only: applies nothing.

Inputs: now, scope, reveal, instance, +1 more.

coolify_bulk_create_app_envsBulk Create/Update Application Environment VariablesA
Idempotent

Create or update multiple environment variables at once via a single API call. Coolify upserts: existing keys are updated, new keys are created. Useful when setting up a new application with all its required env vars from BWS.

Inputs: uuid (required), instance (required), variables (required), reveal.

coolify_bulk_set_app_envSet Env Var Across Multiple ApplicationsA
Idempotent

Upsert ONE environment variable (key/value) across many applications at once. Useful for rotating a shared secret. Returns a per-app success/failure summary; a failure on one app does not stop the others.

Inputs: key (required), value (required), instance (required), app_uuids (required), +3 more.

coolify_bulk_update_service_envsBulk Create/Update Service Environment VariablesA
Idempotent

Create or update multiple environment variables at once for a Coolify service (docker-compose apps). Coolify upserts: existing keys are updated, new keys are created. Use for Flavor C apps (ContactHub, CRM, etc.) — NOT for single-container applications.

Inputs: uuid (required), instance (required), variables (required), reveal.

coolify_cancel_deploymentCancel DeploymentA

Cancel a running or queued deployment by its deployment UUID (not the application UUID).

Inputs: instance (required), deployment_uuid (required), reveal.

coolify_controlControl Coolify ResourceA
Idempotent

Start, stop, or restart an application, database, or service. This is the universal control tool — use it for lifecycle management of any Coolify resource.

Inputs: uuid (required), action (required), instance (required), resource_type (required), +1 more.

coolify_create_app_envCreate Application Environment VariableA

Add a new environment variable to an application. Remember: per infra standards, secrets should originate from BWS — this tool sets them in Coolify.

Inputs: key (required), uuid (required), value (required), instance (required), +4 more.

coolify_create_application_deploykeyCreate Application — Private Repository (Deploy Key)A

Create an application from a private Git repository with a deploy key. You can deploy private repos with a deploy key. Requires a private key already stored in Coolify (via coolify_create_private_key) and the public key added to GitHub (via github_add_deploy_key).

Inputs: instance (required), server_uuid (required), project_uuid (required), git_repository (required), +10 more.

coolify_create_application_dockercomposeCreate Application — Docker Compose (Empty)B

Create a Docker Compose application without Git. You can deploy complex applications easily with Docker Compose by providing the raw compose file content directly. Note: Coolify marks this endpoint as deprecated in favor of /services, but it remains available in the UI.

Inputs: instance (required), server_uuid (required), project_uuid (required), docker_compose_raw (required), +6 more.

coolify_create_application_dockerfileCreate Application — DockerfileA

Create an application from a Dockerfile without Git. You can deploy a simple Dockerfile by providing its content directly.

Inputs: instance (required), dockerfile (required), server_uuid (required), project_uuid (required), +7 more.

coolify_create_application_dockerimageCreate Application — Docker ImageA

Create an application from any Docker registry without Git. This is the standard pattern for Devon's Flavor B/C apps: GitHub Actions builds → pushes to ghcr.io/alobarquest/ → Coolify pulls.

Inputs: instance (required), server_uuid (required), project_uuid (required), destination_uuid (required), +8 more.

coolify_create_application_githubappCreate Application — Private Repository (GitHub App)A

Create an application from a private Git repository using a GitHub App. You can deploy public and private repos through your GitHub Apps. Requires a GitHub App already configured in Coolify.

Inputs: instance (required), server_uuid (required), project_uuid (required), git_repository (required), +10 more.

coolify_create_application_publicCreate Application — Public RepositoryA

Create an application from a public Git repository. You can deploy any kind of public repo from supported Git providers. For Devon's Flavor A apps (Coolify source build).

Inputs: instance (required), server_uuid (required), project_uuid (required), git_repository (required), +9 more.

coolify_create_databaseCreate Coolify DatabaseA

Create a new database resource. For Devon's Flavor B apps, this is typically PostgreSQL 16 deployed on the same VPS. Supported types: postgresql, mysql, mariadb, mongodb, redis, keydb, clickhouse, dragonfly.

Inputs: type (required), instance (required), server_uuid (required), project_uuid (required), +8 more.

coolify_create_database_backupCreate Database Backup ScheduleB

Create a scheduled backup for a database. frequency is a cron expression (e.g. '0 2 * * *').

Inputs: instance (required), frequency (required), database_uuid (required), reveal, +9 more.

coolify_create_environmentCreate Project EnvironmentA

Create a new environment within a project (e.g. 'production', 'staging', 'preview').

Inputs: name (required), instance (required), project_uuid (required), reveal.

coolify_create_github_appCreate Coolify GitHub AppC

Register a GitHub App as a Coolify deployment source.

Inputs: name (required), app_id (required), api_url (required), html_url (required), +11 more.

coolify_create_private_keyCreate Coolify Private KeyA

Generate an Ed25519 SSH key pair and store it in Coolify. Returns the UUID and public key. The public key should be added to GitHub as a deploy key (via github_add_deploy_key) or to a server's authorized_keys. The private key is stored encrypted in Coolify.

Inputs: name (required), instance (required), reveal, description.

coolify_create_projectCreate Coolify ProjectA

Create a new project. After creation, add environments to it, then deploy applications/databases/services into those environments.

Inputs: name (required), instance (required), reveal, description.

coolify_create_scheduled_taskCreate Scheduled TaskA

Add a cron task to an application or service.

Inputs: name (required), uuid (required), command (required), instance (required), +5 more.

coolify_create_serviceCreate Coolify ServiceA

Create a new service from a Docker Compose definition or a one-click template. For Devon's Flavor C apps (like Contact Hub), supply the docker-compose.yml content.

Inputs: type (required), instance (required), server_uuid (required), project_uuid (required), +7 more.

coolify_create_service_envCreate Service Environment VariableA

Add a new environment variable to a Coolify service (Flavor C / docker-compose apps). Use this for multi-container compose services — NOT for single-container applications.

Inputs: key (required), uuid (required), value (required), instance (required), +4 more.

coolify_create_storageCreate StorageB

Add a persistent volume or bind mount to an application, database, or service.

Inputs: name (required), uuid (required), instance (required), resource (required), +3 more.

coolify_delete_app_envDelete Application Environment VariableB
DestructiveIdempotent

Remove an environment variable from an application.

Inputs: uuid (required), env_uuid (required), instance (required), reveal.

coolify_delete_applicationDelete Coolify ApplicationA
Destructive

Permanently delete an application by UUID. This stops the app and removes all associated resources.

Inputs: uuid (required), instance (required), reveal, delete_volumes, +1 more.

coolify_delete_backup_executionDelete Backup ExecutionA
Destructive

Delete a single backup execution (and its stored file) by UUID.

Inputs: instance (required), backup_uuid (required), database_uuid (required), execution_uuid (required), +1 more.

coolify_delete_databaseDelete Coolify DatabaseA
Destructive

Delete a database resource. WARNING: This destroys the database and all its data.

Inputs: uuid (required), instance (required), reveal, delete_volumes.

coolify_delete_database_backupDelete Database Backup ScheduleA
Destructive

Delete a backup schedule by UUID. Does not delete already-stored backup files.

Inputs: instance (required), backup_uuid (required), database_uuid (required), reveal.

coolify_delete_environmentDelete Project EnvironmentA
Destructive

Delete an environment from a project. WARNING: All resources in this environment will be removed.

Inputs: instance (required), project_uuid (required), environment_name (required), reveal.

coolify_delete_github_appDelete Coolify GitHub AppB
Destructive

Delete a GitHub-App integration by id.

Inputs: id (required), instance (required), reveal.

coolify_delete_private_keyDelete Coolify Private KeyA
Destructive

Delete an SSH private key from Coolify by UUID. Will fail with 422 if the key is still in use by an application or server.

Inputs: uuid (required), instance (required), reveal.

coolify_delete_projectDelete Coolify ProjectA
Destructive

Delete a project by UUID. WARNING: This will delete all environments and resources within the project.

Inputs: uuid (required), instance (required), reveal.

coolify_delete_scheduled_taskDelete Scheduled TaskC
Destructive

Remove a scheduled task from an application or service.

Inputs: uuid (required), instance (required), resource (required), task_uuid (required), +1 more.

coolify_delete_serviceDelete Coolify ServiceA
Destructive

Delete a service. WARNING: Stops all containers and removes the service definition.

Inputs: uuid (required), instance (required), reveal.

coolify_delete_service_envDelete Service Environment VariableA
DestructiveIdempotent

Remove an environment variable from a Coolify service (docker-compose apps).

Inputs: uuid (required), env_uuid (required), instance (required), reveal.

coolify_delete_storageDelete StorageC
Destructive

Remove a storage entry from an application, database, or service.

Inputs: uuid (required), instance (required), resource (required), storage_uuid (required), +1 more.

coolify_deployDeploy ApplicationA

Trigger a deployment for one or more applications. Can deploy by application UUID or by tag (tags let you deploy an entire group of apps at once). Returns the deployment UUID for tracking.

Inputs: instance (required), tag, uuid, force, +1 more.

coolify_diagnose_appDiagnose ApplicationA
Read-onlyIdempotent

Composite diagnostic for an application: fans out to fetch details, recent logs, env var count, and deployment history in parallel. Accepts UUID, app name, or FQDN/domain.

Inputs: query (required), reveal, instance, log_lines.

coolify_diagnose_serverDiagnose ServerA
Read-onlyIdempotent

Composite diagnostic for a server: fetches details, resources, domains, and runs a connectivity validation in parallel. Accepts UUID, name, or IP address.

Inputs: query (required), reveal, instance.

coolify_find_issuesFind Infrastructure IssuesA
Read-onlyIdempotent

Scan all servers, applications, databases, and services for unhealthy or unreachable resources. Returns a summary with counts and a detailed issues list.

Inputs: reveal, instance.

coolify_get_applicationGet Coolify ApplicationA
Read-onlyIdempotent

Get full details for a single application by UUID, including build config, health check settings, Git info, and deployment status. Webhook/basic-auth secrets are masked unless reveal:true.

Inputs: uuid (required), reveal, instance.

coolify_get_backup_executionGet Backup ExecutionA
Read-onlyIdempotent

Get a single backup execution by its UUID.

Inputs: backup_uuid (required), database_uuid (required), execution_uuid (required), reveal, +1 more.

coolify_get_databaseGet Coolify DatabaseA
Read-onlyIdempotent

Get full details for a database resource by UUID — connection info, status, configuration.

Inputs: uuid (required), reveal, instance.

coolify_get_database_backupGet Database Backup ScheduleB
Read-onlyIdempotent

Get a single backup schedule by its UUID.

Inputs: backup_uuid (required), database_uuid (required), reveal, instance.

coolify_get_deploymentGet Deployment DetailsA
Read-onlyIdempotent

Get full details and logs for a specific deployment by its deployment UUID.

Inputs: deployment_uuid (required), reveal, instance.

coolify_get_github_appGet Coolify GitHub AppA
Read-onlyIdempotent

Get a single GitHub-App integration by its numeric id.

Inputs: id (required), reveal, instance.

coolify_get_projectGet Coolify ProjectA
Read-onlyIdempotent

Get full details for a single project by UUID, including its environments and the resources within them.

Inputs: uuid (required), reveal, instance.

coolify_get_serverGet Coolify ServerA
Read-onlyIdempotent

Get full details for a server by UUID — IP, settings, connectivity status, and validation logs.

Inputs: uuid (required), reveal, instance.

coolify_get_serviceGet Coolify ServiceA
Read-onlyIdempotent

Get full details for a service by UUID — includes compose config, status, and resource mapping. Webhook/basic-auth secrets are masked unless reveal:true.

Inputs: uuid (required), reveal, instance.

coolify_list_app_envsList Application Environment VariablesA
Read-onlyIdempotent

List all environment variables for an application. Values of secrets may be masked by Coolify.

Inputs: uuid (required), reveal, instance.

coolify_list_applicationsList Coolify ApplicationsA
Read-onlyIdempotent

List all applications across the Coolify instance. Returns a compact summary (uuid, name, status, fqdn, git) by default — pass summary:false for full objects.

Inputs: reveal, summary, instance.

coolify_list_backup_executionsList Backup ExecutionsA
Read-onlyIdempotent

List execution history (runs) for a backup schedule — status, size, filename, timestamps.

Inputs: backup_uuid (required), database_uuid (required), reveal, instance.

coolify_list_database_backupsList Database Backup SchedulesA
Read-onlyIdempotent

List configured backup schedules for a database. Returns frequency (cron), enabled state, S3 config, and retention.

Inputs: database_uuid (required), reveal, instance.

coolify_list_databasesList Coolify DatabasesA
Read-onlyIdempotent

List all database resources managed by Coolify. Returns a compact summary by default; pass summary:false for full objects.

Inputs: reveal, summary, instance.

coolify_list_deploymentsList Application DeploymentsA
Read-onlyIdempotent

List deployment history for a specific application. Returns status, commit, timestamps, and deployment UUIDs.

Inputs: uuid (required), reveal, instance.

coolify_list_environmentsList Project EnvironmentsA
Read-onlyIdempotent

List all environments within a project. Environments separate resources (e.g. production vs staging).

Inputs: project_uuid (required), reveal, instance.

coolify_list_github_app_branchesList GitHub App Repository BranchesB
Read-onlyIdempotent

List branches for a repo the GitHub App can access.

Inputs: id (required), repo (required), owner (required), reveal, +1 more.

coolify_list_github_app_reposList GitHub App RepositoriesA
Read-onlyIdempotent

List repositories the GitHub App can access (name, full_name, default_branch, private).

Inputs: id (required), reveal, instance.

coolify_list_github_appsList Coolify GitHub AppsA
Read-onlyIdempotent

List GitHub-App source integrations configured in Coolify. Returns id, uuid, name, organization. Use coolify_get_github_app for full detail.

Inputs: reveal, summary, instance.

coolify_list_private_keysList Coolify Private KeysA
Read-onlyIdempotent

List all SSH private keys stored in Coolify. These are used for Git deploy key authentication and server SSH access. Returns UUID, name, description, and fingerprint for each key.

Inputs: reveal, instance.

coolify_list_projectsList Coolify ProjectsB
Read-onlyIdempotent

List all projects in the Coolify instance. Projects are the top-level organisational unit — each contains environments which in turn contain applications, databases, and services.

Inputs: reveal, summary, instance.

coolify_list_scheduled_tasksList Scheduled TasksA
Read-onlyIdempotent

List all scheduled (cron) tasks for an application or service.

Inputs: uuid (required), resource (required), reveal, instance.

coolify_list_serversList Coolify ServersA
Read-onlyIdempotent

List all servers registered with Coolify. Returns name, IP, reachability status, and UUID for each. Compact summary by default; pass summary:false for full objects.

Inputs: reveal, summary, instance.

coolify_list_service_envsList Service Environment VariablesA
Read-onlyIdempotent

List all environment variables for a Coolify service (Flavor C / docker-compose apps). Use this for services deployed as docker-compose — NOT for single-container applications (use coolify_list_app_envs for those).

Inputs: uuid (required), reveal, instance.

coolify_list_servicesList Coolify ServicesA
Read-onlyIdempotent

List all services (Docker Compose workloads) managed by Coolify. Compact summary by default; pass summary:false for full objects.

Inputs: reveal, summary, instance.

coolify_list_storagesList StoragesA
Read-onlyIdempotent

List persistent volumes and bind mounts for an application, database, or service.

Inputs: uuid (required), resource (required), reveal, instance.

coolify_list_task_executionsList Scheduled Task ExecutionsA
Read-onlyIdempotent

Retrieve execution history for a scheduled task.

Inputs: uuid (required), resource (required), task_uuid (required), reveal, +1 more.

coolify_overviewCoolify Infrastructure OverviewA
Read-onlyIdempotent

Get a comprehensive snapshot of all servers, projects, applications, databases, and services. This is the best starting point when you need to understand the current state of the infrastructure.

Inputs: reveal, summary, instance.

coolify_reset_labelsReset Coolify Application LabelsA
Idempotent

Clear custom_labels on an application so Coolify auto-generates Traefik labels from the current domain config. Use this after changing domains to fix stale routing rules. Optionally triggers a redeploy.

Inputs: uuid (required), instance (required), reveal, redeploy.

coolify_search_docsSearch Coolify DocumentationA
Read-onlyIdempotent

Search the official Coolify documentation and return the most relevant sections (title, url, description, snippet). Use for API/config/feature questions. No instance needed.

Inputs: query (required), limit, reveal.

coolify_server_domainsList Server DomainsA
Read-onlyIdempotent

Retrieve all domain-to-resource mappings configured on a server. Shows which apps are reachable at which FQDNs.

Inputs: uuid (required), reveal, instance.

coolify_server_resourcesList Server ResourcesA
Read-onlyIdempotent

List all applications, databases, and services deployed on a specific server. Great for getting a full inventory of what's running on your VPS.

Inputs: uuid (required), reveal, instance.

coolify_set_compose_configSet Docker Compose ConfigurationA
Idempotent

Configure compose-specific fields for a dockercompose application: domain-to-service mapping, compose file location, and optionally clear stale custom_labels. This is required after creating a compose app to set up Traefik routing.

Inputs: uuid (required), instance (required), reveal, reset_labels, +2 more.

coolify_update_app_envUpdate Application Environment VariableA
Idempotent

Update an existing environment variable on an application. Coolify matches the var by key name — key and value are both required.

Inputs: key (required), uuid (required), value (required), instance (required), +4 more.

coolify_update_applicationUpdate Coolify ApplicationA
Idempotent

Update an application's configuration. Supports changing name, description, domains, Git settings, build pack, health check config, ports, and more. Only supply the fields you want to change.

Inputs: uuid (required), instance (required), name, reveal, +16 more.

coolify_update_databaseUpdate Coolify DatabaseA
Idempotent

Update a database resource's configuration.

Inputs: uuid (required), instance (required), name, image, +4 more.

coolify_update_database_backupUpdate Database Backup ScheduleA
Idempotent

Update fields of an existing backup schedule. Only supplied fields change.

Inputs: instance (required), backup_uuid (required), database_uuid (required), reveal, +10 more.

coolify_update_github_appUpdate Coolify GitHub AppC
Idempotent

Update fields of a GitHub-App integration. Only supplied fields change.

Inputs: id (required), instance (required), name, app_id, +12 more.

coolify_update_projectUpdate Coolify ProjectB
Idempotent

Update a project's name or description.

Inputs: uuid (required), instance (required), name, reveal, +1 more.

coolify_update_scheduled_taskUpdate Scheduled TaskB
Idempotent

Update a scheduled task's command, frequency, or enabled state.

Inputs: uuid (required), instance (required), resource (required), task_uuid (required), +6 more.

coolify_update_serviceUpdate Coolify ServiceB
Idempotent

Update a service's configuration.

Inputs: uuid (required), instance (required), name, reveal, +3 more.

coolify_update_service_envUpdate Service Environment VariableA
Idempotent

Update an existing environment variable on a Coolify service (Flavor C / docker-compose apps). Coolify matches the var by key name. Use for multi-container compose services.

Inputs: key (required), uuid (required), value (required), instance (required), +4 more.

coolify_update_storageUpdate StorageB
Idempotent

Update a storage entry (e.g. change mount path or host path).

Inputs: uuid (required), instance (required), resource (required), storage_uuid (required), +4 more.

coolify_validate_serverValidate Coolify ServerA
Read-onlyIdempotent

Test SSH connectivity and Docker prerequisites for a server. Use this to verify a server is properly connected before deploying resources.

Inputs: uuid (required), reveal, instance.

coolify_versionGet Coolify VersionA
Read-onlyIdempotent

Returns the Coolify instance version. Useful for verifying connectivity and API compatibility.

Inputs: reveal, instance.

vps_docker_logsGet Docker Container LogsA
Read-onlyIdempotent

Retrieve logs from a Docker container on the selected VPS. Targets Hetzner prod by default; pass instance='dev' for the OrbStack ubuntu machine.

Inputs: container (required), lines, since, reveal, +1 more.

vps_docker_psList Docker ContainersA
Read-onlyIdempotent

List running Docker containers on the selected VPS. Shows name, image, status, ports, and size. Targets Hetzner prod by default; pass instance='dev' for the OrbStack ubuntu machine (docker is invoked via sudo on dev).

Inputs: all, reveal, instance.

vps_docker_statsDocker Container Resource UsageA
Read-onlyIdempotent

Get current CPU, memory, network, and disk I/O usage for all running containers on the selected VPS. One-shot snapshot (not streaming). Targets Hetzner prod by default; pass instance='dev' for the OrbStack ubuntu machine.

Inputs: reveal, instance.

vps_execExecute VPS CommandA

Run a shell command on the selected VPS and return stdout, stderr, and exit code. Targets Hetzner prod by default; pass instance='dev' to run inside the OrbStack ubuntu machine. Use for any ad-hoc operation: checking processes, installing packages, inspecting logs, etc.

Inputs: command (required), reveal, timeout, instance.

vps_healthVPS Health CheckA
Read-onlyIdempotent

Get a comprehensive health snapshot of the selected VPS: uptime, CPU load, memory usage, disk usage, running Docker containers count, and top processes by CPU. Targets Hetzner prod by default; pass instance='dev' for the OrbStack ubuntu machine.

Inputs: reveal, instance.

vps_read_fileRead VPS FileA
Read-onlyIdempotent

Read the contents of a file on the selected VPS. Targets Hetzner prod by default; pass instance='dev' for the OrbStack ubuntu machine.

Inputs: path (required), reveal, instance.

vps_write_fileWrite VPS FileA
Idempotent

Write content to a file on the selected VPS. Creates the file if it doesn't exist, overwrites if it does. Targets Hetzner prod by default; pass instance='dev' for the OrbStack ubuntu machine.

Inputs: path (required), content (required), reveal, instance.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.6/5.0

    Scored across 93 tools

    Disambiguation5/5

    Every tool has a clearly distinct purpose, with thorough descriptions that specify which resource type and action they target. Even similar-sounding tools (e.g., create vs bulk_create, app vs service env vars) are unambiguously differentiated by their naming and description details.

    Naming Consistency5/5

    All tools follow a consistent `verb_noun` pattern, with a clear prefix indicating the subsystem (`coolify_` or `vps_`). There is no mixing of conventions or vague verbs, making the naming predictable and easy to understand.

    Tool Count1/5

    With 93 tools, the server severely exceeds the recommended range for MCP servers (typically 3-15). Even for a broad domain like infrastructure ops, this extreme count will likely overwhelm agents and cause confusion, hindering efficient tool selection.

    Completeness5/5

    The tool surface covers the full lifecycle of Coolify resources (applications, databases, services, environments, projects, backups, env vars, scheduled tasks, storages, deployments, servers, GitHub apps, private keys) plus VPS operations (docker, file management, health checks). No obvious gaps are present for the stated purpose.

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      B
      quality
      D
      maintenance
      Enables AI assistants to interact with Coolify for complete infrastructure management including applications, databases, servers, deployments, and team operations. Provides 100% API coverage with 64 tools for managing the entire Coolify ecosystem through natural language.
      18
      11 npm
      6
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables AI assistants to manage Coolify infrastructure including servers, applications, databases, deployments, and 80+ one-click services through 98 comprehensive tools for both cloud and self-hosted instances.
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables managing a self-hosted Coolify PaaS from Claude, Cursor, or any MCP client through 45 tools for deploying, rolling back, debugging, and operating applications, databases, services, projects, and environments in plain English. Destructive operations pause for human confirmation and secrets stay masked.
      4,835 npm
      MIT