quicklify 1.1.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (208) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +48 -24
  3. package/README.tr.md +46 -22
  4. package/SECURITY.md +63 -34
  5. package/dist/commands/add.d.ts +1 -0
  6. package/dist/commands/add.d.ts.map +1 -1
  7. package/dist/commands/add.js +48 -74
  8. package/dist/commands/add.js.map +1 -1
  9. package/dist/commands/backup.d.ts +2 -11
  10. package/dist/commands/backup.d.ts.map +1 -1
  11. package/dist/commands/backup.js +111 -53
  12. package/dist/commands/backup.js.map +1 -1
  13. package/dist/commands/destroy.d.ts.map +1 -1
  14. package/dist/commands/destroy.js +58 -37
  15. package/dist/commands/destroy.js.map +1 -1
  16. package/dist/commands/doctor.d.ts.map +1 -1
  17. package/dist/commands/doctor.js +16 -30
  18. package/dist/commands/doctor.js.map +1 -1
  19. package/dist/commands/domain.d.ts +2 -9
  20. package/dist/commands/domain.d.ts.map +1 -1
  21. package/dist/commands/domain.js +47 -56
  22. package/dist/commands/domain.js.map +1 -1
  23. package/dist/commands/firewall.d.ts +3 -10
  24. package/dist/commands/firewall.d.ts.map +1 -1
  25. package/dist/commands/firewall.js +28 -51
  26. package/dist/commands/firewall.js.map +1 -1
  27. package/dist/commands/health.d.ts +2 -2
  28. package/dist/commands/health.d.ts.map +1 -1
  29. package/dist/commands/health.js +77 -19
  30. package/dist/commands/health.js.map +1 -1
  31. package/dist/commands/init.d.ts.map +1 -1
  32. package/dist/commands/init.js +28 -306
  33. package/dist/commands/init.js.map +1 -1
  34. package/dist/commands/interactive.d.ts +2 -0
  35. package/dist/commands/interactive.d.ts.map +1 -0
  36. package/dist/commands/interactive.js +357 -0
  37. package/dist/commands/interactive.js.map +1 -0
  38. package/dist/commands/list.d.ts.map +1 -1
  39. package/dist/commands/list.js +4 -2
  40. package/dist/commands/list.js.map +1 -1
  41. package/dist/commands/logs.d.ts.map +1 -1
  42. package/dist/commands/logs.js +9 -1
  43. package/dist/commands/logs.js.map +1 -1
  44. package/dist/commands/maintain.d.ts.map +1 -1
  45. package/dist/commands/maintain.js +28 -47
  46. package/dist/commands/maintain.js.map +1 -1
  47. package/dist/commands/monitor.js +1 -1
  48. package/dist/commands/monitor.js.map +1 -1
  49. package/dist/commands/remove.d.ts.map +1 -1
  50. package/dist/commands/remove.js +25 -0
  51. package/dist/commands/remove.js.map +1 -1
  52. package/dist/commands/restart.d.ts.map +1 -1
  53. package/dist/commands/restart.js +39 -39
  54. package/dist/commands/restart.js.map +1 -1
  55. package/dist/commands/restore.d.ts +2 -13
  56. package/dist/commands/restore.d.ts.map +1 -1
  57. package/dist/commands/restore.js +42 -54
  58. package/dist/commands/restore.js.map +1 -1
  59. package/dist/commands/secure.d.ts +2 -9
  60. package/dist/commands/secure.d.ts.map +1 -1
  61. package/dist/commands/secure.js +2 -97
  62. package/dist/commands/secure.js.map +1 -1
  63. package/dist/commands/snapshot.d.ts.map +1 -1
  64. package/dist/commands/snapshot.js +55 -67
  65. package/dist/commands/snapshot.js.map +1 -1
  66. package/dist/commands/status.d.ts.map +1 -1
  67. package/dist/commands/status.js +33 -16
  68. package/dist/commands/status.js.map +1 -1
  69. package/dist/commands/update.d.ts.map +1 -1
  70. package/dist/commands/update.js +23 -16
  71. package/dist/commands/update.js.map +1 -1
  72. package/dist/constants.d.ts +42 -0
  73. package/dist/constants.d.ts.map +1 -0
  74. package/dist/constants.js +54 -0
  75. package/dist/constants.js.map +1 -0
  76. package/dist/core/backup.d.ts +18 -2
  77. package/dist/core/backup.d.ts.map +1 -1
  78. package/dist/core/backup.js +184 -7
  79. package/dist/core/backup.js.map +1 -1
  80. package/dist/core/deploy.d.ts +4 -0
  81. package/dist/core/deploy.d.ts.map +1 -0
  82. package/dist/core/deploy.js +360 -0
  83. package/dist/core/deploy.js.map +1 -0
  84. package/dist/core/domain.d.ts.map +1 -1
  85. package/dist/core/domain.js +1 -5
  86. package/dist/core/domain.js.map +1 -1
  87. package/dist/core/firewall.d.ts +2 -0
  88. package/dist/core/firewall.d.ts.map +1 -1
  89. package/dist/core/firewall.js +12 -0
  90. package/dist/core/firewall.js.map +1 -1
  91. package/dist/core/logs.js +1 -1
  92. package/dist/core/logs.js.map +1 -1
  93. package/dist/core/maintain.d.ts.map +1 -1
  94. package/dist/core/maintain.js +1 -2
  95. package/dist/core/maintain.js.map +1 -1
  96. package/dist/core/manage.d.ts +10 -1
  97. package/dist/core/manage.d.ts.map +1 -1
  98. package/dist/core/manage.js +45 -7
  99. package/dist/core/manage.js.map +1 -1
  100. package/dist/core/provision.d.ts +2 -1
  101. package/dist/core/provision.d.ts.map +1 -1
  102. package/dist/core/provision.js +8 -13
  103. package/dist/core/provision.js.map +1 -1
  104. package/dist/core/secure.d.ts.map +1 -1
  105. package/dist/core/secure.js +8 -2
  106. package/dist/core/secure.js.map +1 -1
  107. package/dist/core/status.d.ts.map +1 -1
  108. package/dist/core/status.js +2 -1
  109. package/dist/core/status.js.map +1 -1
  110. package/dist/core/tokens.d.ts.map +1 -1
  111. package/dist/core/tokens.js +5 -8
  112. package/dist/core/tokens.js.map +1 -1
  113. package/dist/index.js +17 -4
  114. package/dist/index.js.map +1 -1
  115. package/dist/mcp/server.d.ts.map +1 -1
  116. package/dist/mcp/server.js +13 -7
  117. package/dist/mcp/server.js.map +1 -1
  118. package/dist/mcp/tools/serverBackup.d.ts +2 -7
  119. package/dist/mcp/tools/serverBackup.d.ts.map +1 -1
  120. package/dist/mcp/tools/serverBackup.js +120 -234
  121. package/dist/mcp/tools/serverBackup.js.map +1 -1
  122. package/dist/mcp/tools/serverInfo.d.ts +19 -2
  123. package/dist/mcp/tools/serverInfo.d.ts.map +1 -1
  124. package/dist/mcp/tools/serverInfo.js +122 -57
  125. package/dist/mcp/tools/serverInfo.js.map +1 -1
  126. package/dist/mcp/tools/serverLogs.d.ts +2 -7
  127. package/dist/mcp/tools/serverLogs.d.ts.map +1 -1
  128. package/dist/mcp/tools/serverLogs.js +36 -57
  129. package/dist/mcp/tools/serverLogs.js.map +1 -1
  130. package/dist/mcp/tools/serverMaintain.d.ts +3 -8
  131. package/dist/mcp/tools/serverMaintain.d.ts.map +1 -1
  132. package/dist/mcp/tools/serverMaintain.js +48 -109
  133. package/dist/mcp/tools/serverMaintain.js.map +1 -1
  134. package/dist/mcp/tools/serverManage.d.ts +5 -0
  135. package/dist/mcp/tools/serverManage.d.ts.map +1 -1
  136. package/dist/mcp/tools/serverManage.js +94 -110
  137. package/dist/mcp/tools/serverManage.js.map +1 -1
  138. package/dist/mcp/tools/serverProvision.d.ts +7 -1
  139. package/dist/mcp/tools/serverProvision.d.ts.map +1 -1
  140. package/dist/mcp/tools/serverProvision.js +69 -77
  141. package/dist/mcp/tools/serverProvision.js.map +1 -1
  142. package/dist/mcp/tools/serverSecure.d.ts +2 -7
  143. package/dist/mcp/tools/serverSecure.d.ts.map +1 -1
  144. package/dist/mcp/tools/serverSecure.js +109 -170
  145. package/dist/mcp/tools/serverSecure.js.map +1 -1
  146. package/dist/mcp/utils.d.ts +42 -0
  147. package/dist/mcp/utils.d.ts.map +1 -0
  148. package/dist/mcp/utils.js +61 -0
  149. package/dist/mcp/utils.js.map +1 -0
  150. package/dist/providers/base.d.ts +9 -2
  151. package/dist/providers/base.d.ts.map +1 -1
  152. package/dist/providers/base.js +56 -1
  153. package/dist/providers/base.js.map +1 -1
  154. package/dist/providers/digitalocean.d.ts +3 -3
  155. package/dist/providers/digitalocean.d.ts.map +1 -1
  156. package/dist/providers/digitalocean.js +4 -12
  157. package/dist/providers/digitalocean.js.map +1 -1
  158. package/dist/providers/hetzner.d.ts +3 -3
  159. package/dist/providers/hetzner.d.ts.map +1 -1
  160. package/dist/providers/hetzner.js +8 -13
  161. package/dist/providers/hetzner.js.map +1 -1
  162. package/dist/providers/linode.d.ts +3 -3
  163. package/dist/providers/linode.d.ts.map +1 -1
  164. package/dist/providers/linode.js +3 -11
  165. package/dist/providers/linode.js.map +1 -1
  166. package/dist/providers/vultr.d.ts +3 -3
  167. package/dist/providers/vultr.d.ts.map +1 -1
  168. package/dist/providers/vultr.js +3 -11
  169. package/dist/providers/vultr.js.map +1 -1
  170. package/dist/types/index.d.ts +11 -0
  171. package/dist/types/index.d.ts.map +1 -1
  172. package/dist/utils/cloudInit.d.ts +1 -0
  173. package/dist/utils/cloudInit.d.ts.map +1 -1
  174. package/dist/utils/cloudInit.js +62 -0
  175. package/dist/utils/cloudInit.js.map +1 -1
  176. package/dist/utils/config.js +1 -1
  177. package/dist/utils/config.js.map +1 -1
  178. package/dist/utils/defaults.d.ts.map +1 -1
  179. package/dist/utils/defaults.js +3 -2
  180. package/dist/utils/defaults.js.map +1 -1
  181. package/dist/utils/errorMapper.d.ts.map +1 -1
  182. package/dist/utils/errorMapper.js +5 -1
  183. package/dist/utils/errorMapper.js.map +1 -1
  184. package/dist/utils/modeGuard.d.ts +5 -0
  185. package/dist/utils/modeGuard.d.ts.map +1 -0
  186. package/dist/utils/modeGuard.js +13 -0
  187. package/dist/utils/modeGuard.js.map +1 -0
  188. package/dist/utils/openBrowser.d.ts.map +1 -1
  189. package/dist/utils/openBrowser.js +3 -1
  190. package/dist/utils/openBrowser.js.map +1 -1
  191. package/dist/utils/prompts.d.ts +2 -2
  192. package/dist/utils/prompts.d.ts.map +1 -1
  193. package/dist/utils/prompts.js +8 -9
  194. package/dist/utils/prompts.js.map +1 -1
  195. package/dist/utils/serverSelect.d.ts.map +1 -1
  196. package/dist/utils/serverSelect.js +2 -7
  197. package/dist/utils/serverSelect.js.map +1 -1
  198. package/dist/utils/ssh.d.ts +9 -0
  199. package/dist/utils/ssh.d.ts.map +1 -1
  200. package/dist/utils/ssh.js +175 -15
  201. package/dist/utils/ssh.js.map +1 -1
  202. package/dist/utils/sshKey.d.ts.map +1 -1
  203. package/dist/utils/sshKey.js +3 -0
  204. package/dist/utils/sshKey.js.map +1 -1
  205. package/dist/utils/yamlConfig.d.ts.map +1 -1
  206. package/dist/utils/yamlConfig.js +4 -3
  207. package/dist/utils/yamlConfig.js.map +1 -1
  208. package/package.json +5 -5
