liara-mcp 1.0.0 → 1.1.0

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 (152) hide show
  1. package/README.md +25 -0
  2. package/dist/handlers/app-handlers.d.ts +3 -0
  3. package/dist/handlers/app-handlers.d.ts.map +1 -0
  4. package/dist/handlers/app-handlers.js +48 -0
  5. package/dist/handlers/app-handlers.js.map +1 -0
  6. package/dist/handlers/consolidated-handlers.d.ts +9 -0
  7. package/dist/handlers/consolidated-handlers.d.ts.map +1 -0
  8. package/dist/handlers/consolidated-handlers.js +400 -0
  9. package/dist/handlers/consolidated-handlers.js.map +1 -0
  10. package/dist/handlers/database-handlers.d.ts +3 -0
  11. package/dist/handlers/database-handlers.d.ts.map +1 -0
  12. package/dist/handlers/database-handlers.js +75 -0
  13. package/dist/handlers/database-handlers.js.map +1 -0
  14. package/dist/handlers/deployment-handlers.d.ts +3 -0
  15. package/dist/handlers/deployment-handlers.d.ts.map +1 -0
  16. package/dist/handlers/deployment-handlers.js +43 -0
  17. package/dist/handlers/deployment-handlers.js.map +1 -0
  18. package/dist/handlers/disk-handlers.d.ts +3 -0
  19. package/dist/handlers/disk-handlers.d.ts.map +1 -0
  20. package/dist/handlers/disk-handlers.js +48 -0
  21. package/dist/handlers/disk-handlers.js.map +1 -0
  22. package/dist/handlers/dns-handlers.d.ts +3 -0
  23. package/dist/handlers/dns-handlers.d.ts.map +1 -0
  24. package/dist/handlers/dns-handlers.js +63 -0
  25. package/dist/handlers/dns-handlers.js.map +1 -0
  26. package/dist/handlers/domain-handlers.d.ts +3 -0
  27. package/dist/handlers/domain-handlers.d.ts.map +1 -0
  28. package/dist/handlers/domain-handlers.js +28 -0
  29. package/dist/handlers/domain-handlers.js.map +1 -0
  30. package/dist/handlers/env-handlers.d.ts +3 -0
  31. package/dist/handlers/env-handlers.d.ts.map +1 -0
  32. package/dist/handlers/env-handlers.js +32 -0
  33. package/dist/handlers/env-handlers.js.map +1 -0
  34. package/dist/handlers/index.d.ts +8 -0
  35. package/dist/handlers/index.d.ts.map +1 -0
  36. package/dist/handlers/index.js +94 -0
  37. package/dist/handlers/index.js.map +1 -0
  38. package/dist/handlers/mail-handlers.d.ts +3 -0
  39. package/dist/handlers/mail-handlers.d.ts.map +1 -0
  40. package/dist/handlers/mail-handlers.js +51 -0
  41. package/dist/handlers/mail-handlers.js.map +1 -0
  42. package/dist/handlers/network-handlers.d.ts +3 -0
  43. package/dist/handlers/network-handlers.d.ts.map +1 -0
  44. package/dist/handlers/network-handlers.js +28 -0
  45. package/dist/handlers/network-handlers.js.map +1 -0
  46. package/dist/handlers/observability-handlers.d.ts +3 -0
  47. package/dist/handlers/observability-handlers.d.ts.map +1 -0
  48. package/dist/handlers/observability-handlers.js +24 -0
  49. package/dist/handlers/observability-handlers.js.map +1 -0
  50. package/dist/handlers/plan-handlers.d.ts +3 -0
  51. package/dist/handlers/plan-handlers.d.ts.map +1 -0
  52. package/dist/handlers/plan-handlers.js +20 -0
  53. package/dist/handlers/plan-handlers.js.map +1 -0
  54. package/dist/handlers/settings-handlers.d.ts +3 -0
  55. package/dist/handlers/settings-handlers.d.ts.map +1 -0
  56. package/dist/handlers/settings-handlers.js +29 -0
  57. package/dist/handlers/settings-handlers.js.map +1 -0
  58. package/dist/handlers/storage-handlers.d.ts +3 -0
  59. package/dist/handlers/storage-handlers.d.ts.map +1 -0
  60. package/dist/handlers/storage-handlers.js +48 -0
  61. package/dist/handlers/storage-handlers.js.map +1 -0
  62. package/dist/handlers/types.d.ts +27 -0
  63. package/dist/handlers/types.d.ts.map +1 -0
  64. package/dist/handlers/types.js +31 -0
  65. package/dist/handlers/types.js.map +1 -0
  66. package/dist/handlers/user-handlers.d.ts +3 -0
  67. package/dist/handlers/user-handlers.d.ts.map +1 -0
  68. package/dist/handlers/user-handlers.js +16 -0
  69. package/dist/handlers/user-handlers.js.map +1 -0
  70. package/dist/handlers/vm-handlers.d.ts +3 -0
  71. package/dist/handlers/vm-handlers.d.ts.map +1 -0
  72. package/dist/handlers/vm-handlers.js +68 -0
  73. package/dist/handlers/vm-handlers.js.map +1 -0
  74. package/dist/index.js +6 -2986
  75. package/dist/index.js.map +1 -1
  76. package/dist/services/observability.js +1 -1
  77. package/dist/services/observability.js.map +1 -1
  78. package/dist/tools/app-tools.d.ts +6 -0
  79. package/dist/tools/app-tools.d.ts.map +1 -0
  80. package/dist/tools/app-tools.js +133 -0
  81. package/dist/tools/app-tools.js.map +1 -0
  82. package/dist/tools/consolidated-tools.d.ts +6 -0
  83. package/dist/tools/consolidated-tools.d.ts.map +1 -0
  84. package/dist/tools/consolidated-tools.js +256 -0
  85. package/dist/tools/consolidated-tools.js.map +1 -0
  86. package/dist/tools/database-tools.d.ts +6 -0
  87. package/dist/tools/database-tools.d.ts.map +1 -0
  88. package/dist/tools/database-tools.js +252 -0
  89. package/dist/tools/database-tools.js.map +1 -0
  90. package/dist/tools/deployment-tools.d.ts +6 -0
  91. package/dist/tools/deployment-tools.d.ts.map +1 -0
  92. package/dist/tools/deployment-tools.js +140 -0
  93. package/dist/tools/deployment-tools.js.map +1 -0
  94. package/dist/tools/disk-tools.d.ts +6 -0
  95. package/dist/tools/disk-tools.d.ts.map +1 -0
  96. package/dist/tools/disk-tools.js +167 -0
  97. package/dist/tools/disk-tools.js.map +1 -0
  98. package/dist/tools/dns-tools.d.ts +6 -0
  99. package/dist/tools/dns-tools.d.ts.map +1 -0
  100. package/dist/tools/dns-tools.js +184 -0
  101. package/dist/tools/dns-tools.js.map +1 -0
  102. package/dist/tools/domain-tools.d.ts +6 -0
  103. package/dist/tools/domain-tools.d.ts.map +1 -0
  104. package/dist/tools/domain-tools.js +63 -0
  105. package/dist/tools/domain-tools.js.map +1 -0
  106. package/dist/tools/env-tools.d.ts +6 -0
  107. package/dist/tools/env-tools.d.ts.map +1 -0
  108. package/dist/tools/env-tools.js +112 -0
  109. package/dist/tools/env-tools.js.map +1 -0
  110. package/dist/tools/index.d.ts +28 -0
  111. package/dist/tools/index.d.ts.map +1 -0
  112. package/dist/tools/index.js +72 -0
  113. package/dist/tools/index.js.map +1 -0
  114. package/dist/tools/mail-tools.d.ts +6 -0
  115. package/dist/tools/mail-tools.d.ts.map +1 -0
  116. package/dist/tools/mail-tools.js +148 -0
  117. package/dist/tools/mail-tools.js.map +1 -0
  118. package/dist/tools/network-tools.d.ts +6 -0
  119. package/dist/tools/network-tools.d.ts.map +1 -0
  120. package/dist/tools/network-tools.js +63 -0
  121. package/dist/tools/network-tools.js.map +1 -0
  122. package/dist/tools/observability-tools.d.ts +6 -0
  123. package/dist/tools/observability-tools.d.ts.map +1 -0
  124. package/dist/tools/observability-tools.js +49 -0
  125. package/dist/tools/observability-tools.js.map +1 -0
  126. package/dist/tools/plan-tools.d.ts +6 -0
  127. package/dist/tools/plan-tools.d.ts.map +1 -0
  128. package/dist/tools/plan-tools.js +38 -0
  129. package/dist/tools/plan-tools.js.map +1 -0
  130. package/dist/tools/settings-tools.d.ts +6 -0
  131. package/dist/tools/settings-tools.d.ts.map +1 -0
  132. package/dist/tools/settings-tools.js +77 -0
  133. package/dist/tools/settings-tools.js.map +1 -0
  134. package/dist/tools/storage-tools.d.ts +6 -0
  135. package/dist/tools/storage-tools.d.ts.map +1 -0
  136. package/dist/tools/storage-tools.js +166 -0
  137. package/dist/tools/storage-tools.js.map +1 -0
  138. package/dist/tools/types.d.ts +34 -0
  139. package/dist/tools/types.d.ts.map +1 -0
  140. package/dist/tools/types.js +27 -0
  141. package/dist/tools/types.js.map +1 -0
  142. package/dist/tools/user-tools.d.ts +6 -0
  143. package/dist/tools/user-tools.d.ts.map +1 -0
  144. package/dist/tools/user-tools.js +13 -0
  145. package/dist/tools/user-tools.js.map +1 -0
  146. package/dist/tools/vm-tools.d.ts +6 -0
  147. package/dist/tools/vm-tools.d.ts.map +1 -0
  148. package/dist/tools/vm-tools.js +240 -0
  149. package/dist/tools/vm-tools.js.map +1 -0
  150. package/dist/utils/errors.js +2 -2
  151. package/dist/utils/errors.js.map +1 -1
  152. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/tools/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACT,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACvB,CAAC;CACL;AAED;;GAEG;AACH,wBAAgB,uBAAuB;;;;;;;;;;;;;;;;;EAmBtC"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Shared types for MCP tool definitions
