@migma/mcp 1.9.1-automations.1 → 1.10.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 (86) hide show
  1. package/README.md +25 -26
  2. package/build/index.d.ts.map +1 -1
  3. package/build/index.js +5 -11
  4. package/build/index.js.map +1 -1
  5. package/build/prompts/index.d.ts +0 -1
  6. package/build/prompts/index.d.ts.map +1 -1
  7. package/build/prompts/index.js +5 -20
  8. package/build/prompts/index.js.map +1 -1
  9. package/build/tools/__tests__/brand.test.js +25 -0
  10. package/build/tools/__tests__/brand.test.js.map +1 -1
  11. package/build/tools/__tests__/campaign-recipients.test.js +5 -2
  12. package/build/tools/__tests__/campaign-recipients.test.js.map +1 -1
  13. package/build/tools/__tests__/campaign-schedule.test.d.ts +2 -0
  14. package/build/tools/__tests__/campaign-schedule.test.d.ts.map +1 -0
  15. package/build/tools/__tests__/campaign-schedule.test.js +32 -0
  16. package/build/tools/__tests__/campaign-schedule.test.js.map +1 -0
  17. package/build/tools/__tests__/catalog.test.js +27 -21
  18. package/build/tools/__tests__/catalog.test.js.map +1 -1
  19. package/build/tools/__tests__/provider-imports.test.js +23 -0
  20. package/build/tools/__tests__/provider-imports.test.js.map +1 -1
  21. package/build/tools/__tests__/review-annotations.test.js +7 -13
  22. package/build/tools/__tests__/review-annotations.test.js.map +1 -1
  23. package/build/tools/__tests__/send-approval.test.d.ts +2 -0
  24. package/build/tools/__tests__/send-approval.test.d.ts.map +1 -0
  25. package/build/tools/__tests__/send-approval.test.js +71 -0
  26. package/build/tools/__tests__/send-approval.test.js.map +1 -0
  27. package/build/tools/api-request.d.ts +11 -0
  28. package/build/tools/api-request.d.ts.map +1 -0
  29. package/build/tools/api-request.js +35 -0
  30. package/build/tools/api-request.js.map +1 -0
  31. package/build/tools/brand.d.ts.map +1 -1
  32. package/build/tools/brand.js +10 -7
  33. package/build/tools/brand.js.map +1 -1
  34. package/build/tools/campaigns.d.ts +2 -0
  35. package/build/tools/campaigns.d.ts.map +1 -1
  36. package/build/tools/campaigns.js +49 -33
  37. package/build/tools/campaigns.js.map +1 -1
  38. package/build/tools/capabilities.d.ts +1 -3
  39. package/build/tools/capabilities.d.ts.map +1 -1
  40. package/build/tools/capabilities.js +11 -55
  41. package/build/tools/capabilities.js.map +1 -1
  42. package/build/tools/contacts.d.ts.map +1 -1
  43. package/build/tools/contacts.js +31 -48
  44. package/build/tools/contacts.js.map +1 -1
  45. package/build/tools/context.js +1 -1
  46. package/build/tools/context.js.map +1 -1
  47. package/build/tools/generate.js +4 -4
  48. package/build/tools/generate.js.map +1 -1
  49. package/build/tools/segments.d.ts +16 -16
  50. package/build/tools/send-approval.d.ts +29 -0
  51. package/build/tools/send-approval.d.ts.map +1 -0
  52. package/build/tools/send-approval.js +51 -0
  53. package/build/tools/send-approval.js.map +1 -0
  54. package/build/tools/send.d.ts +1 -1
  55. package/build/tools/send.d.ts.map +1 -1
  56. package/build/tools/send.js +24 -35
  57. package/build/tools/send.js.map +1 -1
  58. package/build/tools/sender-check.d.ts +16 -0
  59. package/build/tools/sender-check.d.ts.map +1 -0
  60. package/build/tools/sender-check.js +28 -0
  61. package/build/tools/sender-check.js.map +1 -0
  62. package/package.json +3 -3
  63. package/build/tools/__tests__/automations.test.d.ts +0 -2
  64. package/build/tools/__tests__/automations.test.d.ts.map +0 -1
  65. package/build/tools/__tests__/automations.test.js +0 -259
  66. package/build/tools/__tests__/automations.test.js.map +0 -1
  67. package/build/tools/__tests__/forms.test.d.ts +0 -2
  68. package/build/tools/__tests__/forms.test.d.ts.map +0 -1
  69. package/build/tools/__tests__/forms.test.js +0 -127
  70. package/build/tools/__tests__/forms.test.js.map +0 -1
  71. package/build/tools/__tests__/websites.test.d.ts +0 -2
  72. package/build/tools/__tests__/websites.test.d.ts.map +0 -1
  73. package/build/tools/__tests__/websites.test.js +0 -138
  74. package/build/tools/__tests__/websites.test.js.map +0 -1
  75. package/build/tools/automations.d.ts +0 -22
  76. package/build/tools/automations.d.ts.map +0 -1
  77. package/build/tools/automations.js +0 -134
  78. package/build/tools/automations.js.map +0 -1
  79. package/build/tools/forms.d.ts +0 -6
  80. package/build/tools/forms.d.ts.map +0 -1
  81. package/build/tools/forms.js +0 -97
  82. package/build/tools/forms.js.map +0 -1
  83. package/build/tools/websites.d.ts +0 -4
  84. package/build/tools/websites.d.ts.map +0 -1
  85. package/build/tools/websites.js +0 -114
  86. package/build/tools/websites.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/tools/generate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/tools/generate.ts"],"names":[],"mappings":"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"}
