@migma/mcp 1.8.0 → 1.8.2
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/README.md +39 -4
- package/build/index.js +2 -2
- package/build/index.js.map +1 -1
- package/build/tools/__tests__/catalog.test.js +7 -6
- package/build/tools/__tests__/catalog.test.js.map +1 -1
- package/build/tools/__tests__/project-id.test.d.ts +2 -0
- package/build/tools/__tests__/project-id.test.d.ts.map +1 -0
- package/build/tools/__tests__/project-id.test.js +131 -0
- package/build/tools/__tests__/project-id.test.js.map +1 -0
- package/build/tools/__tests__/review-annotations.test.d.ts +2 -0
- package/build/tools/__tests__/review-annotations.test.d.ts.map +1 -0
- package/build/tools/__tests__/review-annotations.test.js +140 -0
- package/build/tools/__tests__/review-annotations.test.js.map +1 -0
- package/build/tools/brand.d.ts.map +1 -1
- package/build/tools/brand.js +6 -14
- package/build/tools/brand.js.map +1 -1
- package/build/tools/campaigns.d.ts.map +1 -1
- package/build/tools/campaigns.js +11 -16
- package/build/tools/campaigns.js.map +1 -1
- package/build/tools/capabilities.d.ts +3 -1
- package/build/tools/capabilities.d.ts.map +1 -1
- package/build/tools/capabilities.js +51 -22
- package/build/tools/capabilities.js.map +1 -1
- package/build/tools/connected-tools.d.ts +2 -1
- package/build/tools/connected-tools.d.ts.map +1 -1
- package/build/tools/connected-tools.js +8 -9
- package/build/tools/connected-tools.js.map +1 -1
- package/build/tools/contact-exports.d.ts +2 -1
- package/build/tools/contact-exports.d.ts.map +1 -1
- package/build/tools/contact-exports.js +4 -7
- package/build/tools/contact-exports.js.map +1 -1
- package/build/tools/contacts.d.ts.map +1 -1
- package/build/tools/contacts.js +25 -49
- package/build/tools/contacts.js.map +1 -1
- package/build/tools/domains.js +4 -4
- package/build/tools/domains.js.map +1 -1
- package/build/tools/export.js +5 -5
- package/build/tools/export.js.map +1 -1
- package/build/tools/generate.d.ts.map +1 -1
- package/build/tools/generate.js +8 -13
- package/build/tools/generate.js.map +1 -1
- package/build/tools/import-html.d.ts.map +1 -1
- package/build/tools/import-html.js +5 -7
- package/build/tools/import-html.js.map +1 -1
- package/build/tools/knowledge-base.d.ts.map +1 -1
- package/build/tools/knowledge-base.js +3 -11
- package/build/tools/knowledge-base.js.map +1 -1
- package/build/tools/projects.d.ts +8 -0
- package/build/tools/projects.d.ts.map +1 -1
- package/build/tools/projects.js +68 -3
- package/build/tools/projects.js.map +1 -1
- package/build/tools/segments.d.ts.map +1 -1
- package/build/tools/segments.js +4 -12
- package/build/tools/segments.js.map +1 -1
- package/build/tools/send.js +3 -3
- package/build/tools/send.js.map +1 -1
- package/build/tools/tags.d.ts.map +1 -1
- package/build/tools/tags.js +4 -12
- package/build/tools/tags.js.map +1 -1
- package/build/tools/validate.d.ts.map +1 -1
- package/build/tools/validate.js +6 -4
- package/build/tools/validate.js.map +1 -1
- package/build/tools/webhooks.d.ts.map +1 -1
- package/build/tools/webhooks.js +3 -3
- package/build/tools/webhooks.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { canUse } from "../permissions.js";
|
|
3
|
+
import { resolveProjectId } from "./projects.js";
|
|
3
4
|
import { decorateEmailPayload } from "./agent-payload.js";
|
|
4
|
-
import {
|
|
5
|
+
import { OPEN_WORLD_DESTRUCTIVE_TOOL } from "./annotations.js";
|
|
5
6
|
export function registerImportHtmlTools(server, client, config, grantedPermissions) {
|
|
6
7
|
if (!canUse(grantedPermissions, ["email:write", "email:read"]))
|
|
7
8
|
return;
|
|
8
9
|
server.registerTool("migma_import_html", {
|
|
9
10
|
title: "Import / Convert HTML Email or Series",
|
|
10
|
-
annotations:
|
|
11
|
-
description: "
|
|
11
|
+
annotations: OPEN_WORLD_DESTRUCTIVE_TOOL,
|
|
12
|
+
description: "Convert existing HTML or .eml into editable drafts; use migma_generate_email for new designs. One call imports up to 12 files via htmls. Poll migma_get_generation_status with conversationId for previews and each slot's emailId. Uses 1 credit per finished email. Rendering may fetch public assets; configured webhooks may receive events. Reuse idempotency_key after uncertainty; unkeyed retries can duplicate drafts and credits used.",
|
|
12
13
|
inputSchema: z.object({
|
|
13
14
|
projectId: z
|
|
14
15
|
.string()
|
|
@@ -51,10 +52,7 @@ export function registerImportHtmlTools(server, client, config, grantedPermissio
|
|
|
51
52
|
.describe("Optional Idempotency-Key. Retrying the same key+body within 24h resumes the same job instead of starting a duplicate."),
|
|
52
53
|
}),
|
|
53
54
|
}, async (args) => {
|
|
54
|
-
const projectId =
|
|
55
|
-
if (!projectId) {
|
|
56
|
-
return toolError("projectId is required. Provide projectId, or set MIGMA_PROJECT_ID when using local stdio.");
|
|
57
|
-
}
|
|
55
|
+
const projectId = await resolveProjectId(client, config, args.projectId);
|
|
58
56
|
const hasHtml = typeof args.html === "string" && args.html.length > 0;
|
|
59
57
|
const hasHtmls = Array.isArray(args.htmls) && args.htmls.length > 0;
|
|
60
58
|
if (hasHtml === hasHtmls) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"import-html.js","sourceRoot":"","sources":["../../src/tools/import-html.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"import-html.js","sourceRoot":"","sources":["../../src/tools/import-html.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"knowledge-base.d.ts","sourceRoot":"","sources":["../../src/tools/knowledge-base.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;
|
|
1
|
+
{"version":3,"file":"knowledge-base.d.ts","sourceRoot":"","sources":["../../src/tools/knowledge-base.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;AA6B3C,6DAA6D;AAC7D,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,OAAO,EACb,cAAc,EAAE,OAAO,GACtB;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CAAE,CAsB3D;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG;IACnD,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,CAOA;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,KAAK,EACb,MAAM,EAAE,MAAM,EACd,kBAAkB,CAAC,EAAE,MAAM,EAAE,QAyE9B"}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { canUse } from "../permissions.js";
|
|
3
|
+
import { resolveProjectId } from "./projects.js";
|
|
3
4
|
import { MUTATING_TOOL, READ_ONLY_TOOL } from "./annotations.js";
|
|
4
5
|
const PREVIEW_CHARS = 120;
|
|
5
6
|
const CONTENT_MAX = 15_000;
|
|
6
|
-
function resolveProjectId(projectId, config) {
|
|
7
|
-
return projectId || config.projectId || null;
|
|
8
|
-
}
|
|
9
7
|
function asEntry(value) {
|
|
10
8
|
if (!value || typeof value !== "object")
|
|
11
9
|
return null;
|
|
@@ -66,10 +64,7 @@ export function registerKnowledgeBaseTools(server, client, config, grantedPermis
|
|
|
66
64
|
.describe("Include full entry text. Default false (preview only)."),
|
|
67
65
|
}),
|
|
68
66
|
}, async (args) => {
|
|
69
|
-
const projectId = resolveProjectId(args.projectId
|
|
70
|
-
if (!projectId) {
|
|
71
|
-
return toolError("projectId is required. Provide projectId, or set MIGMA_PROJECT_ID when using local stdio.");
|
|
72
|
-
}
|
|
67
|
+
const projectId = await resolveProjectId(client, config, args.projectId);
|
|
73
68
|
const { data, error } = await client.knowledgeBase.list(projectId);
|
|
74
69
|
if (error)
|
|
75
70
|
return toolError(error.message);
|
|
@@ -98,10 +93,7 @@ export function registerKnowledgeBaseTools(server, client, config, grantedPermis
|
|
|
98
93
|
.describe("Concrete fact text to remember."),
|
|
99
94
|
}),
|
|
100
95
|
}, async (args) => {
|
|
101
|
-
const projectId = resolveProjectId(args.projectId
|
|
102
|
-
if (!projectId) {
|
|
103
|
-
return toolError("projectId is required. Provide projectId, or set MIGMA_PROJECT_ID when using local stdio.");
|
|
104
|
-
}
|
|
96
|
+
const projectId = await resolveProjectId(client, config, args.projectId);
|
|
105
97
|
const title = args.title.trim();
|
|
106
98
|
const content = args.content.trim().slice(0, CONTENT_MAX);
|
|
107
99
|
if (!title || !content) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"knowledge-base.js","sourceRoot":"","sources":["../../src/tools/knowledge-base.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEjE,MAAM,aAAa,GAAG,GAAG,CAAC;AAC1B,MAAM,WAAW,GAAG,MAAM,CAAC;AAE3B,SAAS,
|
|
1
|
+
{"version":3,"file":"knowledge-base.js","sourceRoot":"","sources":["../../src/tools/knowledge-base.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,13 @@
|
|
|
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
|
+
/** A new brand makes a cached single-brand default stale. */
|
|
5
|
+
export declare function forgetBrands(config: Config): void;
|
|
6
|
+
/**
|
|
7
|
+
* Explicit projectId, then MIGMA_PROJECT_ID, then the account's only brand.
|
|
8
|
+
* Throws one actionable error (the brands to choose from) when that is ambiguous;
|
|
9
|
+
* the MCP SDK returns thrown tool errors as isError results.
|
|
10
|
+
*/
|
|
11
|
+
export declare function resolveProjectId(client: Migma, config: Config, projectId?: string): Promise<string>;
|
|
4
12
|
export declare function registerProjectTools(server: McpServer, client: Migma, config: Config, grantedPermissions?: string[]): void;
|
|
5
13
|
//# sourceMappingURL=projects.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../src/tools/projects.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../src/tools/projects.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAwB,KAAK,EAAE,MAAM,OAAO,CAAC;AAEzD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAsB3C,6DAA6D;AAC7D,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAKjD;AAoBD;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,KAAK,EACb,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,CAuBjB;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,KAAK,EACb,MAAM,EAAE,MAAM,EACd,kBAAkB,CAAC,EAAE,MAAM,EAAE,QAmI9B"}
|
package/build/tools/projects.js
CHANGED
|
@@ -1,7 +1,69 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { canUse } from "../permissions.js";
|
|
3
3
|
import { brandCard, compactProjectList, slimProject } from "./agent-payload.js";
|
|
4
|
-
import {
|
|
4
|
+
import { OPEN_WORLD_DESTRUCTIVE_TOOL, READ_ONLY_TOOL } from "./annotations.js";
|
|
5
|
+
const OBJECT_ID = /^[a-f0-9]{24}$/i;
|
|
6
|
+
const BRAND_LIST_LIMIT = 10;
|
|
7
|
+
const BRAND_CACHE_MS = 30_000;
|
|
8
|
+
// ponytail: per-process map keyed by endpoint + API key, because hosted MCP builds a new server and
|
|
9
|
+
// client per request. Crude size cap; switch to an LRU if many keys are active at once.
|
|
10
|
+
const brandCache = new Map();
|
|
11
|
+
// Bumped when a brand is created, so a list fetched before the import can never refill the cache.
|
|
12
|
+
const brandCacheEpoch = new Map();
|
|
13
|
+
const brandCacheKey = (config) => (config.apiKey ? `${config.baseUrl ?? ""}|${config.apiKey}` : "");
|
|
14
|
+
/** A new brand makes a cached single-brand default stale. */
|
|
15
|
+
export function forgetBrands(config) {
|
|
16
|
+
const key = brandCacheKey(config);
|
|
17
|
+
if (!key)
|
|
18
|
+
return;
|
|
19
|
+
brandCache.delete(key);
|
|
20
|
+
brandCacheEpoch.set(key, (brandCacheEpoch.get(key) ?? 0) + 1);
|
|
21
|
+
}
|
|
22
|
+
async function listBrands(client, config) {
|
|
23
|
+
const key = brandCacheKey(config);
|
|
24
|
+
const hit = key ? brandCache.get(key) : undefined;
|
|
25
|
+
if (hit && hit.expires > Date.now())
|
|
26
|
+
return hit.data;
|
|
27
|
+
const epoch = brandCacheEpoch.get(key) ?? 0;
|
|
28
|
+
const { data, error } = await client.projects.list({ limit: BRAND_LIST_LIMIT });
|
|
29
|
+
if (error || !data) {
|
|
30
|
+
throw new Error(`projectId is required. Brands could not be listed to choose one automatically${error ? ` (${error.message})` : ""}. Pass projectId.`);
|
|
31
|
+
}
|
|
32
|
+
if (key && (brandCacheEpoch.get(key) ?? 0) === epoch) {
|
|
33
|
+
if (brandCache.size >= 1000) {
|
|
34
|
+
brandCache.clear();
|
|
35
|
+
brandCacheEpoch.clear();
|
|
36
|
+
}
|
|
37
|
+
brandCache.set(key, { expires: Date.now() + BRAND_CACHE_MS, data });
|
|
38
|
+
}
|
|
39
|
+
return data;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Explicit projectId, then MIGMA_PROJECT_ID, then the account's only brand.
|
|
43
|
+
* Throws one actionable error (the brands to choose from) when that is ambiguous;
|
|
44
|
+
* the MCP SDK returns thrown tool errors as isError results.
|
|
45
|
+
*/
|
|
46
|
+
export async function resolveProjectId(client, config, projectId) {
|
|
47
|
+
const known = projectId || config.projectId;
|
|
48
|
+
if (known)
|
|
49
|
+
return known;
|
|
50
|
+
const data = await listBrands(client, config);
|
|
51
|
+
const rows = data.projects ?? [];
|
|
52
|
+
const total = data.pagination?.total ?? rows.length;
|
|
53
|
+
const id = (row) => String(row._id ?? row.id ?? "");
|
|
54
|
+
if (total === 1 && rows[0] && id(rows[0]))
|
|
55
|
+
return id(rows[0]);
|
|
56
|
+
if (total === 0) {
|
|
57
|
+
throw new Error("projectId is required, and this account has no brands yet. Import one with migma_import_brand, then pass its projectId.");
|
|
58
|
+
}
|
|
59
|
+
const brands = rows
|
|
60
|
+
.map((row) => `${id(row)} (${[row.name, row.domain].filter(Boolean).join(", ")})`)
|
|
61
|
+
.join("; ");
|
|
62
|
+
const more = total > rows.length
|
|
63
|
+
? `; and ${total - rows.length} more (find them with migma_list_projects search)`
|
|
64
|
+
: "";
|
|
65
|
+
throw new Error(`projectId is required: this account has ${total} brands. Pass projectId for the brand the user means: ${brands}${more}.`);
|
|
66
|
+
}
|
|
5
67
|
export function registerProjectTools(server, client, config, grantedPermissions) {
|
|
6
68
|
if (canUse(grantedPermissions, ["email:read"])) {
|
|
7
69
|
server.registerTool("migma_list_projects", {
|
|
@@ -60,8 +122,8 @@ export function registerProjectTools(server, client, config, grantedPermissions)
|
|
|
60
122
|
if (canUse(grantedPermissions, ["project:write", "email:read"])) {
|
|
61
123
|
server.registerTool("migma_import_brand", {
|
|
62
124
|
title: "Import Brand",
|
|
63
|
-
annotations:
|
|
64
|
-
description: "
|
|
125
|
+
annotations: OPEN_WORLD_DESTRUCTIVE_TOOL,
|
|
126
|
+
description: "Save a new brand from one public website the user is authorized to import. Fetches colors, fonts, logos, and voice; may notify configured webhooks. Needs available brand capacity. Waits for completion and returns projectId and saved details. Each call starts a new import; check migma_list_projects before retrying an uncertain result.",
|
|
65
127
|
inputSchema: z.object({
|
|
66
128
|
urls: z
|
|
67
129
|
.array(z.string().url())
|
|
@@ -73,6 +135,7 @@ export function registerProjectTools(server, client, config, grantedPermissions)
|
|
|
73
135
|
const { data, error } = await client.projects.importAndWait({
|
|
74
136
|
urls: args.urls,
|
|
75
137
|
});
|
|
138
|
+
forgetBrands(config);
|
|
76
139
|
if (error)
|
|
77
140
|
return toolError(error.message);
|
|
78
141
|
const status = (data ?? {});
|
|
@@ -92,10 +155,12 @@ export function registerProjectTools(server, client, config, grantedPermissions)
|
|
|
92
155
|
projectId: z.string().describe("The project ID"),
|
|
93
156
|
segmentId: z
|
|
94
157
|
.string()
|
|
158
|
+
.regex(OBJECT_ID, "segmentId must be a segment id from migma_list_segments.")
|
|
95
159
|
.optional()
|
|
96
160
|
.describe("Restrict the catalog to subscribers in this segment"),
|
|
97
161
|
tag: z
|
|
98
162
|
.string()
|
|
163
|
+
.regex(OBJECT_ID, "tag must be a tag id from migma_list_tags, not the tag name.")
|
|
99
164
|
.optional()
|
|
100
165
|
.describe("Restrict the catalog to subscribers with this tag id"),
|
|
101
166
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projects.js","sourceRoot":"","sources":["../../src/tools/projects.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"projects.js","sourceRoot":"","sources":["../../src/tools/projects.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"segments.d.ts","sourceRoot":"","sources":["../../src/tools/segments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"segments.d.ts","sourceRoot":"","sources":["../../src/tools/segments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAuD3C,QAAA,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAS9B,CAAC;AAEH,KAAK,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,GAAG;IACrE,MAAM,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAC/B,CAAC;AAWF,eAAO,MAAM,oBAAoB,yFAsB/B,CAAC;AAEH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,KAAK,EACb,MAAM,EAAE,MAAM,EACd,kBAAkB,CAAC,EAAE,MAAM,EAAE,QAqF9B"}
|
package/build/tools/segments.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { canUse } from "../permissions.js";
|
|
3
|
+
import { resolveProjectId } from "./projects.js";
|
|
3
4
|
import { DESTRUCTIVE_TOOL, MUTATING_TOOL, READ_ONLY_TOOL } from "./annotations.js";
|
|
4
5
|
// Keep in sync with n/migma-backend/src/validators/audience-filters.schema.ts.
|
|
5
6
|
const fieldFilterSchema = z.object({
|
|
@@ -99,10 +100,7 @@ export function registerSegmentTools(server, client, config, grantedPermissions)
|
|
|
99
100
|
.describe("Project ID. Local stdio uses MIGMA_PROJECT_ID if not provided; hosted remote clients should pass projectId."),
|
|
100
101
|
}),
|
|
101
102
|
}, async (args) => {
|
|
102
|
-
const projectId =
|
|
103
|
-
if (!projectId) {
|
|
104
|
-
return toolError("projectId is required. Provide projectId, or set MIGMA_PROJECT_ID when using local stdio.");
|
|
105
|
-
}
|
|
103
|
+
const projectId = await resolveProjectId(client, config, args.projectId);
|
|
106
104
|
const { data, error } = await client.segments.list(projectId);
|
|
107
105
|
if (error)
|
|
108
106
|
return toolError(error.message);
|
|
@@ -124,10 +122,7 @@ export function registerSegmentTools(server, client, config, grantedPermissions)
|
|
|
124
122
|
.describe("Project ID. Local stdio uses MIGMA_PROJECT_ID if not provided; hosted remote clients should pass projectId."),
|
|
125
123
|
}),
|
|
126
124
|
}, async (args) => {
|
|
127
|
-
const projectId =
|
|
128
|
-
if (!projectId) {
|
|
129
|
-
return toolError("projectId is required. Provide projectId, or set MIGMA_PROJECT_ID when using local stdio.");
|
|
130
|
-
}
|
|
125
|
+
const projectId = await resolveProjectId(client, config, args.projectId);
|
|
131
126
|
const { data, error } = await client.segments.create({
|
|
132
127
|
name: args.name,
|
|
133
128
|
description: args.description,
|
|
@@ -152,10 +147,7 @@ export function registerSegmentTools(server, client, config, grantedPermissions)
|
|
|
152
147
|
.describe("Project ID. Local stdio uses MIGMA_PROJECT_ID if not provided; hosted remote clients should pass projectId."),
|
|
153
148
|
}),
|
|
154
149
|
}, async (args) => {
|
|
155
|
-
const projectId =
|
|
156
|
-
if (!projectId) {
|
|
157
|
-
return toolError("projectId is required. Provide projectId, or set MIGMA_PROJECT_ID when using local stdio.");
|
|
158
|
-
}
|
|
150
|
+
const projectId = await resolveProjectId(client, config, args.projectId);
|
|
159
151
|
const { data, error } = await client.segments.remove(args.id, projectId);
|
|
160
152
|
if (error)
|
|
161
153
|
return toolError(error.message);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"segments.js","sourceRoot":"","sources":["../../src/tools/segments.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"segments.js","sourceRoot":"","sources":["../../src/tools/segments.ts"],"names":[],"mappings":"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"}
|
package/build/tools/send.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { canUse } from "../permissions.js";
|
|
3
|
-
import {
|
|
3
|
+
import { OPEN_WORLD_DESTRUCTIVE_TOOL } from "./annotations.js";
|
|
4
4
|
export function registerSendTools(server, client, config, grantedPermissions) {
|
|
5
5
|
if (canUse(grantedPermissions, ["email:send"])) {
|
|
6
6
|
server.registerTool("migma_send_email", {
|
|
7
7
|
title: "Send Email",
|
|
8
|
-
annotations:
|
|
9
|
-
description: "Send a
|
|
8
|
+
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
10
|
inputSchema: z.object({
|
|
11
11
|
recipientType: z
|
|
12
12
|
.enum(["email", "tag", "segment"])
|
package/build/tools/send.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send.js","sourceRoot":"","sources":["../../src/tools/send.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"send.js","sourceRoot":"","sources":["../../src/tools/send.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tags.d.ts","sourceRoot":"","sources":["../../src/tools/tags.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;
|
|
1
|
+
{"version":3,"file":"tags.d.ts","sourceRoot":"","sources":["../../src/tools/tags.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,gBAAgB,CAC9B,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,KAAK,EACb,MAAM,EAAE,MAAM,EACd,kBAAkB,CAAC,EAAE,MAAM,EAAE,QAqF9B"}
|
package/build/tools/tags.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { canUse } from "../permissions.js";
|
|
3
|
+
import { resolveProjectId } from "./projects.js";
|
|
3
4
|
import { DESTRUCTIVE_TOOL, MUTATING_TOOL, READ_ONLY_TOOL } from "./annotations.js";
|
|
4
5
|
export function registerTagTools(server, client, config, grantedPermissions) {
|
|
5
6
|
if (canUse(grantedPermissions, ["audience:read"])) {
|
|
@@ -14,10 +15,7 @@ export function registerTagTools(server, client, config, grantedPermissions) {
|
|
|
14
15
|
.describe("Project ID. Local stdio uses MIGMA_PROJECT_ID if not provided; hosted remote clients should pass projectId."),
|
|
15
16
|
}),
|
|
16
17
|
}, async (args) => {
|
|
17
|
-
const projectId =
|
|
18
|
-
if (!projectId) {
|
|
19
|
-
return toolError("projectId is required. Provide projectId, or set MIGMA_PROJECT_ID when using local stdio.");
|
|
20
|
-
}
|
|
18
|
+
const projectId = await resolveProjectId(client, config, args.projectId);
|
|
21
19
|
const { data, error } = await client.tags.list({ projectId });
|
|
22
20
|
if (error)
|
|
23
21
|
return toolError(error.message);
|
|
@@ -42,10 +40,7 @@ export function registerTagTools(server, client, config, grantedPermissions) {
|
|
|
42
40
|
.describe("Project ID. Local stdio uses MIGMA_PROJECT_ID if not provided; hosted remote clients should pass projectId."),
|
|
43
41
|
}),
|
|
44
42
|
}, async (args) => {
|
|
45
|
-
const projectId =
|
|
46
|
-
if (!projectId) {
|
|
47
|
-
return toolError("projectId is required. Provide projectId, or set MIGMA_PROJECT_ID when using local stdio.");
|
|
48
|
-
}
|
|
43
|
+
const projectId = await resolveProjectId(client, config, args.projectId);
|
|
49
44
|
const { data, error } = await client.tags.create({
|
|
50
45
|
name: args.name,
|
|
51
46
|
color: args.color,
|
|
@@ -70,10 +65,7 @@ export function registerTagTools(server, client, config, grantedPermissions) {
|
|
|
70
65
|
.describe("Project ID. Local stdio uses MIGMA_PROJECT_ID if not provided; hosted remote clients should pass projectId."),
|
|
71
66
|
}),
|
|
72
67
|
}, async (args) => {
|
|
73
|
-
const projectId =
|
|
74
|
-
if (!projectId) {
|
|
75
|
-
return toolError("projectId is required. Provide projectId, or set MIGMA_PROJECT_ID when using local stdio.");
|
|
76
|
-
}
|
|
68
|
+
const projectId = await resolveProjectId(client, config, args.projectId);
|
|
77
69
|
const { data, error } = await client.tags.remove(args.id, projectId);
|
|
78
70
|
if (error)
|
|
79
71
|
return toolError(error.message);
|
package/build/tools/tags.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tags.js","sourceRoot":"","sources":["../../src/tools/tags.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEnF,MAAM,UAAU,gBAAgB,CAC9B,MAAiB,EACjB,MAAa,EACb,MAAc,EACd,kBAA6B;IAE7B,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC;QAClD,MAAM,CAAC,YAAY,CACjB,iBAAiB,EACjB;YACE,KAAK,EAAE,WAAW;YAClB,WAAW,EAAE,cAAc;YAC3B,WAAW,EAAE,8BAA8B;YAC3C,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,SAAS,EAAE,CAAC;qBACT,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CAAC,6GAA6G,CAAC;aAC3H,CAAC;SACH,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,MAAM,SAAS,GAAG,
|
|
1
|
+
{"version":3,"file":"tags.js","sourceRoot":"","sources":["../../src/tools/tags.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/tools/validate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/tools/validate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AA8DnC,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,KAAK,EACb,kBAAkB,CAAC,EAAE,MAAM,EAAE,QAoE9B"}
|
package/build/tools/validate.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { canUse } from "../permissions.js";
|
|
3
|
-
import { READ_ONLY_TOOL } from "./annotations.js";
|
|
3
|
+
import { OPEN_WORLD_READ_ONLY_TOOL, READ_ONLY_TOOL } from "./annotations.js";
|
|
4
4
|
const validateTarget = {
|
|
5
5
|
emailId: z
|
|
6
6
|
.string()
|
|
@@ -44,14 +44,16 @@ async function resolveValidationTarget(client, args) {
|
|
|
44
44
|
}
|
|
45
45
|
if (args.html)
|
|
46
46
|
return { html: args.html, subject: args.subject };
|
|
47
|
-
return {
|
|
47
|
+
return {
|
|
48
|
+
error: "emailId, conversationId, or html is required. Prefer emailId: take it from migma_generate_email or migma_get_generation_status results (emails[].emailId), or find an existing email with migma_list_emails.",
|
|
49
|
+
};
|
|
48
50
|
}
|
|
49
51
|
export function registerValidateTools(server, client, grantedPermissions) {
|
|
50
52
|
if (canUse(grantedPermissions, ["email:validate"])) {
|
|
51
53
|
server.registerTool("migma_validate_email", {
|
|
52
54
|
title: "Validate Email",
|
|
53
|
-
annotations:
|
|
54
|
-
description: "
|
|
55
|
+
annotations: OPEN_WORLD_READ_ONLY_TOOL,
|
|
56
|
+
description: "Check compatibility, spelling, wording risks, and public links. Link checks request URLs found in the email. Prefer emailId; run when asked or before sending. Check summary for passed, failed, or unavailable; incomplete checks are not a pass. Wording checks do not measure inbox placement or SPF/DKIM.",
|
|
55
57
|
inputSchema: z.object(validateTarget),
|
|
56
58
|
}, async (args) => {
|
|
57
59
|
const target = await resolveValidationTarget(client, args);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/tools/validate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/tools/validate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../src/tools/webhooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../src/tools/webhooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AASnC,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,KAAK,EACb,kBAAkB,CAAC,EAAE,MAAM,EAAE,QAyF9B"}
|
package/build/tools/webhooks.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { canUse } from "../permissions.js";
|
|
3
|
-
import { DESTRUCTIVE_TOOL,
|
|
3
|
+
import { DESTRUCTIVE_TOOL, OPEN_WORLD_DESTRUCTIVE_TOOL, READ_ONLY_TOOL, } from "./annotations.js";
|
|
4
4
|
export function registerWebhookTools(server, client, grantedPermissions) {
|
|
5
5
|
if (canUse(grantedPermissions, ["webhook:read"])) {
|
|
6
6
|
server.registerTool("migma_list_webhooks", {
|
|
@@ -17,8 +17,8 @@ export function registerWebhookTools(server, client, grantedPermissions) {
|
|
|
17
17
|
if (canUse(grantedPermissions, ["webhook:write"])) {
|
|
18
18
|
server.registerTool("migma_create_webhook", {
|
|
19
19
|
title: "Create Webhook",
|
|
20
|
-
annotations:
|
|
21
|
-
description: "
|
|
20
|
+
annotations: OPEN_WORLD_DESTRUCTIVE_TOOL,
|
|
21
|
+
description: "Enable automatic event delivery to the supplied URL. Future matching events POST data there; creation sends no test request. Use migma_test_webhook to send a test.",
|
|
22
22
|
inputSchema: z.object({
|
|
23
23
|
url: z.string().url().describe("Webhook endpoint URL"),
|
|
24
24
|
events: z
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../src/tools/webhooks.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EACL,gBAAgB,EAChB,
|
|
1
|
+
{"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../src/tools/webhooks.ts"],"names":[],"mappings":"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"}
|