liara-mcp 0.1.8 → 0.2.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.
package/dist/index.js CHANGED
@@ -31,7 +31,7 @@ class LiaraMcpServer {
31
31
  constructor() {
32
32
  this.server = new Server({
33
33
  name: 'liara-mcp',
34
- version: '0.1.4',
34
+ version: '0.2.0',
35
35
  }, {
36
36
  capabilities: {
37
37
  tools: {},
@@ -1 +1 @@
1
- {"version":3,"file":"mail.d.ts","sourceRoot":"","sources":["../../src/services/mail.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACH,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EAEpB,MAAM,iBAAiB,CAAC;AAGzB;;GAEG;AACH,wBAAsB,eAAe,CACjC,MAAM,EAAE,WAAW,EACnB,UAAU,CAAC,EAAE,iBAAiB,GAC/B,OAAO,CAAC,UAAU,EAAE,CAAC,CAIvB;AAED;;GAEG;AACH,wBAAsB,aAAa,CAC/B,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,UAAU,CAAC,CAGrB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAClC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,MAAM,GAAG,KAAK,GACtB,OAAO,CAAC,UAAU,CAAC,CAWrB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAClC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAGf;AAED;;GAEG;AACH,wBAAsB,SAAS,CAC3B,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,gBAAgB,GAC1B,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAclD;AAED;;GAEG;AACH,wBAAsB,eAAe,CACjC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAGf;AAED;;GAEG;AACH,wBAAsB,cAAc,CAChC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAGf;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACnC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAGf"}
1
+ {"version":3,"file":"mail.d.ts","sourceRoot":"","sources":["../../src/services/mail.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACH,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EAEpB,MAAM,iBAAiB,CAAC;AAyBzB;;GAEG;AACH,wBAAsB,eAAe,CACjC,MAAM,EAAE,WAAW,EACnB,UAAU,CAAC,EAAE,iBAAiB,GAC/B,OAAO,CAAC,UAAU,EAAE,CAAC,CAKvB;AAED;;GAEG;AACH,wBAAsB,aAAa,CAC/B,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,UAAU,CAAC,CAIrB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAClC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,MAAM,GAAG,KAAK,GACtB,OAAO,CAAC,UAAU,CAAC,CAYrB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAClC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAIf;AAED;;GAEG;AACH,wBAAsB,SAAS,CAC3B,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,gBAAgB,GAC1B,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAelD;AAED;;GAEG;AACH,wBAAsB,eAAe,CACjC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAIf;AAED;;GAEG;AACH,wBAAsB,cAAc,CAChC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAIf;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACnC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAIf"}
@@ -1,11 +1,32 @@
1
+ import { LiaraClient } from '../api/client.js';
1
2
  import { paginationToParams, } from '../api/types.js';
2
3
  import { validateRequired, unwrapApiResponse } from '../utils/errors.js';
4
+ /**
5
+ * Create a specialized Mail service client with the Mail API base URL
6
+ */
7
+ function createMailClient(client) {
8
+ // Access the internal client to get the API token
9
+ const internalClient = client.client;
10
+ const apiToken = internalClient?.defaults?.headers?.Authorization?.replace('Bearer ', '') ||
11
+ process.env.LIARA_API_TOKEN;
12
+ const teamId = client.teamId || process.env.LIARA_TEAM_ID;
13
+ if (!apiToken) {
14
+ throw new Error('API token is required for Mail operations');
15
+ }
16
+ // Create new client with Mail service base URL
17
+ return new LiaraClient({
18
+ apiToken,
19
+ teamId,
20
+ baseURL: 'https://mail-service.liara.ir/api',
21
+ });
22
+ }
3
23
  /**
4
24
  * List all mail servers
5
25
  */
6
26
  export async function listMailServers(client, pagination) {
27
+ const mailClient = createMailClient(client);
7
28
  const params = paginationToParams(pagination);
8
- const response = await client.get('/v1/mails', params);
29
+ const response = await mailClient.get('/v1/mails', params);
9
30
  return unwrapApiResponse(response, ['mails', 'mailServers', 'data', 'items']);
10
31
  }
11
32
  /**
@@ -13,7 +34,8 @@ export async function listMailServers(client, pagination) {
13
34
  */
14
35
  export async function getMailServer(client, mailId) {
15
36
  validateRequired(mailId, 'Mail server ID');
16
- return await client.get(`/v1/mails/${mailId}`);
37
+ const mailClient = createMailClient(client);
38
+ return await mailClient.get(`/v1/mails/${mailId}`);
17
39
  }
18
40
  /**
19
41
  * Create a new mail server
@@ -28,7 +50,8 @@ export async function createMailServer(client, name, mode) {
28
50
  // Default to 'api' if mode is not provided
29
51
  requestBody.mode = 'api';
30
52
  }
31
- const response = await client.post('/v1/mails', requestBody);
53
+ const mailClient = createMailClient(client);
54
+ const response = await mailClient.post('/v1/mails', requestBody);
32
55
  return unwrapApiResponse(response, ['mail', 'mailServer', 'data']);
33
56
  }
34
57
  /**
@@ -36,7 +59,8 @@ export async function createMailServer(client, name, mode) {
36
59
  */
37
60
  export async function deleteMailServer(client, mailId) {
38
61
  validateRequired(mailId, 'Mail server ID');
39
- await client.delete(`/v1/mails/${mailId}`);
62
+ const mailClient = createMailClient(client);
63
+ await mailClient.delete(`/v1/mails/${mailId}`);
40
64
  }
41
65
  /**
42
66
  * Send an email
@@ -49,27 +73,31 @@ export async function sendEmail(client, mailId, request) {
49
73
  if (!request.html && !request.text) {
50
74
  throw new Error('Either html or text content is required');
51
75
  }
52
- return await client.post(`/v1/mails/${mailId}/send`, request);
76
+ const mailClient = createMailClient(client);
77
+ return await mailClient.post(`/v1/mails/${mailId}/send`, request);
53
78
  }
54
79
  /**
55
80
  * Start a mail server
56
81
  */
57
82
  export async function startMailServer(client, mailId) {
58
83
  validateRequired(mailId, 'Mail server ID');
59
- await client.post(`/v1/mails/${mailId}/actions/start`);
84
+ const mailClient = createMailClient(client);
85
+ await mailClient.post(`/v1/mails/${mailId}/actions/start`);
60
86
  }
61
87
  /**
62
88
  * Stop a mail server
63
89
  */
64
90
  export async function stopMailServer(client, mailId) {
65
91
  validateRequired(mailId, 'Mail server ID');
66
- await client.post(`/v1/mails/${mailId}/actions/stop`);
92
+ const mailClient = createMailClient(client);
93
+ await mailClient.post(`/v1/mails/${mailId}/actions/stop`);
67
94
  }
68
95
  /**
69
96
  * Restart a mail server
70
97
  */
71
98
  export async function restartMailServer(client, mailId) {
72
99
  validateRequired(mailId, 'Mail server ID');
73
- await client.post(`/v1/mails/${mailId}/actions/restart`);
100
+ const mailClient = createMailClient(client);
101
+ await mailClient.post(`/v1/mails/${mailId}/actions/restart`);
74
102
  }
75
103
  //# sourceMappingURL=mail.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mail.js","sourceRoot":"","sources":["../../src/services/mail.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mail.js","sourceRoot":"","sources":["../../src/services/mail.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "liara-mcp",
3
- "version": "0.1.8",
3
+ "version": "0.2.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",