@@ -32,59 +32,59 @@ declare const segmentFiltersObjectSchema: z.ZodObject<{
32
32
  to: z.ZodOptional<z.ZodDate>;
33
33
  campaignId: z.ZodOptional<z.ZodString>;
34
34
  }, "strip", z.ZodTypeAny, {
35
- mode: "never" | "within" | "before" | "between";
36
35
  action: "opened" | "clicked" | "sent";
36
+ mode: "never" | "within" | "before" | "between";
37
37
  to?: Date | undefined;
38
+ campaignId?: string | undefined;
38
39
  from?: Date | undefined;
39
40
  channel?: "email" | undefined;
40
41
  unit?: "hours" | "days" | undefined;
41
42
  amount?: number | undefined;
42
- campaignId?: string | undefined;
43
43
  }, {
44
- mode: "never" | "within" | "before" | "between";
45
44
  action: "opened" | "clicked" | "sent";
45
+ mode: "never" | "within" | "before" | "between";
46
46
  to?: Date | undefined;
47
+ campaignId?: string | undefined;
47
48
  from?: Date | undefined;
48
49
  channel?: "email" | undefined;
49
50
  unit?: "hours" | "days" | undefined;
50
51
  amount?: number | undefined;
51
- campaignId?: string | undefined;
52
52
  }>, {
53
- mode: "never" | "within" | "before" | "between";
54
53
  action: "opened" | "clicked" | "sent";
54
+ mode: "never" | "within" | "before" | "between";
55
55
  to?: Date | undefined;
56
+ campaignId?: string | undefined;
56
57
  from?: Date | undefined;
57
58
  channel?: "email" | undefined;
58
59
  unit?: "hours" | "days" | undefined;
59
60
  amount?: number | undefined;
60
- campaignId?: string | undefined;
61
61
  }, {
62
- mode: "never" | "within" | "before" | "between";
63
62
  action: "opened" | "clicked" | "sent";
63
+ mode: "never" | "within" | "before" | "between";
64
64
  to?: Date | undefined;
65
+ campaignId?: string | undefined;
65
66
  from?: Date | undefined;
66
67
  channel?: "email" | undefined;
67
68
  unit?: "hours" | "days" | undefined;
68
69
  amount?: number | undefined;
69
- campaignId?: string | undefined;
70
70
  }>, {
71
- mode: "never" | "within" | "before" | "between";
72
71
  action: "opened" | "clicked" | "sent";
72
+ mode: "never" | "within" | "before" | "between";
73
73
  to?: Date | undefined;
74
+ campaignId?: string | undefined;
74
75
  from?: Date | undefined;
75
76
  channel?: "email" | undefined;
76
77
  unit?: "hours" | "days" | undefined;
77
78
  amount?: number | undefined;
78
- campaignId?: string | undefined;
79
79
  }, {
80
- mode: "never" | "within" | "before" | "between";
81
80
  action: "opened" | "clicked" | "sent";
81
+ mode: "never" | "within" | "before" | "between";
82
82
  to?: Date | undefined;
83
+ campaignId?: string | undefined;
83
84
  from?: Date | undefined;
84
85
  channel?: "email" | undefined;
85
86
  unit?: "hours" | "days" | undefined;
86
87
  amount?: number | undefined;
87
- campaignId?: string | undefined;
88
88
  }>, "many">>;
