liara-mcp 1.0.0 → 1.0.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 (139) hide show
  1. package/dist/handlers/app-handlers.d.ts +3 -0
  2. package/dist/handlers/app-handlers.d.ts.map +1 -0
  3. package/dist/handlers/app-handlers.js +48 -0
  4. package/dist/handlers/app-handlers.js.map +1 -0
  5. package/dist/handlers/database-handlers.d.ts +3 -0
  6. package/dist/handlers/database-handlers.d.ts.map +1 -0
  7. package/dist/handlers/database-handlers.js +75 -0
  8. package/dist/handlers/database-handlers.js.map +1 -0
  9. package/dist/handlers/deployment-handlers.d.ts +3 -0
  10. package/dist/handlers/deployment-handlers.d.ts.map +1 -0
  11. package/dist/handlers/deployment-handlers.js +43 -0
  12. package/dist/handlers/deployment-handlers.js.map +1 -0
  13. package/dist/handlers/disk-handlers.d.ts +3 -0
  14. package/dist/handlers/disk-handlers.d.ts.map +1 -0
  15. package/dist/handlers/disk-handlers.js +48 -0
  16. package/dist/handlers/disk-handlers.js.map +1 -0
  17. package/dist/handlers/dns-handlers.d.ts +3 -0
  18. package/dist/handlers/dns-handlers.d.ts.map +1 -0
  19. package/dist/handlers/dns-handlers.js +63 -0
  20. package/dist/handlers/dns-handlers.js.map +1 -0
  21. package/dist/handlers/domain-handlers.d.ts +3 -0
  22. package/dist/handlers/domain-handlers.d.ts.map +1 -0
  23. package/dist/handlers/domain-handlers.js +28 -0
  24. package/dist/handlers/domain-handlers.js.map +1 -0
  25. package/dist/handlers/env-handlers.d.ts +3 -0
  26. package/dist/handlers/env-handlers.d.ts.map +1 -0
  27. package/dist/handlers/env-handlers.js +32 -0
  28. package/dist/handlers/env-handlers.js.map +1 -0
  29. package/dist/handlers/index.d.ts +7 -0
  30. package/dist/handlers/index.d.ts.map +1 -0
  31. package/dist/handlers/index.js +80 -0
  32. package/dist/handlers/index.js.map +1 -0
  33. package/dist/handlers/mail-handlers.d.ts +3 -0
  34. package/dist/handlers/mail-handlers.d.ts.map +1 -0
  35. package/dist/handlers/mail-handlers.js +51 -0
  36. package/dist/handlers/mail-handlers.js.map +1 -0
  37. package/dist/handlers/network-handlers.d.ts +3 -0
  38. package/dist/handlers/network-handlers.d.ts.map +1 -0
  39. package/dist/handlers/network-handlers.js +28 -0
  40. package/dist/handlers/network-handlers.js.map +1 -0
  41. package/dist/handlers/observability-handlers.d.ts +3 -0
  42. package/dist/handlers/observability-handlers.d.ts.map +1 -0
  43. package/dist/handlers/observability-handlers.js +24 -0
  44. package/dist/handlers/observability-handlers.js.map +1 -0
  45. package/dist/handlers/plan-handlers.d.ts +3 -0
  46. package/dist/handlers/plan-handlers.d.ts.map +1 -0
  47. package/dist/handlers/plan-handlers.js +20 -0
  48. package/dist/handlers/plan-handlers.js.map +1 -0
  49. package/dist/handlers/settings-handlers.d.ts +3 -0
  50. package/dist/handlers/settings-handlers.d.ts.map +1 -0
  51. package/dist/handlers/settings-handlers.js +29 -0
  52. package/dist/handlers/settings-handlers.js.map +1 -0
  53. package/dist/handlers/storage-handlers.d.ts +3 -0
  54. package/dist/handlers/storage-handlers.d.ts.map +1 -0
  55. package/dist/handlers/storage-handlers.js +48 -0
  56. package/dist/handlers/storage-handlers.js.map +1 -0
  57. package/dist/handlers/types.d.ts +27 -0
  58. package/dist/handlers/types.d.ts.map +1 -0
  59. package/dist/handlers/types.js +31 -0
  60. package/dist/handlers/types.js.map +1 -0
  61. package/dist/handlers/user-handlers.d.ts +3 -0
  62. package/dist/handlers/user-handlers.d.ts.map +1 -0
  63. package/dist/handlers/user-handlers.js +16 -0
  64. package/dist/handlers/user-handlers.js.map +1 -0
  65. package/dist/handlers/vm-handlers.d.ts +3 -0
  66. package/dist/handlers/vm-handlers.d.ts.map +1 -0
  67. package/dist/handlers/vm-handlers.js +68 -0
  68. package/dist/handlers/vm-handlers.js.map +1 -0
  69. package/dist/index.js +6 -2986
  70. package/dist/index.js.map +1 -1
  71. package/dist/tools/app-tools.d.ts +6 -0
  72. package/dist/tools/app-tools.d.ts.map +1 -0
  73. package/dist/tools/app-tools.js +133 -0
  74. package/dist/tools/app-tools.js.map +1 -0
  75. package/dist/tools/database-tools.d.ts +6 -0
  76. package/dist/tools/database-tools.d.ts.map +1 -0
  77. package/dist/tools/database-tools.js +252 -0
  78. package/dist/tools/database-tools.js.map +1 -0
  79. package/dist/tools/deployment-tools.d.ts +6 -0
  80. package/dist/tools/deployment-tools.d.ts.map +1 -0
  81. package/dist/tools/deployment-tools.js +140 -0
  82. package/dist/tools/deployment-tools.js.map +1 -0
  83. package/dist/tools/disk-tools.d.ts +6 -0
  84. package/dist/tools/disk-tools.d.ts.map +1 -0
  85. package/dist/tools/disk-tools.js +167 -0
  86. package/dist/tools/disk-tools.js.map +1 -0
  87. package/dist/tools/dns-tools.d.ts +6 -0
  88. package/dist/tools/dns-tools.d.ts.map +1 -0
  89. package/dist/tools/dns-tools.js +184 -0
  90. package/dist/tools/dns-tools.js.map +1 -0
  91. package/dist/tools/domain-tools.d.ts +6 -0
  92. package/dist/tools/domain-tools.d.ts.map +1 -0
  93. package/dist/tools/domain-tools.js +63 -0
  94. package/dist/tools/domain-tools.js.map +1 -0
  95. package/dist/tools/env-tools.d.ts +6 -0
  96. package/dist/tools/env-tools.d.ts.map +1 -0
  97. package/dist/tools/env-tools.js +112 -0
  98. package/dist/tools/env-tools.js.map +1 -0
  99. package/dist/tools/index.d.ts +25 -0
  100. package/dist/tools/index.d.ts.map +1 -0
  101. package/dist/tools/index.js +57 -0
  102. package/dist/tools/index.js.map +1 -0
  103. package/dist/tools/mail-tools.d.ts +6 -0
  104. package/dist/tools/mail-tools.d.ts.map +1 -0
  105. package/dist/tools/mail-tools.js +148 -0
  106. package/dist/tools/mail-tools.js.map +1 -0
  107. package/dist/tools/network-tools.d.ts +6 -0
  108. package/dist/tools/network-tools.d.ts.map +1 -0
  109. package/dist/tools/network-tools.js +63 -0
  110. package/dist/tools/network-tools.js.map +1 -0
  111. package/dist/tools/observability-tools.d.ts +6 -0
  112. package/dist/tools/observability-tools.d.ts.map +1 -0
  113. package/dist/tools/observability-tools.js +49 -0
  114. package/dist/tools/observability-tools.js.map +1 -0
  115. package/dist/tools/plan-tools.d.ts +6 -0
  116. package/dist/tools/plan-tools.d.ts.map +1 -0
  117. package/dist/tools/plan-tools.js +38 -0
  118. package/dist/tools/plan-tools.js.map +1 -0
  119. package/dist/tools/settings-tools.d.ts +6 -0
  120. package/dist/tools/settings-tools.d.ts.map +1 -0
  121. package/dist/tools/settings-tools.js +77 -0
  122. package/dist/tools/settings-tools.js.map +1 -0
  123. package/dist/tools/storage-tools.d.ts +6 -0
  124. package/dist/tools/storage-tools.d.ts.map +1 -0
  125. package/dist/tools/storage-tools.js +166 -0
  126. package/dist/tools/storage-tools.js.map +1 -0
  127. package/dist/tools/types.d.ts +34 -0
  128. package/dist/tools/types.d.ts.map +1 -0
  129. package/dist/tools/types.js +27 -0
  130. package/dist/tools/types.js.map +1 -0
  131. package/dist/tools/user-tools.d.ts +6 -0
  132. package/dist/tools/user-tools.d.ts.map +1 -0
  133. package/dist/tools/user-tools.js +13 -0
  134. package/dist/tools/user-tools.js.map +1 -0
  135. package/dist/tools/vm-tools.d.ts +6 -0
  136. package/dist/tools/vm-tools.d.ts.map +1 -0
  137. package/dist/tools/vm-tools.js +240 -0
  138. package/dist/tools/vm-tools.js.map +1 -0
  139. package/package.json +1 -1