@@ -1,63 +1,42 @@
1
1
  import { z } from "zod";
2
- import { getServers, findServer } from "../../utils/config.js";
2
+ import { getServers } from "../../utils/config.js";
3
3
  import { isSafeMode } from "../../core/manage.js";
4
- import { getProviderToken } from "../../core/tokens.js";
5
- import { createBackup, restoreBackup, listBackups, loadManifest, } from "../../core/backup.js";
4
+ import { createBackup, createBareBackup, restoreBackup, restoreBareBackup, listBackups, loadManifest, } from "../../core/backup.js";
6
5
  import { createSnapshot, listSnapshots, deleteSnapshot, } from "../../core/snapshot.js";
6
+ import { isBareServer } from "../../utils/modeGuard.js";
7
+ import { resolveServerForMcp, mcpSuccess, mcpError, requireProviderToken, } from "../utils.js";
7
8
  import { getErrorMessage } from "../../utils/errorMapper.js";
8
9
  export const serverBackupSchema = {
9
10
  action: z.enum([
10
11
  "backup-create", "backup-list", "backup-restore",
11
12
  "snapshot-create", "snapshot-list", "snapshot-delete",
12
- ]).describe("Backup: 'backup-create' dumps Coolify DB+config via SSH, 'backup-list' shows local backups, 'backup-restore' restores (SAFE_MODE blocks). Snapshot: 'snapshot-create'/'snapshot-list'/'snapshot-delete' manage cloud snapshots (requires API token)."),
13
+ ]).describe("Backup: 'backup-create' dumps Coolify DB+config via SSH (or system config for bare servers), 'backup-list' shows local backups, 'backup-restore' restores (SAFE_MODE blocks). Snapshot: 'snapshot-create'/'snapshot-list'/'snapshot-delete' manage cloud snapshots (requires API token)."),
13
14
  server: z.string().optional().describe("Server name or IP. Auto-selected if only one server exists."),