89
89
  }, "strip", z.ZodTypeAny, {
90
90
  status?: "bounced" | "subscribed" | "unsubscribed" | "non-subscribed" | undefined;
@@ -99,14 +99,14 @@ declare const segmentFiltersObjectSchema: z.ZodObject<{
99
99
  mode: "is" | "is_not" | "starts_with" | "ends_with" | "contains" | "not_contains" | "date_after" | "date_before" | "date_on" | "date_between" | "number_gt" | "number_gte" | "number_lt" | "number_lte" | "number_between";
100
100
  }[] | undefined;
101
101
  activity?: {
102
- mode: "never" | "within" | "before" | "between";
103
102
  action: "opened" | "clicked" | "sent";
103
+ mode: "never" | "within" | "before" | "between";
104
104
  to?: Date | undefined;
105
+ campaignId?: string | undefined;
105
106
  from?: Date | undefined;
106
107
  channel?: "email" | undefined;
107
108
  unit?: "hours" | "days" | undefined;
108
109
  amount?: number | undefined;
109
- campaignId?: string | undefined;
110
110
  }[] | undefined;
111
111
  }, {
112
112
  status?: "bounced" | "subscribed" | "unsubscribed" | "non-subscribed" | undefined;
@@ -121,14 +121,14 @@ declare const segmentFiltersObjectSchema: z.ZodObject<{
121
121
  mode?: "is" | "is_not" | "starts_with" | "ends_with" | "contains" | "not_contains" | "date_after" | "date_before" | "date_on" | "date_between" | "number_gt" | "number_gte" | "number_lt" | "number_lte" | "number_between" | undefined;
122
122
  }[] | undefined;
123
123
  activity?: {
124
- mode: "never" | "within" | "before" | "between";
125
124
  action: "opened" | "clicked" | "sent";
125
+ mode: "never" | "within" | "before" | "between";
126
126
  to?: Date | undefined;
127
+ campaignId?: string | undefined;
127
128
  from?: Date | undefined;
128
129
  channel?: "email" | undefined;
129
130
  unit?: "hours" | "days" | undefined;
130
131
  amount?: number | undefined;
131
- campaignId?: string | undefined;
132
132
  }[] | undefined;
133
133
  }>;