@@ -0,0 +1,77 @@
1
+ export function getSettingsTools() {
2
+ return [
3
+ {
4
+ name: 'liara_set_zero_downtime',
5
+ description: 'Enable or disable zero-downtime deployment for an app',
6
+ inputSchema: {
7
+ type: 'object',
8
+ properties: {
9
+ appName: {
10
+ type: 'string',
11
+ description: 'The name of the app',
12
+ },
13
+ enabled: {
14
+ type: 'boolean',
15
+ description: 'Enable (true) or disable (false) zero-downtime deployment',
16
+ },
17
+ },
18
+ required: ['appName', 'enabled'],
19
+ },
20
+ },
21
+ {
22
+ name: 'liara_set_default_subdomain',
23
+ description: 'Enable or disable default subdomain for an app',
24
+ inputSchema: {
25
+ type: 'object',
26
+ properties: {
27
+ appName: {
28
+ type: 'string',
29
+ description: 'The name of the app',
30
+ },
31
+ enabled: {
32
+ type: 'boolean',
33
+ description: 'Enable (true) or disable (false) default subdomain',
34
+ },
35
+ },
36
+ required: ['appName', 'enabled'],
37
+ },
38
+ },
39
+ {
40
+ name: 'liara_set_fixed_ip',
41
+ description: 'Enable or disable static IP for an app (returns IP when enabling)',
42
+ inputSchema: {
43
+ type: 'object',
44
+ properties: {
45
+ appName: {
46
+ type: 'string',
47
+ description: 'The name of the app',
48
+ },
49
+ enabled: {
50
+ type: 'boolean',
51
+ description: 'Enable (true) or disable (false) static IP',
52
+ },
53
+ },
54
+ required: ['appName', 'enabled'],
55
+ },
56
+ },
57
+ {
58
+ name: 'liara_set_read_only',
59
+ description: 'Enable or disable read-only mode for an app',
60
+ inputSchema: {
61
+ type: 'object',
62
+ properties: {
63
+ appName: {
64
+ type: 'string',
65
+ description: 'The name of the app',
66
+ },
67
+ enabled: {
68
+ type: 'boolean',
69
+ description: 'Enable (true) or disable (false) read-only mode',
70
+ },
71
+ },
72
+ required: ['appName', 'enabled'],
73
+ },
74
+ },
75
+ ];
76
+ }
77
+ //# sourceMappingURL=settings-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings-tools.js","sourceRoot":"","sources":["../../src/tools/settings-tools.ts"],"names":[],"mappings":"AAKA,MAAM,UAAU,gBAAgB;IAC5B,OAAO;QACH;YACI,IAAI,EAAE,yBAAyB;YAC/B,WAAW,EAAE,uDAAuD;YACpE,WAAW,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,OAAO,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qBAAqB;qBACrC;oBACD,OAAO,EAAE;wBACL,IAAI,EAAE,SAAS;wBACf,WAAW,EAAE,2DAA2D;qBAC3E;iBACJ;gBACD,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;aACnC;SACJ;QACD;YACI,IAAI,EAAE,6BAA6B;YACnC,WAAW,EAAE,gDAAgD;YAC7D,WAAW,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,OAAO,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qBAAqB;qBACrC;oBACD,OAAO,EAAE;wBACL,IAAI,EAAE,SAAS;wBACf,WAAW,EAAE,oDAAoD;qBACpE;iBACJ;gBACD,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;aACnC;SACJ;QACD;YACI,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,mEAAmE;YAChF,WAAW,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,OAAO,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qBAAqB;qBACrC;oBACD,OAAO,EAAE;wBACL,IAAI,EAAE,SAAS;wBACf,WAAW,EAAE,4CAA4C;qBAC5D;iBACJ;gBACD,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;aACnC;SACJ;QACD;YACI,IAAI,EAAE,qBAAqB;YAC3B,WAAW,EAAE,6CAA6C;YAC1D,WAAW,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,OAAO,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qBAAqB;qBACrC;oBACD,OAAO,EAAE;wBACL,IAAI,EAAE,SAAS;wBACf,WAAW,EAAE,iDAAiD;qBACjE;iBACJ;gBACD,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;aACnC;SACJ;KACJ,CAAC;AACN,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Storage (Bucket) tool definitions
3
+ */
4
+ import { ToolDefinition } from './types.js';
5
+ export declare function getStorageTools(): ToolDefinition[];
6
+ //# sourceMappingURL=storage-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-tools.d.ts","sourceRoot":"","sources":["../../src/tools/storage-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,cAAc,EAA2B,MAAM,YAAY,CAAC;AAErE,wBAAgB,eAAe,IAAI,cAAc,EAAE,CAgKlD"}
@@ -0,0 +1,166 @@
1
+ /**
2
+ * Storage (Bucket) tool definitions
3
+ */
4
+ import { getPaginationProperties } from './types.js';
5
+ export function getStorageTools() {
6
+ return [
7
+ {
8
+ name: 'liara_list_buckets',
9
+ description: 'List all storage buckets',
10
+ inputSchema: {
11
+ type: 'object',
12
+ properties: getPaginationProperties(),
13
+ },
14
+ },
15
+ {
16
+ name: 'liara_get_bucket',
17
+ description: 'Get details of a specific bucket',
18
+ inputSchema: {
19
+ type: 'object',
20
+ properties: {
21
+ name: {
22
+ type: 'string',
23
+ description: 'The name of the bucket',
24
+ },
25
+ },
26
+ required: ['name'],
27
+ },
28
+ },
29
+ {
30
+ name: 'liara_create_bucket',
31
+ description: 'Create a new storage bucket',
32
+ inputSchema: {
33
+ type: 'object',
34
+ properties: {
35
+ name: {
36
+ type: 'string',
37
+ description: 'Bucket name',
38
+ },
39
+ region: {
40
+ type: 'string',
41
+ description: 'Region (optional)',
42
+ },
43
+ permission: {
44
+ type: 'string',
45
+ description: 'Permission level',
46
+ enum: ['private', 'public-read'],
47
+ },
48
+ },
49
+ required: ['name'],
50
+ },
51
+ },
52
+ {
53
+ name: 'liara_delete_bucket',
54
+ description: 'Delete a storage bucket',
55
+ inputSchema: {
56
+ type: 'object',
57
+ properties: {
58
+ name: {
59
+ type: 'string',
60
+ description: 'The name of the bucket to delete',
61
+ },
62
+ },
63
+ required: ['name'],
64
+ },
65
+ },
66
+ {
67
+ name: 'liara_get_bucket_credentials',
68
+ description: 'Get S3-compatible credentials for a bucket',
69
+ inputSchema: {
70
+ type: 'object',
71
+ properties: {
72
+ name: {
73
+ type: 'string',
74
+ description: 'The name of the bucket',
75
+ },
76
+ },
77
+ required: ['name'],
78
+ },
79
+ },
80
+ {
81
+ name: 'liara_list_objects',
82
+ description: 'List objects in a bucket',
83
+ inputSchema: {
84
+ type: 'object',
85
+ properties: {
86
+ bucketName: {
87
+ type: 'string',
88
+ description: 'The name of the bucket',
89
+ },
90
+ prefix: {
91
+ type: 'string',
92
+ description: 'Prefix to filter objects (optional)',
93
+ },
94
+ maxKeys: {
95
+ type: 'number',
96
+ description: 'Maximum number of objects to return (optional)',
97
+ },
98
+ },
99
+ required: ['bucketName'],
100
+ },
101
+ },
102
+ {
103
+ name: 'liara_upload_object',
104
+ description: 'Upload an object to a bucket',
105
+ inputSchema: {
106
+ type: 'object',
107
+ properties: {
108
+ bucketName: {
109
+ type: 'string',
110
+ description: 'The name of the bucket',
111
+ },
112
+ objectKey: {
113
+ type: 'string',
114
+ description: 'The object key (path)',
115
+ },
116
+ filePath: {
117
+ type: 'string',
118
+ description: 'Path to the file to upload',
119
+ },
120
+ },
121
+ required: ['bucketName', 'objectKey', 'filePath'],
122
+ },
123
+ },
124
+ {
125
+ name: 'liara_get_object_download_url',
126
+ description: 'Get download URL for an object',
127
+ inputSchema: {
128
+ type: 'object',
129
+ properties: {
130
+ bucketName: {
131
+ type: 'string',
132
+ description: 'The name of the bucket',
133
+ },
134
+ objectKey: {
135
+ type: 'string',
136
+ description: 'The object key',
137
+ },
138
+ expiresIn: {
139
+ type: 'number',
140
+ description: 'URL expiration time in seconds (optional)',
141
+ },
142
+ },
143
+ required: ['bucketName', 'objectKey'],
144
+ },
145
+ },
146
+ {
147
+ name: 'liara_delete_object',
148
+ description: 'Delete an object from a bucket',
149
+ inputSchema: {
150
+ type: 'object',
151
+ properties: {
152
+ bucketName: {
153
+ type: 'string',
154
+ description: 'The name of the bucket',
155
+ },
156
+ objectKey: {
157
+ type: 'string',
158
+ description: 'The object key to delete',
159
+ },
160
+ },
161
+ required: ['bucketName', 'objectKey'],
162
+ },
163
+ },
164
+ ];
165
+ }
166
+ //# sourceMappingURL=storage-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-tools.js","sourceRoot":"","sources":["../../src/tools/storage-tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Shared types for MCP tool definitions
3
+ */
4
+ export interface ToolDefinition {
5
+ name: string;
6
+ description: string;
7
+ inputSchema: {
8
+ type: 'object';
9
+ properties: Record<string, any>;
10
+ required?: string[];
11
+ };
12
+ }
13
+ /**
14
+ * Get pagination properties for tool schemas
15
+ */
16
+ export declare function getPaginationProperties(): {
17
+ page: {
18
+ type: "number";
19
+ description: string;
20
+ };
21
+ perPage: {
22
+ type: "number";
23
+ description: string;
24
+ };
25
+ limit: {
26
+ type: "number";
27
+ description: string;
28
+ };
29
+ offset: {
30
+ type: "number";
31
+ description: string;
32
+ };
33
+ };
34
+ //# sourceMappingURL=types.d.ts.map
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "liara-mcp",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
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",