RunCloud MCP by usefulapi

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

사용해야 할까요

품질 및 안전성

A
설명 품질
99%
스키마 완전성
97%
이름 품질
99%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (2)

  • LOWTool 'runcloud_list_atomic_deployments' name length outside 3-30 rangeruncloud_list_atomic_deployments에서
  • LOWTool 'runcloud_install_letsencrypt_ssl' name length outside 3-30 rangeruncloud_install_letsencrypt_ssl에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~7,481토큰 (도구 정의)
~1.4 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 5.84%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

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

원격 엔드포인트

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

할 수 있는 일

도구 목록

도구 (36)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢runcloud_ping

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

입력 스키마

{
  "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.

입력 스키마

{
  "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}.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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}.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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}.

입력 스키마

{
  "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.

입력 스키마

{
  "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"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 36개