134
134
  type SegmentFilterGroup = z.infer<typeof segmentFiltersObjectSchema> & {
@@ -0,0 +1,29 @@
1
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ import type { Config } from "../config.js";
3
+ /**
4
+ * Sends from an assistant are approved by the user in Migma, not in the chat: the send tools
5
+ * create an approval (POST /v1/send-approvals) and return its summary and link; the user
6
+ * approves it on migma.ai, where Migma sends it. Nothing returned here can approve a send.
7
+ */
8
+ export type SendApprovalBody = {
9
+ action: "send_email";
10
+ send: Record<string, unknown>;
11
+ } | {
12
+ action: "send_campaign";
13
+ campaignId: string;
14
+ } | {
15
+ action: "schedule_campaign";
16
+ campaignId: string;
17
+ scheduledAt: string;
18
+ scheduledTimezone?: string;
19
+ localTimeDelivery?: boolean;
20
+ };
21
+ export declare const IDEMPOTENCY_KEY_DESCRIPTION = "Optional Idempotency-Key; repeating the same key and body within 24h returns the same approval instead of a new one.";
22
+ export declare function requestSendApproval(config: Config, body: SendApprovalBody, idempotencyKey?: string): Promise<{
23
+ content: {
24
+ type: "text";
25
+ text: string;
26
+ }[];
27
+ }>;
28
+ export declare function registerSendApprovalTools(server: McpServer, config: Config, grantedPermissions?: string[]): void;
29
+ //# sourceMappingURL=send-approval.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"send-approval.d.ts","sourceRoot":"","sources":["../../src/tools/send-approval.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAK3C;;;;GAIG;AAEH,MAAM,MAAM,gBAAgB,GACxB;IAAE,MAAM,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GACvD;IAAE,MAAM,EAAE,eAAe,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAC/C;IAAE,MAAM,EAAE,mBAAmB,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAetI,eAAO,MAAM,2BAA2B,yHACgF,CAAC;AAEzH,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,CAAC,EAAE,MAAM;;;;;GAUxG;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,CAAC,EAAE,MAAM,EAAE,QA6BzG"}
@@ -0,0 +1,51 @@
1
+ import { z } from "zod";
2
+ import { canUse } from "../permissions.js";
3
+ import { READ_ONLY_TOOL } from "./annotations.js";
4
+ import { apiRequest } from "./api-request.js";
5
+ export const IDEMPOTENCY_KEY_DESCRIPTION = "Optional Idempotency-Key; repeating the same key and body within 24h returns the same approval instead of a new one.";
6
+ export async function requestSendApproval(config, body, idempotencyKey) {
7
+ const created = await apiRequest(config, "POST", "/send-approvals", body, idempotencyKey ? { "Idempotency-Key": idempotencyKey } : undefined);
8
+ if (!created.ok)
9
+ return toolError(created.error);
10
+ const view = created.data;
11
+ return toolResult({
12
+ sent: false,
13
+ approval: { id: view.id, status: view.status, approvalUrl: view.approvalUrl, expiresAt: view.expiresAt },
14
+ summary: view.summary,
15
+ next: "Show the user this summary and the approval link. They approve it on migma.ai, and Migma sends it then. Check the outcome with migma_get_send_approval.",
16
+ });
17
+ }
18
+ export function registerSendApprovalTools(server, config, grantedPermissions) {
19
+ if (!canUse(grantedPermissions, ["email:send"]) && !canUse(grantedPermissions, ["campaign:write"]))
20
+ return;
21
+ server.registerTool("migma_get_send_approval", {
22
+ title: "Get Send Approval",
23
+ annotations: READ_ONLY_TOOL,
24
+ description: "Check a send prepared with migma_send_email, migma_send_campaign or migma_schedule_campaign: pending (waiting for the user on migma.ai), sent, scheduled, declined, expired, or failed with the reason. Report sent or scheduled only when this says so.",
25
+ inputSchema: z.object({
26
+ approvalId: z.string().describe("The approval id returned by the send or schedule tool"),
27
+ }),
28
+ }, async (args) => {
29
+ const found = await apiRequest(config, "GET", `/send-approvals/${encodeURIComponent(args.approvalId)}`);
30
+ if (!found.ok)
31
+ return toolError(found.error);
32
+ const view = found.data;
33
+ return toolResult({
34
+ id: view.id,
35
+ action: view.action,
36
+ status: view.status,
37
+ approvalUrl: view.approvalUrl,
38
+ ...(view.result ? { result: view.result } : {}),
39
+ ...(view.error ? { error: view.error } : {}),
40
+ ...(view.decidedAt ? { decidedAt: view.decidedAt } : {}),
41
+ expiresAt: view.expiresAt,
42
+ });
43
+ });
44
+ }
45
+ function toolResult(data) {
46
+ return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
47
+ }
48
+ function toolError(message) {
49
+ return { content: [{ type: "text", text: message }], isError: true };
50
+ }
51
+ //# sourceMappingURL=send-approval.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"send-approval.js","sourceRoot":"","sources":["../../src/tools/send-approval.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
2
  import type { Migma } from "migma";
3
3
  import type { Config } from "../config.js";
4
- export declare function registerSendTools(server: McpServer, client: Migma, config: Config, grantedPermissions?: string[]): void;
4
+ export declare function registerSendTools(server: McpServer, _client: Migma, config: Config, grantedPermissions?: string[]): void;
5
5
  //# sourceMappingURL=send.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"send.d.ts","sourceRoot":"","sources":["../../src/tools/send.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAI3C,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,KAAK,EACb,MAAM,EAAE,MAAM,EACd,kBAAkB,CAAC,EAAE,MAAM,EAAE,QA4F9B"}
1
+ {"version":3,"file":"send.d.ts","sourceRoot":"","sources":["../../src/tools/send.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAK3C,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,KAAK,EACd,MAAM,EAAE,MAAM,EACd,kBAAkB,CAAC,EAAE,MAAM,EAAE,QAqF9B"}
@@ -1,12 +1,13 @@
1
1
  import { z } from "zod";
2
2
  import { canUse } from "../permissions.js";
3
3
  import { OPEN_WORLD_DESTRUCTIVE_TOOL } from "./annotations.js";
4
- export function registerSendTools(server, client, config, grantedPermissions) {
4
+ import { IDEMPOTENCY_KEY_DESCRIPTION, requestSendApproval } from "./send-approval.js";
5
+ export function registerSendTools(server, _client, config, grantedPermissions) {
5
6
  if (canUse(grantedPermissions, ["email:send"])) {
6
7
  server.registerTool("migma_send_email", {
7
8
  title: "Send Email",
8
9
  annotations: OPEN_WORLD_DESTRUCTIVE_TOOL,
9
- description: "Send a saved email to one person, tag, or segment. Use emailId for a series slot; conversationId works for a single email. First show final preview, audience, count, sender, subject, and timing; get explicit approval here. Reuse idempotency_key after uncertainty; without it, retries can send again. Queued or accepted does not mean delivered.",
10
+ description: "Prepare a saved email to send to one person, a list (tag), or a segment. Creates an approval and returns a summary (audience, recipient count, sender, subject, timing) with an approval link; the user approves it on migma.ai, and Migma sends it then. Use emailId for a series slot; conversationId works for a single email. Marketing by default, so unsubscribed contacts are skipped. Check the outcome with migma_get_send_approval.",
10
11
  inputSchema: z.object({
11
12
  recipientType: z
12
13
  .enum(["email", "tag", "segment"])
@@ -20,7 +21,7 @@ export function registerSendTools(server, client, config, grantedPermissions) {
20
21
  .string()
21
22
  .optional()
22
23
  .describe("Tag or segment ID (required when recipientType is 'tag' or 'segment')"),
23
- from: z.string().describe("Sender email address (e.g. hello@yourbrand.migma.email)"),
24
+ from: z.string().describe("Sender email address on a verified sending domain (e.g. hello@yourbrand.migma.email)"),
24
25
  fromName: z.string().describe("Sender display name"),
25
26
  subject: z.string().describe("Email subject line"),
26
27
  emailId: z
@@ -38,49 +39,37 @@ export function registerSendTools(server, client, config, grantedPermissions) {
38
39
  projectId: z
39
40
  .string()
40
41
  .optional()
41
- .describe("Project ID. Local stdio uses MIGMA_PROJECT_ID if not provided; hosted remote clients should pass projectId. Resolved automatically from conversationId when omitted."),
42
+ .describe("Project ID. Local stdio uses MIGMA_PROJECT_ID if not provided; hosted remote clients should pass projectId. Resolved automatically from conversationId or emailId when omitted."),
42
43
  transactional: z
43
44
  .boolean()
44
45
  .optional()
45
- .describe("True for transactional emails (order confirmations, resets) — bypasses unsubscribe filters. Defaults to true for single sends, false for batch."),
46
- idempotency_key: z
47
- .string()
48
- .max(100)
49
- .optional()
50
- .describe("Optional Idempotency-Key for safe retries; same key+body within 24h replays the original result."),
46
+ .describe("True only for a single recipient's transactional message (receipt, password reset), and only when the From's root domain has a verified transactional identity (see migma_provision_stream). Not allowed for tag or segment sends."),
47
+ idempotency_key: z.string().max(100).optional().describe(IDEMPOTENCY_KEY_DESCRIPTION),
51
48
  }),
52
49
  }, async (args) => {
53
- const projectId = args.projectId || config.projectId;
54
50
  if (!args.emailId && !args.conversationId) {
55
51
  return toolError("emailId or conversationId is required.");
56
52
  }
57
- const sendParams = {
58
- recipientType: args.recipientType,
59
- recipientEmail: args.recipientEmail,
60
- recipientId: args.recipientId,
61
- from: args.from,
62
- fromName: args.fromName,
63
- subject: args.subject,
64
- emailId: args.emailId,
65
- conversationId: args.conversationId,
66
- variables: args.variables,
67
- transactional: args.transactional,
68
- ...(projectId ? { projectId } : {}),
69
- };
70
- const { data, error } = await client.sending.send(sendParams, args.idempotency_key ? { idempotencyKey: args.idempotency_key } : undefined);
71
- if (error)
72
- return toolError(error.message);
73
- return toolResult(data);
53
+ const projectId = args.projectId || config.projectId;
54
+ return requestSendApproval(config, {
55
+ action: "send_email",
56
+ send: {
57
+ recipientType: args.recipientType,
58
+ recipientEmail: args.recipientEmail,
59
+ recipientId: args.recipientId,
60
+ from: args.from,
61
+ fromName: args.fromName,
62
+ subject: args.subject,
63
+ emailId: args.emailId,
64
+ conversationId: args.conversationId,
65
+ variables: args.variables,
66
+ transactional: args.transactional === true,
67
+ ...(projectId ? { projectId } : {}),
68
+ },
69
+ }, args.idempotency_key);
74
70
  });
75
71
  }
76
72
  }
77
- function toolResult(data) {
78
- return {
79
- content: [
80
- { type: "text", text: JSON.stringify(data, null, 2) },
81
- ],
82
- };
83
- }
84
73
  function toolError(message) {
85
74
  return {
86
75
  content: [{ type: "text", text: message }],
@@ -1 +1 @@
1
- {"version":3,"file":"send.js","sourceRoot":"","sources":["../../src/tools/send.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"send.js","sourceRoot":"","sources":["../../src/tools/send.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { Migma } from "migma";
2
+ export type SenderCheck = {
3
+ ok: true;
4
+ from: string;
5
+ warnings: string[];
6
+ } | {
7
+ ok: false;
8
+ error: string;
9
+ };
10
+ /**
11
+ * Mirrors the send path's sender resolution for campaign drafts: a From on a sendable domain or
12
+ * its root sends as is; otherwise Migma uses the account's verified managed domain; with neither,
13
+ * the draft could never send. A connection that cannot read domains is told the check was skipped.
14
+ */
15
+ export declare function checkSender(client: Migma, from: string): Promise<SenderCheck>;
16
+ //# sourceMappingURL=sender-check.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sender-check.d.ts","sourceRoot":"","sources":["../../src/tools/sender-check.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAInC,MAAM,MAAM,WAAW,GACnB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,GAC9C;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjC;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAoBnF"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Mirrors the send path's sender resolution for campaign drafts: a From on a sendable domain or
3
+ * its root sends as is; otherwise Migma uses the account's verified managed domain; with neither,
4
+ * the draft could never send. A connection that cannot read domains is told the check was skipped.
5
+ */
6
+ export async function checkSender(client, from) {
7
+ const { data, error } = await client.domains.list();
8
+ if (error?.statusCode === 403) {
9
+ return { ok: true, from, warnings: ["The sender domain was not checked: this connection cannot read sending domains. Migma checks it when sending."] };
10
+ }
11
+ if (error)
12
+ return { ok: false, error: `Could not check the sender: ${error.message}` };
13
+ const domains = (data ?? []);
14
+ const fromDomain = (from.split("@")[1] || "").toLowerCase();
15
+ const matches = (d) => d.domain.toLowerCase() === fromDomain || (d.rootDomain || d.domain).toLowerCase() === fromDomain;
16
+ if (domains.some((d) => d.isVerified === true && matches(d)))
17
+ return { ok: true, from, warnings: [] };
18
+ const managed = domains.find((d) => d.isManagedDomain && d.status === "verified");
19
+ if (!managed) {
20
+ return {
21
+ ok: false,
22
+ error: `${fromDomain || from} is not a verified sending domain in this account. Use a From address on a verified domain from migma_list_domains, or set one up first.`,
23
+ };
24
+ }
25
+ const effective = `${from.includes("@") ? from.split("@")[0] : "noreply"}@${managed.domain}`;
26
+ return { ok: true, from: effective, warnings: [`${fromDomain} is not verified yet, so this sends from ${effective}.`] };
27
+ }
28
+ //# sourceMappingURL=sender-check.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sender-check.js","sourceRoot":"","sources":["../../src/tools/sender-check.ts"],"names":[],"mappings":"AAQA;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAa,EAAE,IAAY;IAC3D,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACpD,IAAI,KAAK,EAAE,UAAU,KAAK,GAAG,EAAE,CAAC;QAC9B,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,+GAA+G,CAAC,EAAE,CAAC;IACzJ,CAAC;IACD,IAAI,KAAK;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,+BAA+B,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;IACvF,MAAM,OAAO,GAAG,CAAC,IAAI,IAAI,EAAE,CAA2B,CAAC;IACvD,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5D,MAAM,OAAO,GAAG,CAAC,CAAY,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,UAAU,IAAI,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC;IACnI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAEtG,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,IAAI,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC;IAClF,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,GAAG,UAAU,IAAI,IAAI,0IAA0I;SACvK,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAC7F,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,GAAG,UAAU,4CAA4C,SAAS,GAAG,CAAC,EAAE,CAAC;AAC1H,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@migma/mcp",
3
- "version": "1.9.1-automations.1",
4
- "description": "Migma MCP server — generate, send, validate, and export emails and build and manage automations from any MCP-compatible client",
3
+ "version": "1.10.1",
4
+ "description": "Migma MCP server — generate, send, validate, and export AI-powered emails from any MCP-compatible client",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "migma-mcp": "build/index.js"
@@ -31,7 +31,7 @@
31
31
  "license": "MIT",
32
32
  "dependencies": {
33
33
  "@modelcontextprotocol/sdk": "^1.9.0",
34
- "migma": "1.10.1-automations.1",
34
+ "migma": "^1.8.0",
35
35
  "zod": "^3.23.0"
36
36
  },
37
37
  "devDependencies": {
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=automations.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"automations.test.d.ts","sourceRoot":"","sources":["../../../src/tools/__tests__/automations.test.ts"],"names":[],"mappings":""}