3
+ */
4
+ /**
5
+ * Get pagination properties for tool schemas
6
+ */
7
+ export function getPaginationProperties() {
8
+ return {
9
+ page: {
10
+ type: 'number',
11
+ description: 'Page number (1-based)',
12
+ },
13
+ perPage: {
14
+ type: 'number',
15
+ description: 'Number of items per page',
16
+ },
17
+ limit: {
18
+ type: 'number',
19
+ description: 'Alternative to perPage: maximum number of items to return',
20
+ },
21
+ offset: {
22
+ type: 'number',
23
+ description: 'Alternative to page: number of items to skip',
24
+ },
25
+ };
26
+ }
27
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/tools/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAYH;;GAEG;AACH,MAAM,UAAU,uBAAuB;IACnC,OAAO;QACH,IAAI,EAAE;YACF,IAAI,EAAE,QAAiB;YACvB,WAAW,EAAE,uBAAuB;SACvC;QACD,OAAO,EAAE;YACL,IAAI,EAAE,QAAiB;YACvB,WAAW,EAAE,0BAA0B;SAC1C;QACD,KAAK,EAAE;YACH,IAAI,EAAE,QAAiB;YACvB,WAAW,EAAE,2DAA2D;SAC3E;QACD,MAAM,EAAE;YACJ,IAAI,EAAE,QAAiB;YACvB,WAAW,EAAE,8CAA8C;SAC9D;KACJ,CAAC;AACN,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * User tool definitions
3
+ */
4
+ import { ToolDefinition } from './types.js';
5
+ export declare function getUserTools(): ToolDefinition[];
6
+ //# sourceMappingURL=user-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-tools.d.ts","sourceRoot":"","sources":["../../src/tools/user-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,wBAAgB,YAAY,IAAI,cAAc,EAAE,CAW/C"}
@@ -0,0 +1,13 @@
1
+ export function getUserTools() {
2
+ return [
3
+ {
4
+ name: 'liara_get_user',
5
+ description: 'Get comprehensive user information including plans and teams',
6
+ inputSchema: {
7
+ type: 'object',
8
+ properties: {},
9
+ },
10
+ },
11
+ ];
12
+ }
13
+ //# sourceMappingURL=user-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-tools.js","sourceRoot":"","sources":["../../src/tools/user-tools.ts"],"names":[],"mappings":"AAKA,MAAM,UAAU,YAAY;IACxB,OAAO;QACH;YACI,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,8DAA8D;YAC3E,WAAW,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,EAAE;aACjB;SACJ;KACJ,CAAC;AACN,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * VM (IaaS) tool definitions
3
+ */
4
+ import { ToolDefinition } from './types.js';
5
+ export declare function getVmTools(): ToolDefinition[];
6
+ //# sourceMappingURL=vm-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vm-tools.d.ts","sourceRoot":"","sources":["../../src/tools/vm-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,cAAc,EAA2B,MAAM,YAAY,CAAC;AAErE,wBAAgB,UAAU,IAAI,cAAc,EAAE,CA0O7C"}
@@ -0,0 +1,240 @@
1
+ /**
2
+ * VM (IaaS) tool definitions
3
+ */
4
+ import { getPaginationProperties } from './types.js';
5
+ export function getVmTools() {
6
+ return [
7
+ {
8
+ name: 'liara_list_vms',
9
+ description: 'List all virtual machines',
10
+ inputSchema: {
11
+ type: 'object',
12
+ properties: getPaginationProperties(),
13
+ },
14
+ },
15
+ {
16
+ name: 'liara_get_vm',
17
+ description: 'Get details of a virtual machine',
18
+ inputSchema: {
19
+ type: 'object',
20
+ properties: {
21
+ vmId: {
22
+ type: 'string',
23
+ description: 'The VM ID',
24
+ },
25
+ },
26
+ required: ['vmId'],
27
+ },
28
+ },
29
+ {
30
+ name: 'liara_create_vm',
31
+ description: 'Create a new virtual machine',
32
+ inputSchema: {
33
+ type: 'object',
34
+ properties: {
35
+ name: {
36
+ type: 'string',
37
+ description: 'VM name',
38
+ },
39
+ planID: {
40
+ type: 'string',
41
+ description: 'Plan ID for the VM',
42
+ },
43
+ os: {
44
+ type: 'string',
45
+ description: 'Operating system',
46
+ },
47
+ sshKey: {
48
+ type: 'string',
49
+ description: 'SSH public key (optional)',
50
+ },
51
+ network: {
52
+ type: 'string',
53
+ description: 'Network ID (required by the API)',
54
+ },
55
+ },
56
+ required: ['name', 'planID', 'os', 'network'],
57
+ },
58
+ },
59
+ {
60
+ name: 'liara_start_vm',
61
+ description: 'Start a virtual machine',
62
+ inputSchema: {
63
+ type: 'object',
64
+ properties: {
65
+ vmId: {
66
+ type: 'string',
67
+ description: 'The VM ID',
68
+ },
69
+ },
70
+ required: ['vmId'],
71
+ },
72
+ },
73
+ {
74
+ name: 'liara_stop_vm',
75
+ description: 'Stop a virtual machine',
76
+ inputSchema: {
77
+ type: 'object',
78
+ properties: {
79
+ vmId: {
80
+ type: 'string',
81
+ description: 'The VM ID',
82
+ },
83
+ },
84
+ required: ['vmId'],
85
+ },
86
+ },
87
+ {
88
+ name: 'liara_restart_vm',
89
+ description: 'Restart a virtual machine',
90
+ inputSchema: {
91
+ type: 'object',
92
+ properties: {
93
+ vmId: {
94
+ type: 'string',
95
+ description: 'The VM ID',
96
+ },
97
+ },
98
+ required: ['vmId'],
99
+ },
100
+ },
101
+ {
102
+ name: 'liara_delete_vm',
103
+ description: 'Delete a virtual machine',
104
+ inputSchema: {
105
+ type: 'object',
106
+ properties: {
107
+ vmId: {
108
+ type: 'string',
109
+ description: 'The VM ID to delete',
110
+ },
111
+ },
112
+ required: ['vmId'],
113
+ },
114
+ },
115
+ {
116
+ name: 'liara_resize_vm',
117
+ description: 'Resize a virtual machine (change plan)',
118
+ inputSchema: {
119
+ type: 'object',
120
+ properties: {
121
+ vmId: {
122
+ type: 'string',
123
+ description: 'The VM ID',
124
+ },
125
+ planID: {
126
+ type: 'string',
127
+ description: 'New plan ID',
128
+ },
129
+ },
130
+ required: ['vmId', 'planID'],
131
+ },
132
+ },
133
+ {
134
+ name: 'liara_create_snapshot',
135
+ description: 'Create a VM snapshot',
136
+ inputSchema: {
137
+ type: 'object',
138
+ properties: {
139
+ vmId: {
140
+ type: 'string',
141
+ description: 'The VM ID',
142
+ },
143
+ name: {
144
+ type: 'string',
145
+ description: 'Snapshot name (optional)',
146
+ },
147
+ },
148
+ required: ['vmId'],
149
+ },
150
+ },
151
+ {
152
+ name: 'liara_list_snapshots',
153
+ description: 'List VM snapshots',
154
+ inputSchema: {
155
+ type: 'object',
156
+ properties: {
157
+ vmId: {
158
+ type: 'string',
159
+ description: 'The VM ID',
160
+ },
161
+ ...getPaginationProperties(),
162
+ },
163
+ required: ['vmId'],
164
+ },
165
+ },
166
+ {
167
+ name: 'liara_restore_snapshot',
168
+ description: 'Restore a VM from a snapshot',
169
+ inputSchema: {
170
+ type: 'object',
171
+ properties: {
172
+ vmId: {
173
+ type: 'string',
174
+ description: 'The VM ID',
175
+ },
176
+ snapshotId: {
177
+ type: 'string',
178
+ description: 'The snapshot ID',
179
+ },
180
+ },
181
+ required: ['vmId', 'snapshotId'],
182
+ },
183
+ },
184
+ {
185
+ name: 'liara_delete_snapshot',
186
+ description: 'Delete a VM snapshot',
187
+ inputSchema: {
188
+ type: 'object',
189
+ properties: {
190
+ vmId: {
191
+ type: 'string',
192
+ description: 'The VM ID',
193
+ },
194
+ snapshotId: {
195
+ type: 'string',
196
+ description: 'The snapshot ID to delete',
197
+ },
198
+ },
199
+ required: ['vmId', 'snapshotId'],
200
+ },
201
+ },
202
+ {
203
+ name: 'liara_attach_network',
204
+ description: 'Attach a network to a VM',
205
+ inputSchema: {
206
+ type: 'object',
207
+ properties: {
208
+ vmId: {
209
+ type: 'string',
210
+ description: 'The VM ID',
211
+ },
212
+ networkId: {
213
+ type: 'string',
214
+ description: 'The network ID',
215
+ },
216
+ },
217
+ required: ['vmId', 'networkId'],
218
+ },
219
+ },
220
+ {
221
+ name: 'liara_detach_network',
222
+ description: 'Detach a network from a VM',
223
+ inputSchema: {
224
+ type: 'object',
225
+ properties: {
226
+ vmId: {
227
+ type: 'string',
228
+ description: 'The VM ID',
229
+ },
230
+ networkId: {
231
+ type: 'string',
232
+ description: 'The network ID',
233
+ },
234
+ },
235
+ required: ['vmId', 'networkId'],
236
+ },
237
+ },
238
+ ];
239
+ }
240
+ //# sourceMappingURL=vm-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vm-tools.js","sourceRoot":"","sources":["../../src/tools/vm-tools.ts"],"names":[],"mappings":"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"}
@@ -60,14 +60,14 @@ export function validateRequired(value, fieldName) {
60
60
  export function validateAppName(name) {
61
61
  validateRequired(name, 'App name');
62
62
  if (name.length < 3) {
63
- throw new LiaraMcpError(`App name "${name}" is too short (minimum 3 characters, got ${name.length})`, 'INVALID_APP_NAME', { name, length: name.length }, ['Use a name like "my-app" or "api-service"']);
63
+ throw new LiaraMcpError(`App name "${name}" is too short (3-32 characters required, got ${name.length})`, 'INVALID_APP_NAME', { name, length: name.length }, ['Use a name like "my-app" or "api-service"']);
64
64
  }
65
65
  if (name.length > 32) {
66
66
  throw new LiaraMcpError(`App name "${name}" is too long (maximum 32 characters, got ${name.length})`, 'INVALID_APP_NAME', { name, length: name.length }, ['Shorten the name to 32 characters or less']);
67
67
  }
68
68
  if (!/^[a-z0-9-]+$/.test(name)) {
69
69
  const invalidChars = name.match(/[^a-z0-9-]/g);
70
- throw new LiaraMcpError(`App name contains invalid characters: ${invalidChars?.join(', ') || 'unknown'}`, 'INVALID_APP_NAME', { name, invalidChars }, ['Use only lowercase letters, numbers, and hyphens', 'Example: "my-app" or "api-service"']);
70
+ throw new LiaraMcpError(`App name contains invalid characters: ${invalidChars?.join(', ') || 'unknown'}. Use only lowercase letters, numbers, and hyphens.`, 'INVALID_APP_NAME', { name, invalidChars }, ['Use only lowercase letters, numbers, and hyphens', 'Example: "my-app" or "api-service"']);
71
71
  }
72
72
  if (name.startsWith('-') || name.endsWith('-')) {
73
73
  throw new LiaraMcpError(`App name cannot start or end with a hyphen: "${name}"`, 'INVALID_APP_NAME', { name }, ['Remove leading/trailing hyphens', 'Example: "my-app" instead of "-my-app"']);
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "liara-mcp",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
4
  "description": "MCP server for Liara cloud platform - deploy and manage apps, databases, and infrastructure",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",