14
15
  backupId: z.string().regex(/^[\w-]+$/, "Invalid backupId: only alphanumeric, hyphens, underscores allowed").optional().describe("Backup timestamp folder name (required for backup-restore)."),
15
16
  snapshotId: z.string().optional().describe("Cloud snapshot ID (required for snapshot-delete)."),
16
17
  };
17
- function resolveServer(params, servers) {
18
- if (params.server) {
19
- return findServer(params.server);
20
- }
21
- if (servers.length === 1) {
22
- return servers[0];
23
- }
24
- return undefined;
25
- }
26
18
  export async function handleServerBackup(params) {
27
19
  try {
28
20
  const servers = getServers();
29
21
  if (servers.length === 0) {
30
- return {
31
- content: [{ type: "text", text: JSON.stringify({
32
- error: "No servers found",
33
- suggested_actions: [{ command: "quicklify init", reason: "Deploy a server first" }],
34
- }) }],
35
- isError: true,
36
- };
22
+ return mcpError("No servers found", undefined, [
23
+ { command: "quicklify init", reason: "Deploy a server first" },
24
+ ]);
37
25
  }
38
- const server = resolveServer(params, servers);
26
+ const server = resolveServerForMcp(params, servers);
39
27
  if (!server) {
40
28
  if (params.server) {
41
- return {
42
- content: [{ type: "text", text: JSON.stringify({
43
- error: `Server not found: ${params.server}`,
44
- available_servers: servers.map((s) => s.name),
45
- }) }],
46
- isError: true,
47
- };
29
+ return mcpError(`Server not found: ${params.server}`, `Available servers: ${servers.map((s) => s.name).join(", ")}`);
48
30
  }
49
- return {
50
- content: [{ type: "text", text: JSON.stringify({
51
- error: "Multiple servers found. Specify which server to use.",
52
- available_servers: servers.map((s) => ({ name: s.name, ip: s.ip })),
53
- }) }],
54
- isError: true,
55
- };
31
+ return mcpError("Multiple servers found. Specify which server to use.", `Available: ${servers.map((s) => s.name).join(", ")}`);
56
32
  }
57
33
  switch (params.action) {
58
34
  // ─── Backup Actions ──────────────────────────────────────────────
59
35
  case "backup-create": {
60
- const result = await createBackup(server.ip, server.name, server.provider);
36
+ const bare = isBareServer(server);
37
+ const result = bare
38
+ ? await createBareBackup(server.ip, server.name, server.provider)
39
+ : await createBackup(server.ip, server.name, server.provider);
61
40
  if (!result.success) {
62
41
  return {
63
42
  content: [{ type: "text", text: JSON.stringify({
@@ -72,33 +51,29 @@ export async function handleServerBackup(params) {
72
51
  isError: true,
73
52
  };
74
53
  }
75
- return {
76
- content: [{ type: "text", text: JSON.stringify({
77
- success: true,
78
- server: server.name,
79
- ip: server.ip,
80
- backupPath: result.backupPath,
81
- manifest: result.manifest,
82
- suggested_actions: [
83
- { command: `server_backup { action: 'backup-list', server: '${server.name}' }`, reason: "View all backups" },
84
- { command: `server_secure { action: 'secure-audit', server: '${server.name}' }`, reason: "Run security audit" },
85
- ],
86
- }) }],
87
- };
54
+ return mcpSuccess({
55
+ success: true,
56
+ server: server.name,
57
+ ip: server.ip,
58
+ backupPath: result.backupPath,
59
+ manifest: result.manifest,
60
+ suggested_actions: [
61
+ { command: `server_backup { action: 'backup-list', server: '${server.name}' }`, reason: "View all backups" },
62
+ { command: `server_secure { action: 'secure-audit', server: '${server.name}' }`, reason: "Run security audit" },
63
+ ],
64
+ });
88
65
  }
89
66
  case "backup-list": {
90
67
  const backupIds = listBackups(server.name);
91
68
  if (backupIds.length === 0) {
92
- return {
93
- content: [{ type: "text", text: JSON.stringify({
94
- server: server.name,
95
- backups: [],
96
- message: "No backups found for this server",
97
- suggested_actions: [
98
- { command: `server_backup { action: 'backup-create', server: '${server.name}' }`, reason: "Create a backup" },
99
- ],
100
- }) }],
101
- };
69
+ return mcpSuccess({
70
+ server: server.name,
71
+ backups: [],
72
+ message: "No backups found for this server",
73
+ suggested_actions: [
74
+ { command: `server_backup { action: 'backup-create', server: '${server.name}' }`, reason: "Create a backup" },
75
+ ],
76
+ });
102
77
  }
103
78
  const { getBackupDir } = await import("../../core/backup.js");
104
79
  const { join } = await import("path");
@@ -114,40 +89,26 @@ export async function handleServerBackup(params) {
114
89
  }
115
90
  return { backupId: id, status: "corrupt/unreadable" };
116
91
  });
117
- return {
118
- content: [{ type: "text", text: JSON.stringify({
119
- server: server.name,
120
- backupCount: backupIds.length,
121
- backups,
122
- suggested_actions: [
123
- { command: `server_backup { action: 'backup-restore', server: '${server.name}', backupId: '${backupIds[0]}' }`, reason: "Restore latest backup" },
124
- ],
125
- }) }],
126
- };
92
+ return mcpSuccess({
93
+ server: server.name,
94
+ backupCount: backupIds.length,
95
+ backups,
96
+ suggested_actions: [
97
+ { command: `server_backup { action: 'backup-restore', server: '${server.name}', backupId: '${backupIds[0]}' }`, reason: "Restore latest backup" },
98
+ ],
99
+ });
127
100
  }
128
101
  case "backup-restore": {
129
102
  if (isSafeMode()) {
130
- return {
131
- content: [{ type: "text", text: JSON.stringify({
132
- error: "Restore disabled in SAFE_MODE",
133
- hint: "Set QUICKLIFY_SAFE_MODE=false to enable restore operations",
134
- }) }],
135
- isError: true,
136
- };
103
+ return mcpError("Restore disabled in SAFE_MODE", "Set QUICKLIFY_SAFE_MODE=false to enable restore operations");
137
104
  }
138
105
  if (!params.backupId) {
139
- return {
140
- content: [{ type: "text", text: JSON.stringify({
141
- error: "backupId is required for backup-restore",
142
- hint: "Use backup-list to see available backups",
143
- suggested_actions: [
144
- { command: `server_backup { action: 'backup-list', server: '${server.name}' }`, reason: "List available backups" },
145
- ],
146
- }) }],
147
- isError: true,
148
- };
106
+ return mcpError("backupId is required for backup-restore", "Use backup-list to see available backups", [{ command: `server_backup { action: 'backup-list', server: '${server.name}' }`, reason: "List available backups" }]);
149
107
  }
150
- const result = await restoreBackup(server.ip, server.name, params.backupId);
108
+ const bare = isBareServer(server);
109
+ const result = bare
110
+ ? await restoreBareBackup(server.ip, server.name, params.backupId)
111
+ : await restoreBackup(server.ip, server.name, params.backupId);
151
112
  if (!result.success) {
152
113
  return {
153
114
  content: [{ type: "text", text: JSON.stringify({
@@ -161,57 +122,37 @@ export async function handleServerBackup(params) {
161
122
  isError: true,
162
123
  };
163
124
  }
164
- return {
165
- content: [{ type: "text", text: JSON.stringify({
166
- success: true,
167
- server: server.name,
168
- ip: server.ip,
169
- backupId: params.backupId,
170
- steps: result.steps,
171
- suggested_actions: [
172
- { command: `server_info { action: 'health', server: '${server.name}' }`, reason: "Verify Coolify is running" },
173
- ],
174
- }) }],
125
+ const successPayload = {
126
+ success: true,
127
+ server: server.name,
128
+ ip: server.ip,
129
+ backupId: params.backupId,
130
+ steps: result.steps,
131
+ suggested_actions: [
132
+ {
133
+ command: `server_info { action: 'health', server: '${server.name}' }`,
134
+ reason: bare ? "Verify SSH access after restore" : "Verify Coolify is running",
135
+ },
136
+ ],
175
137
  };
138
+ if (bare) {
139
+ successPayload.hint = "Config restored. You may need to restart services (e.g., nginx, fail2ban) for changes to take effect.";
140
+ }
141
+ return mcpSuccess(successPayload);
176
142
  }
177
143
  // ─── Snapshot Actions ────────────────────────────────────────────
178
144
  case "snapshot-create": {
179
145
  if (isSafeMode()) {
180
- return {
181
- content: [{ type: "text", text: JSON.stringify({
182
- error: "Snapshot creation is disabled in SAFE_MODE",
183
- hint: "Set QUICKLIFY_SAFE_MODE=false to enable snapshot creation (billable operation)",
184
- suggested_actions: [
185
- { command: `server_backup { action: 'backup-create', server: '${server.name}' }`, reason: "Use SSH-based backup instead (free)" },
186
- ],
187
- }) }],
188
- isError: true,
189
- };
146
+ return mcpError("Snapshot creation is disabled in SAFE_MODE", "Set QUICKLIFY_SAFE_MODE=false to enable snapshot creation (billable operation)", [{ command: `server_backup { action: 'backup-create', server: '${server.name}' }`, reason: "Use SSH-based backup instead (free)" }]);
190
147
  }
191
148
  const isManual = server.id.startsWith("manual-");
192
149
  if (isManual) {
193
- return {
194
- content: [{ type: "text", text: JSON.stringify({
195
- error: "Snapshots require cloud provider API. Manual servers don't have provider IDs.",
196
- hint: "Use backup-create for SSH-based backup instead.",
197
- suggested_actions: [
198
- { command: `server_backup { action: 'backup-create', server: '${server.name}' }`, reason: "SSH-based backup" },
199
- ],
200
- }) }],
201
- isError: true,
202
- };
203
- }
204
- const token = getProviderToken(server.provider);
205
- if (!token) {
206
- return {
207
- content: [{ type: "text", text: JSON.stringify({
208
- error: `No API token found for ${server.provider}`,
209
- hint: `Set ${server.provider.toUpperCase()}_TOKEN environment variable`,
210
- }) }],
211
- isError: true,
212
- };
150
+ return mcpError("Snapshots require cloud provider API. Manual servers don't have provider IDs.", "Use backup-create for SSH-based backup instead.", [{ command: `server_backup { action: 'backup-create', server: '${server.name}' }`, reason: "SSH-based backup" }]);
213
151
  }
214
- const result = await createSnapshot(server, token);
152
+ const tokenResult = requireProviderToken(server.provider);
153
+ if ("error" in tokenResult)
154
+ return tokenResult.error;
155
+ const result = await createSnapshot(server, tokenResult.token);
215
156
  if (!result.success) {
216
157
  return {
217
158
  content: [{ type: "text", text: JSON.stringify({
@@ -223,44 +164,26 @@ export async function handleServerBackup(params) {
223
164
  isError: true,
224
165
  };
225
166
  }
226
- return {
227
- content: [{ type: "text", text: JSON.stringify({
228
- success: true,
229
- server: server.name,
230
- ip: server.ip,
231
- snapshot: result.snapshot,
232
- costEstimate: result.costEstimate,
233
- suggested_actions: [
234
- { command: `server_backup { action: 'snapshot-list', server: '${server.name}' }`, reason: "View all snapshots" },
235
- ],
236
- }) }],
237
- };
167
+ return mcpSuccess({
168
+ success: true,
169
+ server: server.name,
170
+ ip: server.ip,
171
+ snapshot: result.snapshot,
172
+ costEstimate: result.costEstimate,
173
+ suggested_actions: [
174
+ { command: `server_backup { action: 'snapshot-list', server: '${server.name}' }`, reason: "View all snapshots" },
175
+ ],
176
+ });
238
177
  }
239
178
  case "snapshot-list": {
240
179
  const isManual = server.id.startsWith("manual-");
241
180
  if (isManual) {
242
- return {
243
- content: [{ type: "text", text: JSON.stringify({
244
- error: "Snapshots require cloud provider API. Manual servers don't have provider IDs.",
245
- hint: "Use backup-list for local backups instead.",
246
- suggested_actions: [
247
- { command: `server_backup { action: 'backup-list', server: '${server.name}' }`, reason: "List local backups" },
248
- ],
249
- }) }],
250
- isError: true,
251
- };
252
- }
253
- const token = getProviderToken(server.provider);
254
- if (!token) {
255
- return {
256
- content: [{ type: "text", text: JSON.stringify({
257
- error: `No API token found for ${server.provider}`,
258
- hint: `Set ${server.provider.toUpperCase()}_TOKEN environment variable`,
259
- }) }],
260
- isError: true,
261
- };
181
+ return mcpError("Snapshots require cloud provider API. Manual servers don't have provider IDs.", "Use backup-list for local backups instead.", [{ command: `server_backup { action: 'backup-list', server: '${server.name}' }`, reason: "List local backups" }]);
262
182
  }
263
- const result = await listSnapshots(server, token);
183
+ const tokenResult = requireProviderToken(server.provider);
184
+ if ("error" in tokenResult)
185
+ return tokenResult.error;
186
+ const result = await listSnapshots(server, tokenResult.token);
264
187
  if (result.error) {
265
188
  return {
266
189
  content: [{ type: "text", text: JSON.stringify({
@@ -273,72 +196,40 @@ export async function handleServerBackup(params) {
273
196
  };
274
197
  }
275
198
  if (result.snapshots.length === 0) {
276
- return {
277
- content: [{ type: "text", text: JSON.stringify({
278
- server: server.name,
279
- snapshots: [],
280
- message: "No snapshots found",
281
- suggested_actions: [
282
- { command: `server_backup { action: 'snapshot-create', server: '${server.name}' }`, reason: "Create a snapshot" },
283
- ],
284
- }) }],
285
- };
199
+ return mcpSuccess({
200
+ server: server.name,
201
+ snapshots: [],
202
+ message: "No snapshots found",
203
+ suggested_actions: [
204
+ { command: `server_backup { action: 'snapshot-create', server: '${server.name}' }`, reason: "Create a snapshot" },
205
+ ],
206
+ });
286
207
  }
287
- return {
288
- content: [{ type: "text", text: JSON.stringify({
289
- server: server.name,
290
- ip: server.ip,
291
- snapshotCount: result.snapshots.length,
292
- snapshots: result.snapshots,
293
- suggested_actions: [
294
- { command: `server_backup { action: 'snapshot-delete', server: '${server.name}', snapshotId: '${result.snapshots[0].id}' }`, reason: "Delete a snapshot" },
295
- ],
296
- }) }],
297
- };
208
+ return mcpSuccess({
209
+ server: server.name,
210
+ ip: server.ip,
211
+ snapshotCount: result.snapshots.length,
212
+ snapshots: result.snapshots,
213
+ suggested_actions: [
214
+ { command: `server_backup { action: 'snapshot-delete', server: '${server.name}', snapshotId: '${result.snapshots[0].id}' }`, reason: "Delete a snapshot" },
215
+ ],
216
+ });
298
217
  }
299
218
  case "snapshot-delete": {
300
219
  if (isSafeMode()) {
301
- return {
302
- content: [{ type: "text", text: JSON.stringify({
303
- error: "Snapshot delete disabled in SAFE_MODE",
304
- hint: "Set QUICKLIFY_SAFE_MODE=false to enable snapshot deletion",
305
- }) }],
306
- isError: true,
307
- };
220
+ return mcpError("Snapshot delete disabled in SAFE_MODE", "Set QUICKLIFY_SAFE_MODE=false to enable snapshot deletion");
308
221
  }
309
222
  const isManual = server.id.startsWith("manual-");
310
223
  if (isManual) {
311
- return {
312
- content: [{ type: "text", text: JSON.stringify({
313
- error: "Snapshots require cloud provider API. Manual servers don't have provider IDs.",
314
- hint: "Manual servers cannot manage cloud snapshots.",
315
- }) }],
316
- isError: true,
317
- };
318
- }
319
- const token = getProviderToken(server.provider);
320
- if (!token) {
321
- return {
322
- content: [{ type: "text", text: JSON.stringify({
323
- error: `No API token found for ${server.provider}`,
324
- hint: `Set ${server.provider.toUpperCase()}_TOKEN environment variable`,
325
- }) }],
326
- isError: true,
327
- };
224
+ return mcpError("Snapshots require cloud provider API. Manual servers don't have provider IDs.", "Manual servers cannot manage cloud snapshots.");
328
225
  }
226
+ const tokenResult = requireProviderToken(server.provider);
227
+ if ("error" in tokenResult)
228
+ return tokenResult.error;
329
229
  if (!params.snapshotId) {
330
- return {
331
- content: [{ type: "text", text: JSON.stringify({
332
- error: "snapshotId is required for snapshot-delete",
333
- hint: "Use snapshot-list to see available snapshots",
334
- suggested_actions: [
335
- { command: `server_backup { action: 'snapshot-list', server: '${server.name}' }`, reason: "List snapshots" },
336
- ],
337
- }) }],
338
- isError: true,
339
- };
230
+ return mcpError("snapshotId is required for snapshot-delete", "Use snapshot-list to see available snapshots", [{ command: `server_backup { action: 'snapshot-list', server: '${server.name}' }`, reason: "List snapshots" }]);
340
231
  }
341
- const result = await deleteSnapshot(server, token, params.snapshotId);
232
+ const result = await deleteSnapshot(server, tokenResult.token, params.snapshotId);
342
233
  if (!result.success) {
343
234
  return {
344
235
  content: [{ type: "text", text: JSON.stringify({
@@ -351,26 +242,21 @@ export async function handleServerBackup(params) {
351
242
  isError: true,
352
243
  };
353
244
  }
354
- return {
355
- content: [{ type: "text", text: JSON.stringify({
356
- success: true,
357
- server: server.name,
358
- ip: server.ip,
359
- snapshotId: params.snapshotId,
360
- message: "Snapshot deleted",
361
- suggested_actions: [
362
- { command: `server_backup { action: 'snapshot-list', server: '${server.name}' }`, reason: "View remaining snapshots" },
363
- ],
364
- }) }],
365
- };
245
+ return mcpSuccess({
246
+ success: true,
247
+ server: server.name,
248
+ ip: server.ip,
249
+ snapshotId: params.snapshotId,
250
+ message: "Snapshot deleted",
251
+ suggested_actions: [
252
+ { command: `server_backup { action: 'snapshot-list', server: '${server.name}' }`, reason: "View remaining snapshots" },
253
+ ],
254
+ });
366
255
  }
367
256
  }
368
257
  }
369
258
  catch (error) {
370
- return {
371
- content: [{ type: "text", text: JSON.stringify({ error: getErrorMessage(error) }) }],
372
- isError: true,
373
- };
259
+ return mcpError(getErrorMessage(error));
374
260
  }
375
261
  }
376
262
  //# sourceMappingURL=serverBackup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"serverBackup.js","sourceRoot":"","sources":["../../../src/mcp/tools/serverBackup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EACL,YAAY,EACZ,aAAa,EACb,WAAW,EACX,YAAY,GACb,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,cAAc,EACd,aAAa,EACb,cAAc,GACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC;QACb,eAAe,EAAE,aAAa,EAAE,gBAAgB;QAChD,iBAAiB,EAAE,eAAe,EAAE,iBAAiB;KACtD,CAAC,CAAC,QAAQ,CACT,sPAAsP,CACvP;IACD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACpC,6DAA6D,CAC9D;IACD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,mEAAmE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAC7H,6DAA6D,CAC9D;IACD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACxC,mDAAmD,CACpD;CACF,CAAC;AAIF,SAAS,aAAa,CAAC,MAA2B,EAAE,OAAsC;IACxF,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,OAAO,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,MAKxC;IACC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;QAC7B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;4BAC7C,KAAK,EAAE,kBAAkB;4BACzB,iBAAiB,EAAE,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAC;yBACpF,CAAC,EAAE,CAAC;gBACL,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClB,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCAC7C,KAAK,EAAE,qBAAqB,MAAM,CAAC,MAAM,EAAE;gCAC3C,iBAAiB,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;6BAC9C,CAAC,EAAE,CAAC;oBACL,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;4BAC7C,KAAK,EAAE,sDAAsD;4BAC7D,iBAAiB,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;yBACpE,CAAC,EAAE,CAAC;gBACL,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,QAAQ,MAAM,CAAC,MAAM,EAAE,CAAC;YACtB,oEAAoE;YAEpE,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAE3E,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,MAAM,EAAE,MAAM,CAAC,IAAI;oCACnB,EAAE,EAAE,MAAM,CAAC,EAAE;oCACb,KAAK,EAAE,MAAM,CAAC,KAAK;oCACnB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oCAC7C,iBAAiB,EAAE;wCACjB,EAAE,OAAO,EAAE,4CAA4C,MAAM,CAAC,IAAI,KAAK,EAAE,MAAM,EAAE,8BAA8B,EAAE;qCAClH;iCACF,CAAC,EAAE,CAAC;wBACL,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCAC7C,OAAO,EAAE,IAAI;gCACb,MAAM,EAAE,MAAM,CAAC,IAAI;gCACnB,EAAE,EAAE,MAAM,CAAC,EAAE;gCACb,UAAU,EAAE,MAAM,CAAC,UAAU;gCAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ;gCACzB,iBAAiB,EAAE;oCACjB,EAAE,OAAO,EAAE,mDAAmD,MAAM,CAAC,IAAI,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE;oCAC5G,EAAE,OAAO,EAAE,oDAAoD,MAAM,CAAC,IAAI,KAAK,EAAE,MAAM,EAAE,oBAAoB,EAAE;iCAChH;6BACF,CAAC,EAAE,CAAC;iBACN,CAAC;YACJ,CAAC;YAED,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAE3C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC3B,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,MAAM,EAAE,MAAM,CAAC,IAAI;oCACnB,OAAO,EAAE,EAAE;oCACX,OAAO,EAAE,kCAAkC;oCAC3C,iBAAiB,EAAE;wCACjB,EAAE,OAAO,EAAE,qDAAqD,MAAM,CAAC,IAAI,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE;qCAC9G;iCACF,CAAC,EAAE,CAAC;qBACN,CAAC;gBACJ,CAAC;gBAED,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;gBAC9D,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;gBACtC,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;oBACnC,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;oBACnE,IAAI,QAAQ,EAAE,CAAC;wBACb,OAAO;4BACL,QAAQ,EAAE,EAAE;4BACZ,SAAS,EAAE,QAAQ,CAAC,SAAS;4BAC7B,cAAc,EAAE,QAAQ,CAAC,cAAc;4BACvC,KAAK,EAAE,QAAQ,CAAC,KAAK;yBACtB,CAAC;oBACJ,CAAC;oBACD,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;gBACxD,CAAC,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCAC7C,MAAM,EAAE,MAAM,CAAC,IAAI;gCACnB,WAAW,EAAE,SAAS,CAAC,MAAM;gCAC7B,OAAO;gCACP,iBAAiB,EAAE;oCACjB,EAAE,OAAO,EAAE,sDAAsD,MAAM,CAAC,IAAI,iBAAiB,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,uBAAuB,EAAE;iCAClJ;6BACF,CAAC,EAAE,CAAC;iBACN,CAAC;YACJ,CAAC;YAED,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,IAAI,UAAU,EAAE,EAAE,CAAC;oBACjB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,KAAK,EAAE,+BAA+B;oCACtC,IAAI,EAAE,4DAA4D;iCACnE,CAAC,EAAE,CAAC;wBACL,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;oBACrB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,KAAK,EAAE,yCAAyC;oCAChD,IAAI,EAAE,0CAA0C;oCAChD,iBAAiB,EAAE;wCACjB,EAAE,OAAO,EAAE,mDAAmD,MAAM,CAAC,IAAI,KAAK,EAAE,MAAM,EAAE,wBAAwB,EAAE;qCACnH;iCACF,CAAC,EAAE,CAAC;wBACL,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAE5E,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,MAAM,EAAE,MAAM,CAAC,IAAI;oCACnB,EAAE,EAAE,MAAM,CAAC,EAAE;oCACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;oCACzB,KAAK,EAAE,MAAM,CAAC,KAAK;oCACnB,KAAK,EAAE,MAAM,CAAC,KAAK;oCACnB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iCAC9C,CAAC,EAAE,CAAC;wBACL,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCAC7C,OAAO,EAAE,IAAI;gCACb,MAAM,EAAE,MAAM,CAAC,IAAI;gCACnB,EAAE,EAAE,MAAM,CAAC,EAAE;gCACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;gCACzB,KAAK,EAAE,MAAM,CAAC,KAAK;gCACnB,iBAAiB,EAAE;oCACjB,EAAE,OAAO,EAAE,4CAA4C,MAAM,CAAC,IAAI,KAAK,EAAE,MAAM,EAAE,2BAA2B,EAAE;iCAC/G;6BACF,CAAC,EAAE,CAAC;iBACN,CAAC;YACJ,CAAC;YAED,oEAAoE;YAEpE,KAAK,iBAAiB,CAAC,CAAC,CAAC;gBACvB,IAAI,UAAU,EAAE,EAAE,CAAC;oBACjB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,KAAK,EAAE,4CAA4C;oCACnD,IAAI,EAAE,gFAAgF;oCACtF,iBAAiB,EAAE;wCACjB,EAAE,OAAO,EAAE,qDAAqD,MAAM,CAAC,IAAI,KAAK,EAAE,MAAM,EAAE,qCAAqC,EAAE;qCAClI;iCACF,CAAC,EAAE,CAAC;wBACL,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;gBACjD,IAAI,QAAQ,EAAE,CAAC;oBACb,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,KAAK,EAAE,+EAA+E;oCACtF,IAAI,EAAE,iDAAiD;oCACvD,iBAAiB,EAAE;wCACjB,EAAE,OAAO,EAAE,qDAAqD,MAAM,CAAC,IAAI,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE;qCAC/G;iCACF,CAAC,EAAE,CAAC;wBACL,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAChD,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,KAAK,EAAE,0BAA0B,MAAM,CAAC,QAAQ,EAAE;oCAClD,IAAI,EAAE,OAAO,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,6BAA6B;iCACxE,CAAC,EAAE,CAAC;wBACL,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBAEnD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,MAAM,EAAE,MAAM,CAAC,IAAI;oCACnB,EAAE,EAAE,MAAM,CAAC,EAAE;oCACb,KAAK,EAAE,MAAM,CAAC,KAAK;oCACnB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iCAC9C,CAAC,EAAE,CAAC;wBACL,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCAC7C,OAAO,EAAE,IAAI;gCACb,MAAM,EAAE,MAAM,CAAC,IAAI;gCACnB,EAAE,EAAE,MAAM,CAAC,EAAE;gCACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;gCACzB,YAAY,EAAE,MAAM,CAAC,YAAY;gCACjC,iBAAiB,EAAE;oCACjB,EAAE,OAAO,EAAE,qDAAqD,MAAM,CAAC,IAAI,KAAK,EAAE,MAAM,EAAE,oBAAoB,EAAE;iCACjH;6BACF,CAAC,EAAE,CAAC;iBACN,CAAC;YACJ,CAAC;YAED,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,MAAM,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;gBACjD,IAAI,QAAQ,EAAE,CAAC;oBACb,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,KAAK,EAAE,+EAA+E;oCACtF,IAAI,EAAE,4CAA4C;oCAClD,iBAAiB,EAAE;wCACjB,EAAE,OAAO,EAAE,mDAAmD,MAAM,CAAC,IAAI,KAAK,EAAE,MAAM,EAAE,oBAAoB,EAAE;qCAC/G;iCACF,CAAC,EAAE,CAAC;wBACL,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAChD,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,KAAK,EAAE,0BAA0B,MAAM,CAAC,QAAQ,EAAE;oCAClD,IAAI,EAAE,OAAO,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,6BAA6B;iCACxE,CAAC,EAAE,CAAC;wBACL,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBAElD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oBACjB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,MAAM,EAAE,MAAM,CAAC,IAAI;oCACnB,EAAE,EAAE,MAAM,CAAC,EAAE;oCACb,KAAK,EAAE,MAAM,CAAC,KAAK;oCACnB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iCAC9C,CAAC,EAAE,CAAC;wBACL,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAClC,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,MAAM,EAAE,MAAM,CAAC,IAAI;oCACnB,SAAS,EAAE,EAAE;oCACb,OAAO,EAAE,oBAAoB;oCAC7B,iBAAiB,EAAE;wCACjB,EAAE,OAAO,EAAE,uDAAuD,MAAM,CAAC,IAAI,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE;qCAClH;iCACF,CAAC,EAAE,CAAC;qBACN,CAAC;gBACJ,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCAC7C,MAAM,EAAE,MAAM,CAAC,IAAI;gCACnB,EAAE,EAAE,MAAM,CAAC,EAAE;gCACb,aAAa,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM;gCACtC,SAAS,EAAE,MAAM,CAAC,SAAS;gCAC3B,iBAAiB,EAAE;oCACjB,EAAE,OAAO,EAAE,uDAAuD,MAAM,CAAC,IAAI,mBAAmB,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE;iCAC3J;6BACF,CAAC,EAAE,CAAC;iBACN,CAAC;YACJ,CAAC;YAED,KAAK,iBAAiB,CAAC,CAAC,CAAC;gBACvB,IAAI,UAAU,EAAE,EAAE,CAAC;oBACjB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,KAAK,EAAE,uCAAuC;oCAC9C,IAAI,EAAE,2DAA2D;iCAClE,CAAC,EAAE,CAAC;wBACL,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;gBACjD,IAAI,QAAQ,EAAE,CAAC;oBACb,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,KAAK,EAAE,+EAA+E;oCACtF,IAAI,EAAE,+CAA+C;iCACtD,CAAC,EAAE,CAAC;wBACL,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAChD,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,KAAK,EAAE,0BAA0B,MAAM,CAAC,QAAQ,EAAE;oCAClD,IAAI,EAAE,OAAO,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,6BAA6B;iCACxE,CAAC,EAAE,CAAC;wBACL,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;oBACvB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,KAAK,EAAE,4CAA4C;oCACnD,IAAI,EAAE,8CAA8C;oCACpD,iBAAiB,EAAE;wCACjB,EAAE,OAAO,EAAE,qDAAqD,MAAM,CAAC,IAAI,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE;qCAC7G;iCACF,CAAC,EAAE,CAAC;wBACL,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;gBAEtE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,MAAM,EAAE,MAAM,CAAC,IAAI;oCACnB,EAAE,EAAE,MAAM,CAAC,EAAE;oCACb,UAAU,EAAE,MAAM,CAAC,UAAU;oCAC7B,KAAK,EAAE,MAAM,CAAC,KAAK;oCACnB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iCAC9C,CAAC,EAAE,CAAC;wBACL,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCAC7C,OAAO,EAAE,IAAI;gCACb,MAAM,EAAE,MAAM,CAAC,IAAI;gCACnB,EAAE,EAAE,MAAM,CAAC,EAAE;gCACb,UAAU,EAAE,MAAM,CAAC,UAAU;gCAC7B,OAAO,EAAE,kBAAkB;gCAC3B,iBAAiB,EAAE;oCACjB,EAAE,OAAO,EAAE,qDAAqD,MAAM,CAAC,IAAI,KAAK,EAAE,MAAM,EAAE,0BAA0B,EAAE;iCACvH;6BACF,CAAC,EAAE,CAAC;iBACN,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;YACpF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"serverBackup.js","sourceRoot":"","sources":["../../../src/mcp/tools/serverBackup.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,32 @@
1
1
  import { z } from "zod";
2
+ import type { ServerMode } from "../../types/index.js";
3
+ import type { SupportedProvider } from "../../constants.js";
2
4
  export declare const serverInfoSchema: {
3
5
  action: z.ZodEnum<{
4
- status: "status";
5
6
  list: "list";
7
+ status: "status";
6
8
  health: "health";
9
+ sizes: "sizes";
7
10
  }>;
8
11
  server: z.ZodOptional<z.ZodString>;
12
+ provider: z.ZodOptional<z.ZodEnum<{
13
+ hetzner: "hetzner";
14
+ digitalocean: "digitalocean";
15
+ vultr: "vultr";
16
+ linode: "linode";
17
+ }>>;
18
+ region: z.ZodOptional<z.ZodString>;
19
+ mode: z.ZodOptional<z.ZodEnum<{
20
+ coolify: "coolify";
21
+ bare: "bare";
22
+ }>>;
9
23
  };
10
24
  export declare function handleServerInfo(params: {
11
- action: "list" | "status" | "health";
25
+ action: "list" | "status" | "health" | "sizes";
12
26
  server?: string;
27
+ provider?: SupportedProvider;
28
+ region?: string;
29
+ mode?: ServerMode;
13
30
  }): Promise<{
14
31
  content: Array<{
15
32
  type: "text";
@@ -1 +1 @@
1
- {"version":3,"file":"serverInfo.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/serverInfo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,gBAAgB;;;;;;;CAO5B,CAAC;AA0FF,wBAAsB,gBAAgB,CAAC,MAAM,EAAE;IAC7C,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAoJjF"}
1
+ {"version":3,"file":"serverInfo.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/serverInfo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB,OAAO,KAAK,EAAgB,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;CAgB5B,CAAC;AAqGF,wBAAsB,gBAAgB,CAAC,MAAM,EAAE;IAC7C,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CA8NjF"}