RunCloud MCP by usefulapi

Read RunCloud servers, web apps, databases and logs; deploy, restart services, renew SSL.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
99%
Integridad del esquema
97%
Calidad de los nombres
99%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (2)

  • LOWTool 'runcloud_list_atomic_deployments' name length outside 3-30 rangeen runcloud_list_atomic_deployments
  • LOWTool 'runcloud_install_letsencrypt_ssl' name length outside 3-30 rangeen runcloud_install_letsencrypt_ssl

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~7,481Tokens (definiciones de herramientas)
~1.4 KBTamaño de respuesta típico
Impacto significativo en la atención (5.84% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "runcloud": {
      "url": "https://runcloud.usefulapi.io/mcp"
    }
  }
}

Puntos de conexión remotos

https://runcloud.usefulapi.io/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (36)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢runcloud_ping

Check that the API key works: RunCloud answers with a message ('pong'). GET /ping.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_list_servers(page, per_page)

List the servers connected to the workspace: id, name, provider, IP address, OS, stack, online/connected state, agent and PHP CLI version, auto-update settings and tags. GET /servers.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-40 (default 20).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 40
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_get_server(server_id)

One server by id: provider, IP, OS and version, stack, online state, agent version, update settings, tags. GET /servers/{id}.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    }
  },
  "required": [
    "server_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_get_server_stats(server_id)

How many web applications, databases, cron jobs and supervisor jobs a server has, and its country. GET /servers/{id}/stats.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    }
  },
  "required": [
    "server_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_get_server_hardware(server_id)

Kernel version, CPU model and cores, memory and disk totals/free, load average and uptime of a server. GET /servers/{id}/hardwareinfo.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    }
  },
  "required": [
    "server_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_get_server_health(server_id)

The latest health sample of a server: total/available/used memory and disk space (MB) and load average. GET /servers/{id}/health/latest.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    }
  },
  "required": [
    "server_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_list_server_logs(server_id, page, per_page)

The server's activity log (what was changed in RunCloud and when), newest first. GET /servers/{id}/logs.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-40 (default 20).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 40
    }
  },
  "required": [
    "server_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_list_services(server_id)

The services on a server (nginx, php-fpm, mariadb, redis, supervisor...) with real name, running state, CPU, memory and version. The realName is what runcloud_control_service needs. GET /servers/{id}/services.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    }
  },
  "required": [
    "server_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_list_system_users(server_id, page, per_page)

The system (Linux) users on a server: id, username, whether deletable. Deployment keys and passwords are never returned. GET /servers/{id}/users.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-40 (default 20).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 40
    }
  },
  "required": [
    "server_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_list_webapps(server_id, search, page, per_page)

List the web applications on a server: id, name, root/public path, PHP version, stack, type (wordpress, custom...), default flag, alias. Deployment webhook keys are not returned. GET /servers/{id}/webapps.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "search": {
      "description": "Filter by web application name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-40 (default 20).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 40
    }
  },
  "required": [
    "server_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_get_webapp(server_id, webapp_id)

One web application by id (path, PHP version, stack, type, default flag). GET /servers/{id}/webapps/{webapp}.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "webapp_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Web application id (see runcloud_list_webapps)."
    }
  },
  "required": [
    "server_id",
    "webapp_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_get_webapp_settings(server_id, webapp_id)

PHP and FPM/Nginx settings of a web application (disabled functions, timezone, memory and upload limits, process manager...). GET /servers/{id}/webapps/{webapp}/settings.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "webapp_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Web application id (see runcloud_list_webapps)."
    }
  },
  "required": [
    "server_id",
    "webapp_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_list_webapp_logs(server_id, webapp_id, page, per_page)

The activity log of a web application (settings changes, PHP version changes, deployments), newest first. GET /servers/{id}/webapps/{webapp}/log.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "webapp_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Web application id (see runcloud_list_webapps)."
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-40 (default 20).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 40
    }
  },
  "required": [
    "server_id",
    "webapp_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_list_domains(server_id, webapp_id, page, per_page)

The domain names of a web application: id, name, type (primary/alias), www, redirection, wildcard, DNS integration, status. GET /servers/{id}/webapps/{webapp}/domains.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "webapp_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Web application id (see runcloud_list_webapps)."
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-40 (default 20).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 40
    }
  },
  "required": [
    "server_id",
    "webapp_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_get_domain_dns(server_id, webapp_id, domain_id)

The DNS records (A, CNAME...) a domain name needs to point at the server. GET /servers/{id}/webapps/{webapp}/domains/{domain}/dns.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "webapp_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Web application id (see runcloud_list_webapps)."
    },
    "domain_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Domain name id (see runcloud_list_domains)."
    }
  },
  "required": [
    "server_id",
    "webapp_id",
    "domain_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_get_webapp_ssl(server_id, webapp_id)

The web application's SSL certificate (basic / web-app-level SSL): provider, validity, HTTPS settings. Private keys are never returned. GET /servers/{id}/webapps/{webapp}/ssl.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "webapp_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Web application id (see runcloud_list_webapps)."
    }
  },
  "required": [
    "server_id",
    "webapp_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_get_ssl_method(server_id, webapp_id)

Whether the web application uses basic (one certificate for the app) or advanced (one per domain) SSL, and its AutoSSL status. Advanced SSL is a Business/Enterprise feature. GET /servers/{id}/webapps/{webapp}/ssl/advanced.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "webapp_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Web application id (see runcloud_list_webapps)."
    }
  },
  "required": [
    "server_id",
    "webapp_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_get_git_deployment(server_id, webapp_id)

The Git deployment configured on a web application: provider, branch, repository URL, auto-deploy flag, deployment script and whether it is an atomic deployment. The deployment webhook keys are not returned. The id of the result is the git_id for runcloud_deploy_git. GET /servers/{id}/webapps/{webapp}/git.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "webapp_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Web application id (see runcloud_list_webapps)."
    }
  },
  "required": [
    "server_id",
    "webapp_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_list_databases(server_id, page, per_page)

The databases on a server: id, name, collation. No credentials. GET /servers/{id}/databases.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-40 (default 20).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 40
    }
  },
  "required": [
    "server_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_list_database_users(server_id, page, per_page)

The database users on a server (id, username). Passwords are never returned. GET /servers/{id}/databaseusers.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-40 (default 20).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 40
    }
  },
  "required": [
    "server_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_list_cronjobs(server_id, page, per_page)

The cron jobs of a server: id, label, user, schedule, command, enabled flag. The id is what runcloud_run_cronjob needs. GET /servers/{id}/cronjobs.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-40 (default 20).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 40
    }
  },
  "required": [
    "server_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_list_supervisors(server_id, page, per_page)

The supervisor (background worker) jobs of a server: id, label, user, process count, auto start/restart, directory, command. GET /servers/{id}/supervisors.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-40 (default 20).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 40
    }
  },
  "required": [
    "server_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_get_supervisor_status(server_id)

The live status (RUNNING, FATAL, BACKOFF...), pid and uptime of every supervisor process, by job label. GET /servers/{id}/supervisors/status.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    }
  },
  "required": [
    "server_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_list_firewall_rules(server_id, page, per_page)

The firewall rules of a server: type (global/rich), port, protocol, IP address, action. GET /servers/{id}/security/firewalls.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-40 (default 20).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 40
    }
  },
  "required": [
    "server_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_list_blocked_ips(server_id)

The IP addresses Fail2Ban currently blocks on a server. GET /servers/{id}/security/fail2ban/blockedip.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    }
  },
  "required": [
    "server_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_list_backups(server_id, storage, status, search, page, ...)

The backup instances of the workspace: label, what they cover (web app / database), storage, type, frequency, size, status. Filter by server, storage, status or name. GET /backups.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "description": "Only backups of this server id.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "storage": {
      "description": "Storage type, e.g. runcloud or local.",
      "type": "string",
      "minLength": 1,
      "maxLength": 60
    },
    "status": {
      "description": "Backup status, e.g. active.",
      "type": "string",
      "minLength": 1,
      "maxLength": 60
    },
    "search": {
      "description": "Filter by backup name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-40 (default 20).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 40
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_list_backup_snapshots(backup_id, page, per_page)

The snapshots of one backup instance: run date, status, type and size. GET /backups/{id}/snapshots.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "backup_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Backup instance id (see runcloud_list_backups)."
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-40 (default 20).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 40
    }
  },
  "required": [
    "backup_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_list_atomic_projects(page, per_page)

The atomic Git deployment projects of the workspace: name, provider, repository, branch, auto-deploy, success/failure counts and the latest deployment. Webhook keys are not returned. GET /atomic.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-40 (default 20).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 40
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢runcloud_list_atomic_deployments(project_id, page, per_page)

The deployments of an atomic project: commit hash, branch, message, committer, release name, status (DEPLOYING, COMPLETED, FAILED), start and end time. GET /atomic/{project}/deployments.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "project_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Atomic project id (see runcloud_list_atomic_projects)."
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-40 (default 20).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 40
    }
  },
  "required": [
    "project_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴runcloud_control_service(server_id, action, real_name)

WRITE: run systemctl start, restart or reload on one service of a server (for example nginx-rc or php81rc-fpm). A restart briefly interrupts that service and the sites behind it. 'stop' is deliberately not offered. Get the realName from runcloud_list_services. PATCH /servers/{id}/services.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "action": {
      "type": "string",
      "enum": [
        "start",
        "restart",
        "reload"
      ],
      "description": "systemctl action."
    },
    "real_name": {
      "type": "string",
      "pattern": "^[A-Za-z0-9][A-Za-z0-9._@+-]{0,63}$",
      "description": "The service's realName from runcloud_list_services, e.g. nginx-rc or redis-server."
    }
  },
  "required": [
    "server_id",
    "action",
    "real_name"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴runcloud_deploy_git(server_id, webapp_id, git_id)

WRITE: force a Git deployment of a web application now: RunCloud pulls the configured branch and runs the deployment script, which changes the live site's files. Get git_id from runcloud_get_git_deployment (its id). PUT /servers/{id}/webapps/{webapp}/git/{git}/script.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "webapp_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Web application id (see runcloud_list_webapps)."
    },
    "git_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Git deployment id (runcloud_get_git_deployment -> id)."
    }
  },
  "required": [
    "server_id",
    "webapp_id",
    "git_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴runcloud_force_deploy_atomic(project_id)

WRITE: start an atomic deployment of a project now (builds a new release and switches the live symlink when it succeeds). PUT /atomic/{project}/forcedeploy.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "project_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Atomic project id (runcloud_list_atomic_projects)."
    }
  },
  "required": [
    "project_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴runcloud_run_cronjob(server_id, cronjob_id)

WRITE: force-run one cron job of a server once, right now, outside its schedule. The job's command runs on the server with its configured user. Get the id from runcloud_list_cronjobs. POST /servers/{id}/cronjobs/{job}/run.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "cronjob_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Cron job id (runcloud_list_cronjobs)."
    }
  },
  "required": [
    "server_id",
    "cronjob_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴runcloud_reload_supervisor(server_id, supervisor_id)

WRITE: reload one supervisor job so its worker processes restart (running processes are interrupted). Get the id from runcloud_list_supervisors. POST /servers/{id}/supervisors/{job}/reload.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "supervisor_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Supervisor job id (runcloud_list_supervisors)."
    }
  },
  "required": [
    "server_id",
    "supervisor_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴runcloud_renew_ssl(server_id, webapp_id, ssl_id, domain_id)

WRITE: redeploy (renew) the Let's Encrypt certificate of a web application, which re-issues it and reloads the web server. Let's Encrypt certificates only. For basic SSL pass the ssl_id from runcloud_get_webapp_ssl; for advanced (per-domain) SSL, which requires advanced SSL mode (check runcloud_get_ssl_method), also pass domain_id. PUT /servers/{id}/webapps/{webapp}/ssl/{ssl} or /domains/{domain}/ssl/{ssl}.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "webapp_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Web application id (see runcloud_list_webapps)."
    },
    "ssl_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "SSL certificate id (runcloud_get_webapp_ssl -> id)."
    },
    "domain_id": {
      "description": "Only for advanced (per-domain) SSL mode (see runcloud_get_ssl_method): the domain's id.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "server_id",
    "webapp_id",
    "ssl_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴runcloud_install_letsencrypt_ssl(server_id, webapp_id, domain_id, authorization_method, external_api, ...)

WRITE: issue and install a free Let's Encrypt certificate for a web application (basic SSL) or for one domain of it (advanced SSL, pass domain_id; this requires advanced SSL mode, see runcloud_get_ssl_method). The web server is reloaded; the domain's DNS must already point at the server. Custom certificates are not supported here. POST /servers/{id}/webapps/{webapp}/ssl or /domains/{domain}/ssl.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "RunCloud server id (see runcloud_list_servers)."
    },
    "webapp_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Web application id (see runcloud_list_webapps)."
    },
    "domain_id": {
      "description": "Only for advanced (per-domain) SSL mode (see runcloud_get_ssl_method): the domain's id.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "authorization_method": {
      "type": "string",
      "enum": [
        "http-01",
        "dns-01"
      ],
      "description": "Let's Encrypt challenge: http-01, or dns-01 (needs external_api, a Cloudflare DNS integration)."
    },
    "external_api": {
      "description": "Id of the Cloudflare DNS integration; required for dns-01.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "environment": {
      "description": "live (default, trusted certificate) or staging (test certificate).",
      "type": "string",
      "enum": [
        "live",
        "staging"
      ]
    },
    "enable_http": {
      "type": "boolean",
      "description": "Keep plain HTTP enabled alongside HTTPS."
    },
    "enable_hsts": {
      "type": "boolean",
      "description": "Send the HSTS header (browsers will insist on HTTPS)."
    }
  },
  "required": [
    "server_id",
    "webapp_id",
    "authorization_method",
    "enable_http",
    "enable_hsts"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada36 herramientas