@helmdesk/mcp 0.2.1 → 0.3.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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emails.d.ts","sourceRoot":"","sources":["../../src/tools/emails.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAEnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAEnD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"emails.d.ts","sourceRoot":"","sources":["../../src/tools/emails.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAEnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAEnD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,QAuGpF"}
|
package/dist/tools/emails.js
CHANGED
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
export function registerEmailTools(server, getClient) {
|
|
3
|
-
server.tool('send_email', 'Send a transactional email using a template. The template must exist in the project. Use preview_email first to verify the output.', {
|
|
3
|
+
server.tool('send_email', 'Send a transactional email using a template. The template must exist in the project. Use preview_email first to verify the output. Pass sendAt to schedule the send up to 30 days ahead instead of sending immediately.', {
|
|
4
4
|
templateKey: z.string().describe('Template key (e.g. "welcome", "password-reset"). Use @account/ prefix for shared templates.'),
|
|
5
5
|
to_email: z.string().email().describe('Recipient email address'),
|
|
6
6
|
to_name: z.string().optional().describe('Recipient display name'),
|
|
7
7
|
variables: z.record(z.unknown()).optional()
|
|
8
8
|
.describe('Template variables as key-value pairs (e.g. { "name": "Jane", "resetUrl": "https://..." })'),
|
|
9
|
-
|
|
9
|
+
sendAt: z.string().datetime({ offset: true }).optional()
|
|
10
|
+
.describe('ISO timestamp to send at instead of now (up to 30 days ahead). The email renders immediately and waits in status "scheduled"; a past timestamp sends right away.'),
|
|
11
|
+
}, async ({ templateKey, to_email, to_name, variables, sendAt }) => {
|
|
10
12
|
const client = getClient();
|
|
11
13
|
const result = await client.emails.send({
|
|
12
14
|
templateKey,
|
|
13
15
|
to: { email: to_email, name: to_name },
|
|
14
16
|
variables,
|
|
17
|
+
sendAt,
|
|
15
18
|
});
|
|
16
19
|
return {
|
|
17
20
|
content: [{
|
|
@@ -27,6 +30,8 @@ export function registerEmailTools(server, getClient) {
|
|
|
27
30
|
to_name: z.string().optional().describe('Recipient display name'),
|
|
28
31
|
variables: z.record(z.unknown()).optional().describe('Template variables for this recipient'),
|
|
29
32
|
idempotencyKey: z.string().optional().describe('Optional per-item key to prevent duplicate sends to this recipient'),
|
|
33
|
+
sendAt: z.string().datetime({ offset: true }).optional()
|
|
34
|
+
.describe('Optional ISO timestamp to schedule this item (up to 30 days ahead)'),
|
|
30
35
|
})).min(1).max(100).describe('The emails to send (max 100 per request)'),
|
|
31
36
|
}, async ({ emails }) => {
|
|
32
37
|
const client = getClient();
|
|
@@ -36,6 +41,7 @@ export function registerEmailTools(server, getClient) {
|
|
|
36
41
|
to: { email: e.to_email, name: e.to_name },
|
|
37
42
|
variables: e.variables,
|
|
38
43
|
idempotencyKey: e.idempotencyKey,
|
|
44
|
+
sendAt: e.sendAt,
|
|
39
45
|
})),
|
|
40
46
|
});
|
|
41
47
|
return {
|
package/dist/tools/emails.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emails.js","sourceRoot":"","sources":["../../src/tools/emails.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,MAAM,UAAU,kBAAkB,CAAC,MAAiB,EAAE,SAA+B;IACnF,MAAM,CAAC,IAAI,CACT,YAAY,EACZ,
|
|
1
|
+
{"version":3,"file":"emails.js","sourceRoot":"","sources":["../../src/tools/emails.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@helmdesk/mcp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "MCP server for Helmdesk — let AI agents manage tickets, send emails, and search your knowledge base",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"@modelcontextprotocol/sdk": "^1.12.1",
|
|
23
23
|
"zod": "^3.25.23",
|
|
24
|
-
"@helmdesk/sdk": "0.
|
|
24
|
+
"@helmdesk/sdk": "0.5.0"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
27
|
"@types/node": "^20",
|