@migma/mcp 1.4.2 → 1.6.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/build/index.d.ts +1 -0
- package/build/index.d.ts.map +1 -1
- package/build/index.js +18 -16
- package/build/index.js.map +1 -1
- package/build/prompts/index.d.ts.map +1 -1
- package/build/prompts/index.js +15 -1
- package/build/prompts/index.js.map +1 -1
- package/build/tools/__tests__/catalog.test.js +53 -2
- package/build/tools/__tests__/catalog.test.js.map +1 -1
- package/build/tools/__tests__/email-images.test.js +20 -0
- package/build/tools/__tests__/email-images.test.js.map +1 -1
- package/build/tools/capabilities.d.ts +31 -1
- package/build/tools/capabilities.d.ts.map +1 -1
- package/build/tools/capabilities.js +53 -23
- package/build/tools/capabilities.js.map +1 -1
- package/build/tools/context.d.ts +4 -0
- package/build/tools/context.d.ts.map +1 -0
- package/build/tools/context.js +74 -0
- package/build/tools/context.js.map +1 -0
- package/build/tools/email-images.d.ts.map +1 -1
- package/build/tools/email-images.js +7 -1
- package/build/tools/email-images.js.map +1 -1
- package/build/tools/generate.js +6 -6
- package/build/tools/generate.js.map +1 -1
- package/build/tools/import-html.d.ts +5 -0
- package/build/tools/import-html.d.ts.map +1 -0
- package/build/tools/import-html.js +97 -0
- package/build/tools/import-html.js.map +1 -0
- package/build/tools/projects.d.ts.map +1 -1
- package/build/tools/projects.js +6 -1
- package/build/tools/projects.js.map +1 -1
- package/package.json +2 -2
package/build/index.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ export type CreateMigmaMcpServerOptions = {
|
|
|
9
9
|
permissions?: string[];
|
|
10
10
|
version?: string;
|
|
11
11
|
};
|
|
12
|
+
export declare const MIGMA_SERVER_INSTRUCTIONS: string;
|
|
12
13
|
export declare function createMigmaMcpServer(options?: CreateMigmaMcpServerOptions): McpServer;
|
|
13
14
|
export declare function createMcpServer(config: Config): McpServer;
|
|
14
15
|
export declare function createSandboxServer(): McpServer;
|
package/build/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAuBnC,MAAM,MAAM,2BAA2B,GAAG;IACxC,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACzB,MAAM,CAAC,EAAE,KAAK,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,KAAK,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,yBAAyB,QAW3B,CAAC;AAqBZ,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,2BAAgC,GAAG,SAAS,CAqCzF;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAEzD;AAGD,wBAAgB,mBAAmB,cAOlC"}
|
package/build/index.js
CHANGED
|
@@ -6,8 +6,10 @@ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"
|
|
|
6
6
|
import { loadConfig } from "./config.js";
|
|
7
7
|
import { getClient } from "./client.js";
|
|
8
8
|
import { registerProjectTools } from "./tools/projects.js";
|
|
9
|
+
import { registerContextTools } from "./tools/context.js";
|
|
9
10
|
import { registerKnowledgeBaseTools } from "./tools/knowledge-base.js";
|
|
10
11
|
import { registerGenerateTools } from "./tools/generate.js";
|
|
12
|
+
import { registerImportHtmlTools } from "./tools/import-html.js";
|
|
11
13
|
import { registerSendTools } from "./tools/send.js";
|
|
12
14
|
import { registerValidateTools } from "./tools/validate.js";
|
|
13
15
|
import { registerExportTools } from "./tools/export.js";
|
|
@@ -21,6 +23,18 @@ import { registerCampaignTools } from "./tools/campaigns.js";
|
|
|
21
23
|
import { registerMetricsTools } from "./tools/metrics.js";
|
|
22
24
|
import { applyToolReviewMetadata, registerCapabilitiesTool, } from "./tools/capabilities.js";
|
|
23
25
|
import { registerMigmaPrompts } from "./prompts/index.js";
|
|
26
|
+
export const MIGMA_SERVER_INSTRUCTIONS = [
|
|
27
|
+
"Migma is the user's email person: it designs branded emails, sends them to an audience, and reports what happened. Suggest and act. Reply short.",
|
|
28
|
+
"Start with migma_get_context: workspaces, brands, plan, credits, sending domains, and suggested next actions. Offer the one or two most useful — users rarely know Migma can buy or verify domains, import brands, or read campaign stats until you tell them.",
|
|
29
|
+
"Pick the tool by the job. New email or series from a prompt: migma_generate_email — one call makes the whole series, pass count (max 12) and name each email's job in the prompt. Existing HTML or .eml to convert: migma_import_html. A lasting brand fact the user shares: migma_add_knowledge_base, no list-first. Contact CSV: one migma_create_contact_import call with csvContent plus a tag for the list name — no spreadsheet validation, no JSON conversion.",
|
|
30
|
+
"Images: pass every image the user attached or pointed at through the structured images argument — product shots to show in the email, and screenshots of emails or pages to match as design reference. When the user names a style, brand, or site like reallygoodemails.com, fetch the actual screenshot URL and pass it (up to 5 public HTTPS URLs); say in the prompt which are content and which are reference. A URL that only appears in prompt text is not an image input. Adding images later needs a new generation — migma_edit_email changes copy and layout only.",
|
|
31
|
+
"Design flow: resolve the brand (migma_list_projects / migma_get_project) → migma_generate_email once → poll migma_get_generation_status → show every preview image and appUrl the moment they land, before validate, edit, or fact-checking. Then verify the facts and reference assets you promised. Run migma_validate_* when the user asks or as the last step before a send.",
|
|
32
|
+
"Sending: email:send covers test and direct sends; campaign:write covers creating, sending, and scheduling campaigns. Confirm with the user in the chat before anything reaches a real inbox, showing audience, count, sender, subject, and preview.",
|
|
33
|
+
"No verified sending domain? Offer migma_create_managed_domain — an instant address like hello@company.migma.email with zero DNS — or migma_setup_domain for a domain the user owns, or migma_search_buyable_domains → migma_buy_domain (show checkoutUrl; user pays in the browser) → poll migma_get_domain_purchases → migma_setup_domain when active.",
|
|
34
|
+
"Credits or plan errors (402/429): migma_get_credits, then migma_get_upgrade_link and show the URL — the user pays in their browser.",
|
|
35
|
+
"DNS on Migma-bought domains: Migma hosts the zone and writes all email sending records itself. migma_add_dns_record / migma_remove_dns_record are for everything else (Google Workspace MX, verification TXT, subdomains); root and www stay reserved for forwarding.",
|
|
36
|
+
"Run one write channel per task. If the user was working in the browser, catch up with migma_list_emails and continue from those drafts instead of generating a parallel set. Prefer tool image blocks over inventing markdown CDN links.",
|
|
37
|
+
].join(" ");
|
|
24
38
|
function completeConfig(config) {
|
|
25
39
|
return {
|
|
26
40
|
apiKey: config?.apiKey ?? "",
|
|
@@ -46,26 +60,14 @@ export function createMigmaMcpServer(options = {}) {
|
|
|
46
60
|
name: "migma",
|
|
47
61
|
version: options.version || version,
|
|
48
62
|
}, {
|
|
49
|
-
instructions:
|
|
50
|
-
"Migma designs emails, sends campaigns to audiences, and returns campaign stats.",
|
|
51
|
-
"Auth is browser OAuth on hosted MCP — never ask the user to paste an API key.",
|
|
52
|
-
"When the user asks to create, design, write, compose, draft, or generate emails or an email series, load migma_generate_email by exact name (title: Create / Generate Email or Series). Do not pick Create Campaign, Create Contact Import, or DNS tools for that job.",
|
|
53
|
-
"Several emails or a series: one migma_generate_email call with count (max 12) and distinct roles in the prompt. Never one generate call per email.",
|
|
54
|
-
"Design flow: list/get project → migma_generate_email (once) → poll migma_get_generation_status → immediately show the returned preview images and each appUrl.",
|
|
55
|
-
"Do not call validate or edit tools before that first show. Skip field catalog unless personalization variables are needed.",
|
|
56
|
-
"Run migma_validate_* only when the user asks for checks, or as a last step before send.",
|
|
57
|
-
"Ask before any live send. Prefer tool image blocks over inventing markdown CDN links.",
|
|
58
|
-
"When the user shares lasting brand facts, call migma_add_knowledge_base (no list-first).",
|
|
59
|
-
"CSV audience import: call migma_create_contact_import once with csvContent + optional tags/tag (list name). Skip spreadsheet validation, skip JSON conversion, skip migma_bulk_import_contacts for CSV. columnMap is optional when headers look like email/first_name/last_name.",
|
|
60
|
-
"Out of credits or plan errors (402/429): call migma_get_credits, then offer migma_get_upgrade_link and show the URL — the user pays in their browser, never you.",
|
|
61
|
-
"Domain buying: migma_search_buyable_domains → migma_buy_domain (show checkoutUrl; needs a paid plan — offer the upgrade link if not) → after payment poll migma_get_domain_purchases → when active, migma_setup_domain.",
|
|
62
|
-
"DNS on bought domains: Migma hosts the zone and email sending records are automatic. For extra records (Google Workspace MX, verification TXT, pointing a subdomain) use migma_list_dns_records / migma_add_dns_record / migma_remove_dns_record. Root and www are reserved for domain forwarding.",
|
|
63
|
-
].join(" "),
|
|
63
|
+
instructions: MIGMA_SERVER_INSTRUCTIONS,
|
|
64
64
|
});
|
|
65
65
|
applyToolReviewMetadata(server);
|
|
66
66
|
registerProjectTools(server, lazyClient, config, permissions);
|
|
67
|
+
registerContextTools(server, lazyClient, permissions);
|
|
67
68
|
registerKnowledgeBaseTools(server, lazyClient, config, permissions);
|
|
68
69
|
registerGenerateTools(server, lazyClient, config, permissions);
|
|
70
|
+
registerImportHtmlTools(server, lazyClient, config, permissions);
|
|
69
71
|
registerSendTools(server, lazyClient, config, permissions);
|
|
70
72
|
registerValidateTools(server, lazyClient, permissions);
|
|
71
73
|
registerExportTools(server, lazyClient, permissions);
|
|
@@ -79,7 +81,7 @@ export function createMigmaMcpServer(options = {}) {
|
|
|
79
81
|
registerMetricsTools(server, lazyClient, permissions);
|
|
80
82
|
registerMigmaPrompts(server);
|
|
81
83
|
// Register last so the catalog reflects every tool above it.
|
|
82
|
-
registerCapabilitiesTool(server);
|
|
84
|
+
registerCapabilitiesTool(server, permissions);
|
|
83
85
|
return server;
|
|
84
86
|
}
|
|
85
87
|
export function createMcpServer(config) {
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EACL,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAU1D,SAAS,cAAc,CAAC,MAAwB;IAC9C,OAAO;QACL,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,EAAE;QAC5B,SAAS,EAAE,MAAM,EAAE,SAAS;QAC5B,OAAO,EAAE,MAAM,EAAE,OAAO;KACzB,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAc,EAAE,aAA2B;IACnE,MAAM,UAAU,GAAG,IAAI,KAAK,CAAC,EAAW,EAAE;QACxC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ;YACzB,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACnE,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC7C,CAAC;KACF,CAAC,CAAC;IAEH,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,UAAuC,EAAE;IAC5E,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,IAAI,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACjF,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAChC,MAAM,EAAE,OAAO,EAAE,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,iBAAiB,CAAwB,CAAC;IAC7F,MAAM,MAAM,GAAG,IAAI,SAAS,CAC1B;QACE,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,OAAO;KACpC,EACD;QACE,YAAY,EAAE
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,QAAQ,EAuD/B,CAAC;AAmBF,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,QAcrD"}
|
package/build/prompts/index.js
CHANGED
|
@@ -4,6 +4,20 @@
|
|
|
4
4
|
* discover them without fetching every prompt.
|
|
5
5
|
*/
|
|
6
6
|
export const WORKFLOWS = [
|
|
7
|
+
{
|
|
8
|
+
name: "research_and_create_email_series",
|
|
9
|
+
summary: "Turn verified research and source images into one grounded email or series, then prove the requested facts and assets made it into the drafts.",
|
|
10
|
+
steps: [
|
|
11
|
+
"Choose one write channel for this task. If browser or REST generation already started, stop or await it and list existing drafts before using MCP.",
|
|
12
|
+
"migma_get_capabilities — confirm available tools and granted scopes.",
|
|
13
|
+
"migma_list_projects + migma_get_project — select and verify the exact brand before creating anything.",
|
|
14
|
+
"Outside Migma, research current primary sources. Build a dated checklist of exact facts/features and collect up to 5 public HTTPS image URLs. Do not treat images as factual sources.",
|
|
15
|
+
"migma_generate_email — one call with count, distinct email roles, the complete required-fact checklist in prompt, structured images, and one stable idempotency_key. URLs only mentioned in prompt text are not image inputs.",
|
|
16
|
+
"migma_get_generation_status — poll until completed, then immediately show every preview image and appUrl before editing or validating.",
|
|
17
|
+
"After the first show, verify each requested fact in the email content and visually inspect previews for expected source images. Do not claim success for anything not checked.",
|
|
18
|
+
"migma_edit_email — use targeted edits only for text/content omissions. Adding structured source images requires a new generation and creates replacement drafts.",
|
|
19
|
+
],
|
|
20
|
+
},
|
|
7
21
|
{
|
|
8
22
|
name: "launch_email_campaign",
|
|
9
23
|
summary: "Generate an email, test it, and send it as a campaign to a tag or segment, then read the results.",
|
|
@@ -14,7 +28,7 @@ export const WORKFLOWS = [
|
|
|
14
28
|
"migma_send_test_email — only after the user has seen the images and asks to test.",
|
|
15
29
|
"migma_list_domains + migma_list_segments / migma_list_tags — pick the sender and audience.",
|
|
16
30
|
"migma_create_campaign — create a draft campaign from the generated email.",
|
|
17
|
-
"migma_send_campaign —
|
|
31
|
+
"migma_send_campaign — only after explicit user approval of audience, count, sender, subject, timing, and final preview; pass idempotency_key for safe retries.",
|
|
18
32
|
"migma_get_campaign_stats — read delivery and engagement metrics.",
|
|
19
33
|
],
|
|
20
34
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAQA;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAe;IACnC;QACE,IAAI,EAAE,uBAAuB;QAC7B,OAAO,EACL,mGAAmG;QACrG,KAAK,EAAE;YACL,4EAA4E;YAC5E,gGAAgG;YAChG,mKAAmK;YACnK,mFAAmF;YACnF,4FAA4F;YAC5F,2EAA2E;YAC3E,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAQA;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAe;IACnC;QACE,IAAI,EAAE,kCAAkC;QACxC,OAAO,EACL,gJAAgJ;QAClJ,KAAK,EAAE;YACL,oJAAoJ;YACpJ,sEAAsE;YACtE,uGAAuG;YACvG,uLAAuL;YACvL,+NAA+N;YAC/N,wIAAwI;YACxI,gLAAgL;YAChL,kKAAkK;SACnK;KACF;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,OAAO,EACL,mGAAmG;QACrG,KAAK,EAAE;YACL,4EAA4E;YAC5E,gGAAgG;YAChG,mKAAmK;YACnK,mFAAmF;YACnF,4FAA4F;YAC5F,2EAA2E;YAC3E,gKAAgK;YAChK,kEAAkE;SACnE;KACF;IACD;QACE,IAAI,EAAE,wBAAwB;QAC9B,OAAO,EACL,+FAA+F;QACjG,KAAK,EAAE;YACL,mGAAmG;YACnG,wEAAwE;YACxE,gJAAgJ;YAChJ,sEAAsE;YACtE,oFAAoF;YACpF,uDAAuD;SACxD;KACF;IACD;QACE,IAAI,EAAE,2BAA2B;QACjC,OAAO,EACL,4EAA4E;QAC9E,KAAK,EAAE;YACL,sEAAsE;YACtE,2EAA2E;YAC3E,gJAAgJ;YAChJ,mFAAmF;SACpF;KACF;CACF,CAAC;AAEF,SAAS,eAAe,CAAC,QAAkB;IACzC,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK;SAC7B,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;SACrC,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO;QACL,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,MAAe;gBACrB,OAAO,EAAE;oBACP,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,+BAA+B,QAAQ,CAAC,IAAI,eAAe,QAAQ,CAAC,OAAO,mCAAmC,SAAS,uIAAuI;iBACrQ;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAAiB;IACpD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,CAAC,cAAc,CACnB,QAAQ,CAAC,IAAI,EACb;YACE,KAAK,EAAE,QAAQ,CAAC,IAAI;iBACjB,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;iBAClD,IAAI,CAAC,GAAG,CAAC;YACZ,WAAW,EAAE,QAAQ,CAAC,OAAO;SAC9B,EACD,GAAG,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,CAChC,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import assert from "node:assert/strict";
|
|
2
2
|
import test from "node:test";
|
|
3
|
-
import { createMigmaMcpServer } from "../../index.js";
|
|
4
|
-
import {
|
|
3
|
+
import { createMigmaMcpServer, MIGMA_SERVER_INSTRUCTIONS } from "../../index.js";
|
|
4
|
+
import { WORKFLOWS } from "../../prompts/index.js";
|
|
5
|
+
import { buildCapabilitiesPayload, getToolRequiredScopes, TOOL_CATALOG, } from "../capabilities.js";
|
|
5
6
|
function registeredTools(permissions) {
|
|
6
7
|
const server = createMigmaMcpServer({
|
|
7
8
|
config: { apiKey: "sk_live_test" },
|
|
@@ -57,9 +58,57 @@ test("generate and capabilities copy match create/design/write queries", () => {
|
|
|
57
58
|
assert.match(generate.description ?? "", /One call/i);
|
|
58
59
|
assert.match(generate.description ?? "", /count/i);
|
|
59
60
|
assert.match(generate.description ?? "", /Never call this tool once per email/);
|
|
61
|
+
assert.match(generate.description ?? "", /URLs mentioned only in prompt text are not image inputs/);
|
|
60
62
|
assert.match(registered.migma_get_capabilities.description ?? "", /migma_generate_email/);
|
|
63
|
+
assert.match(registered.migma_get_capabilities.description ?? "", /migma_import_html/);
|
|
64
|
+
const importHtml = registered.migma_import_html;
|
|
65
|
+
assert.match(importHtml.title ?? "", /Import/i);
|
|
66
|
+
assert.match(importHtml.title ?? "", /HTML/i);
|
|
67
|
+
assert.match(importHtml.description ?? "", /html/i);
|
|
68
|
+
assert.match(importHtml.description ?? "", /migma_generate_email/);
|
|
61
69
|
assert.doesNotMatch(registered.migma_create_campaign.description ?? "", /^Create a campaign from a generated email/);
|
|
62
70
|
});
|
|
71
|
+
test("generate accepts at most five structured source images", () => {
|
|
72
|
+
const generate = registeredTools().migma_generate_email;
|
|
73
|
+
const base = {
|
|
74
|
+
projectId: "project-1",
|
|
75
|
+
prompt: "Create one launch email",
|
|
76
|
+
};
|
|
77
|
+
const five = Array.from({ length: 5 }, (_, i) => `https://example.com/${i}.png`);
|
|
78
|
+
const six = [...five, "https://example.com/5.png"];
|
|
79
|
+
assert.equal(generate.inputSchema?.safeParse({ ...base, images: five }).success, true);
|
|
80
|
+
assert.equal(generate.inputSchema?.safeParse({ ...base, images: six }).success, false);
|
|
81
|
+
});
|
|
82
|
+
test("server instructions pin context-first, channel, source, and permission truth", () => {
|
|
83
|
+
assert.match(MIGMA_SERVER_INSTRUCTIONS, /migma_get_context/);
|
|
84
|
+
assert.match(MIGMA_SERVER_INSTRUCTIONS, /Suggest and act/);
|
|
85
|
+
assert.match(MIGMA_SERVER_INSTRUCTIONS, /one write channel/i);
|
|
86
|
+
assert.match(MIGMA_SERVER_INSTRUCTIONS, /structured images argument/);
|
|
87
|
+
assert.match(MIGMA_SERVER_INSTRUCTIONS, /reallygoodemails\.com/);
|
|
88
|
+
assert.match(MIGMA_SERVER_INSTRUCTIONS, /campaign:write covers creating, sending, and scheduling/);
|
|
89
|
+
});
|
|
90
|
+
test("research workflow uses one generation and verifies facts and assets", () => {
|
|
91
|
+
const workflow = WORKFLOWS.find((entry) => entry.name === "research_and_create_email_series");
|
|
92
|
+
assert.ok(workflow);
|
|
93
|
+
const steps = workflow.steps.join(" ");
|
|
94
|
+
assert.match(steps, /one call/i);
|
|
95
|
+
assert.match(steps, /structured images/);
|
|
96
|
+
assert.match(steps, /verify each requested fact/);
|
|
97
|
+
assert.match(steps, /one write channel/i);
|
|
98
|
+
});
|
|
99
|
+
test("capabilities expose only tools and workflows allowed by granted scopes", () => {
|
|
100
|
+
const payload = buildCapabilitiesPayload("test", ["email:read", "email:write"]);
|
|
101
|
+
const names = payload.tools.map((entry) => entry.name);
|
|
102
|
+
const workflowNames = payload.workflows.map((entry) => entry.name);
|
|
103
|
+
assert.equal(names.includes("migma_generate_email"), true);
|
|
104
|
+
assert.equal(names.includes("migma_send_email"), false);
|
|
105
|
+
assert.equal(names.includes("migma_send_campaign"), false);
|
|
106
|
+
assert.equal(workflowNames.includes("research_and_create_email_series"), true);
|
|
107
|
+
assert.equal(workflowNames.includes("launch_email_campaign"), false);
|
|
108
|
+
assert.equal(payload.deliveryAccess.directAndTestEmail, false);
|
|
109
|
+
assert.equal(payload.deliveryAccess.campaignCreateSendAndSchedule, false);
|
|
110
|
+
assert.match(payload.deliveryAccess.warning, /campaign:write is not no-send/);
|
|
111
|
+
});
|
|
63
112
|
test("tool descriptions stay focused on tool behavior", () => {
|
|
64
113
|
const registered = registeredTools();
|
|
65
114
|
for (const entry of TOOL_CATALOG) {
|
|
@@ -80,6 +129,7 @@ test("every tool advertises its OAuth policy", () => {
|
|
|
80
129
|
}
|
|
81
130
|
assert.deepEqual(registered.migma_list_emails._meta?.securitySchemes?.[0]?.scopes, ["email:read"]);
|
|
82
131
|
assert.deepEqual(registered.migma_generate_email._meta?.securitySchemes?.[0]?.scopes, ["email:write", "email:read"]);
|
|
132
|
+
assert.deepEqual(registered.migma_import_html._meta?.securitySchemes?.[0]?.scopes, ["email:write", "email:read"]);
|
|
83
133
|
assert.deepEqual(registered.migma_send_email._meta?.securitySchemes?.[0]?.scopes, ["email:send"]);
|
|
84
134
|
assert.deepEqual(registered.migma_list_contacts._meta?.securitySchemes?.[0]?.scopes, ["audience:read"]);
|
|
85
135
|
assert.deepEqual(registered.migma_get_credits._meta?.securitySchemes?.[0]?.scopes, ["billing:read"]);
|
|
@@ -115,6 +165,7 @@ test("external sends and destructive actions are explicitly marked", () => {
|
|
|
115
165
|
assert.equal(registered.migma_get_credits.annotations?.openWorldHint, false);
|
|
116
166
|
assert.equal(registered.migma_import_brand.annotations?.openWorldHint, false);
|
|
117
167
|
assert.equal(registered.migma_generate_email.annotations?.openWorldHint, false);
|
|
168
|
+
assert.equal(registered.migma_import_html.annotations?.openWorldHint, false);
|
|
118
169
|
assert.equal(registered.migma_edit_email.annotations?.openWorldHint, false);
|
|
119
170
|
assert.equal(registered.migma_verify_domain.annotations?.openWorldHint, false);
|
|
120
171
|
assert.equal(registered.migma_create_webhook.annotations?.openWorldHint, false);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.test.js","sourceRoot":"","sources":["../../../src/tools/__tests__/catalog.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"catalog.test.js","sourceRoot":"","sources":["../../../src/tools/__tests__/catalog.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -60,6 +60,11 @@ test("guidance tells the agent to show images or poll", () => {
|
|
|
60
60
|
assert.match(screenshotGuidance([], 0, { status: "completed" }), /still rendering/);
|
|
61
61
|
assert.equal(screenshotGuidance([], 0, { status: "pending" }), "");
|
|
62
62
|
assert.match(screenshotGuidance([], 0, { screenshotStatus: "pending" }), /still rendering/);
|
|
63
|
+
assert.match(screenshotGuidance([{ url: "https://cdn.migma.ai/a.png", label: "A" }], 0, { status: "completed" }), /no preview image could be attached/);
|
|
64
|
+
assert.match(screenshotGuidance([
|
|
65
|
+
{ url: "https://cdn.migma.ai/a.png", label: "A" },
|
|
66
|
+
{ url: "https://cdn.migma.ai/b.png", label: "B" },
|
|
67
|
+
], 1, { status: "completed" }), /visual verification is incomplete/);
|
|
63
68
|
});
|
|
64
69
|
test("fetchEmailImage skips disallowed hosts and oversized bodies", async () => {
|
|
65
70
|
const blocked = await fetchEmailImage("https://evil.example/x.png");
|
|
@@ -91,4 +96,19 @@ test("toolResultWithImages puts image content before JSON", async () => {
|
|
|
91
96
|
assert.equal(last?.type, "text");
|
|
92
97
|
assert.match(last.text, /"subject": "Hi"/);
|
|
93
98
|
});
|
|
99
|
+
test("toolResultWithImages reports failed preview attachment", async () => {
|
|
100
|
+
const result = await toolResultWithImages({
|
|
101
|
+
status: "completed",
|
|
102
|
+
subject: "Hi",
|
|
103
|
+
appUrl: "https://migma.ai/chat/example",
|
|
104
|
+
screenshotUrl: "https://cdn.migma.ai/a.png",
|
|
105
|
+
}, "detail", async () => ({
|
|
106
|
+
ok: false,
|
|
107
|
+
headers: { get: () => null },
|
|
108
|
+
arrayBuffer: async () => new ArrayBuffer(0),
|
|
109
|
+
}));
|
|
110
|
+
assert.equal(result.content[0]?.type, "text");
|
|
111
|
+
assert.match(result.content[0].text, /visual verification is incomplete/);
|
|
112
|
+
assert.equal(result.content.some((item) => item.type === "image"), false);
|
|
113
|
+
});
|
|
94
114
|
//# sourceMappingURL=email-images.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email-images.test.js","sourceRoot":"","sources":["../../../src/tools/__tests__/email-images.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"email-images.test.js","sourceRoot":"","sources":["../../../src/tools/__tests__/email-images.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EACL,qBAAqB,EACrB,eAAe,EACf,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAE5B,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;IAC/D,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,+BAA+B,CAAC,EAAE,IAAI,CAAC,CAAC;IAC5E,MAAM,CAAC,KAAK,CACV,sBAAsB,CAAC,kDAAkD,CAAC,EAC1E,IAAI,CACL,CAAC;IACF,MAAM,CAAC,KAAK,CACV,sBAAsB,CAAC,gDAAgD,CAAC,EACxE,IAAI,CACL,CAAC;IACF,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,8BAA8B,CAAC,EAAE,KAAK,CAAC,CAAC;IAC5E,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,+BAA+B,CAAC,EAAE,KAAK,CAAC,CAAC;IAC7E,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,4BAA4B,CAAC,EAAE,KAAK,CAAC,CAAC;IAC1E,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;AAC3D,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE;IACtD,MAAM,IAAI,GAAG,qBAAqB,CAChC;QACE,MAAM,EAAE;YACN;gBACE,KAAK,EAAE,SAAS;gBAChB,OAAO,EAAE,IAAI;gBACb,aAAa,EAAE,4BAA4B;aAC5C;YACD,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE;YACzC;gBACE,KAAK,EAAE,SAAS;gBAChB,aAAa,EAAE,4BAA4B;aAC5C;SACF;KACF,EACD,MAAM,CACP,CAAC;IACF,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE;QACrB,EAAE,GAAG,EAAE,4BAA4B,EAAE,KAAK,EAAE,IAAI,EAAE;KACnD,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,qBAAqB,CAClC;QACE,MAAM,EAAE,WAAW;QACnB,MAAM,EAAE;YACN,MAAM,EAAE;gBACN;oBACE,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,CAAC;oBACP,aAAa,EAAE,8BAA8B;iBAC9C;gBACD;oBACE,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,CAAC;oBACP,YAAY,EAAE,8BAA8B;iBAC7C;aACF;SACF;KACF,EACD,QAAQ,CACT,CAAC;IACF,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC/B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAEtC,MAAM,GAAG,GAAG,qBAAqB,CAC/B;QACE,OAAO,EAAE,MAAM;QACf,aAAa,EAAE,+BAA+B;KAC/C,EACD,QAAQ,CACT,CAAC;IACF,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE;QACpB,EAAE,GAAG,EAAE,+BAA+B,EAAE,KAAK,EAAE,MAAM,EAAE;KACxD,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iDAAiD,EAAE,GAAG,EAAE;IAC3D,MAAM,CAAC,KAAK,CACV,kBAAkB,CAChB,CAAC,EAAE,GAAG,EAAE,4BAA4B,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EACnD,CAAC,EACD,EAAE,CACH,EACD,iCAAiC,CAClC,CAAC;IACF,MAAM,CAAC,KAAK,CACV,kBAAkB,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,EAClD,iBAAiB,CAClB,CAAC;IACF,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnE,MAAM,CAAC,KAAK,CACV,kBAAkB,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC,EAC1D,iBAAiB,CAClB,CAAC;IACF,MAAM,CAAC,KAAK,CACV,kBAAkB,CAChB,CAAC,EAAE,GAAG,EAAE,4BAA4B,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EACnD,CAAC,EACD,EAAE,MAAM,EAAE,WAAW,EAAE,CACxB,EACD,oCAAoC,CACrC,CAAC;IACF,MAAM,CAAC,KAAK,CACV,kBAAkB,CAChB;QACE,EAAE,GAAG,EAAE,4BAA4B,EAAE,KAAK,EAAE,GAAG,EAAE;QACjD,EAAE,GAAG,EAAE,4BAA4B,EAAE,KAAK,EAAE,GAAG,EAAE;KAClD,EACD,CAAC,EACD,EAAE,MAAM,EAAE,WAAW,EAAE,CACxB,EACD,mCAAmC,CACpC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;IAC7E,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,4BAA4B,CAAC,CAAC;IACpE,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAE5B,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;QAC7E,EAAE,EAAE,IAAI;QACR,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE;QACnC,WAAW,EAAE,KAAK,IAAI,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;KAC3F,CAAC,CAAC,CAAC;IACJ,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACnC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC3C,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;AACpD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;IACrE,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,MAAM,GAAG,MAAM,oBAAoB,CACvC;QACE,OAAO,EAAE,IAAI;QACb,aAAa,EAAE,4BAA4B;KAC5C,EACD,QAAQ,EACR,KAAK,IAAI,EAAE,CAAC,CAAC;QACX,EAAE,EAAE,IAAI;QACR,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE;QACnC,WAAW,EAAE,KAAK,IAAI,EAAE,CACtB,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;KACpE,CAAC,CACH,CAAC;IACF,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9C,MAAM,CAAC,KAAK,CACT,MAAM,CAAC,OAAO,CAAC,CAAC,CAAsB,CAAC,IAAI,EAC5C,iCAAiC,CAClC,CAAC;IACF,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACvD,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,CAAC,KAAK,CAAE,IAAyB,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;AACnE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;IACxE,MAAM,MAAM,GAAG,MAAM,oBAAoB,CACvC;QACE,MAAM,EAAE,WAAW;QACnB,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,+BAA+B;QACvC,aAAa,EAAE,4BAA4B;KAC5C,EACD,QAAQ,EACR,KAAK,IAAI,EAAE,CAAC,CAAC;QACX,EAAE,EAAE,KAAK;QACT,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE;QAC5B,WAAW,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC;KAC5C,CAAC,CACH,CAAC;IACF,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9C,MAAM,CAAC,KAAK,CACT,MAAM,CAAC,OAAO,CAAC,CAAC,CAAsB,CAAC,IAAI,EAC5C,mCAAmC,CACpC,CAAC;IACF,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC,CAAC,CAAC"}
|
|
@@ -27,5 +27,35 @@ export declare function getToolRequiredScopes(name: string): string[];
|
|
|
27
27
|
export declare function getToolSecuritySchemes(name: string): OAuthSecurityScheme[];
|
|
28
28
|
/** Prefer explicit per-tool annotations; fall back to catalog. Always attach OAuth scopes. */
|
|
29
29
|
export declare function applyToolReviewMetadata(server: McpServer): void;
|
|
30
|
-
export declare function
|
|
30
|
+
export declare function buildCapabilitiesPayload(version: string, grantedPermissions?: string[]): {
|
|
31
|
+
server: string;
|
|
32
|
+
version: string;
|
|
33
|
+
grantedScopes: string[] | null;
|
|
34
|
+
voice: string;
|
|
35
|
+
deliveryAccess: {
|
|
36
|
+
directAndTestEmail: boolean;
|
|
37
|
+
campaignCreateSendAndSchedule: boolean;
|
|
38
|
+
warning: string;
|
|
39
|
+
};
|
|
40
|
+
channelRule: string;
|
|
41
|
+
designFlow: string;
|
|
42
|
+
knowledgeBase: string;
|
|
43
|
+
brandScoping: string;
|
|
44
|
+
emailsVsCampaigns: string;
|
|
45
|
+
idempotency: {
|
|
46
|
+
header: string;
|
|
47
|
+
maxLength: number;
|
|
48
|
+
ttlHours: number;
|
|
49
|
+
conflictCode: string;
|
|
50
|
+
};
|
|
51
|
+
tools: ToolCatalogEntry[];
|
|
52
|
+
unavailableTools: {
|
|
53
|
+
name: string;
|
|
54
|
+
requiredScopes: string[];
|
|
55
|
+
}[];
|
|
56
|
+
workflows: import("../prompts/index.js").Workflow[];
|
|
57
|
+
errors: string;
|
|
58
|
+
docs: string;
|
|
59
|
+
};
|
|
60
|
+
export declare function registerCapabilitiesTool(server: McpServer, grantedPermissions?: string[]): void;
|
|
31
61
|
//# sourceMappingURL=capabilities.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../src/tools/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAMzE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAiCD;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,gBAAgB,
|
|
1
|
+
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../src/tools/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAMzE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAiCD;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,gBAAgB,EA8F1C,CAAC;AAEF,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,CAa5E;AAeD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAmC5D;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,EAAE,CAE1E;AAED,8FAA8F;AAC9F,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA0B/D;AAWD,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,MAAM,EACf,kBAAkB,CAAC,EAAE,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmD9B;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,SAAS,EACjB,kBAAkB,CAAC,EAAE,MAAM,EAAE,QAyB9B"}
|
|
@@ -38,7 +38,8 @@ const DESTRUCTIVE_TOOL_NAMES = new Set([
|
|
|
38
38
|
*/
|
|
39
39
|
export const TOOL_CATALOG = [
|
|
40
40
|
// Projects / brands
|
|
41
|
-
{ name: "
|
|
41
|
+
{ name: "migma_get_context", domain: "projects", summary: "Account snapshot in one call: workspaces, brand count, plan and credits, sending domains, and suggested next actions.", write: false, idempotent: false },
|
|
42
|
+
{ name: "migma_list_projects", domain: "projects", summary: "List brands as compact id/name/domain rows. Pass search to find a name, or organizationId to scope to a workspace.", write: false, idempotent: false },
|
|
42
43
|
{ name: "migma_get_project", domain: "projects", summary: "Get brand colors, fonts, logos, and voice.", write: false, idempotent: false },
|
|
43
44
|
{ name: "migma_import_brand", domain: "projects", summary: "Import a brand from website URLs and poll until the import completes.", write: true, idempotent: false },
|
|
44
45
|
{ name: "migma_get_field_catalog", domain: "projects", summary: "List subscriber fields, fill rates, and example values for template variables.", write: false, idempotent: false },
|
|
@@ -46,6 +47,7 @@ export const TOOL_CATALOG = [
|
|
|
46
47
|
{ name: "migma_add_knowledge_base", domain: "knowledge", summary: "Append one lasting brand fact. No list-first required.", write: true, idempotent: false },
|
|
47
48
|
// Email generation
|
|
48
49
|
{ name: "migma_generate_email", domain: "emails", summary: "Create, design, write, or generate one email or a series in a single call (pass count, max 12). Optional images, referenceId, idempotency_key. Returns conversationId. Poll status.", write: true, idempotent: true },
|
|
50
|
+
{ name: "migma_import_html", domain: "emails", summary: "Import or convert existing HTML / .eml into editable emails (optional instruction). One call, max 12 files. Returns conversationId. Poll status.", write: true, idempotent: true },
|
|
49
51
|
{ name: "migma_get_generation_status", domain: "emails", summary: "Poll a generation. Returns preview images, appUrl, screenshotStatus. HTML off by default.", write: false, idempotent: false },
|
|
50
52
|
{ name: "migma_list_emails", domain: "emails", summary: "List generated email designs with preview images and appUrl.", write: false, idempotent: false },
|
|
51
53
|
{ name: "migma_send_test_email", domain: "emails", summary: "Send a test email for a generated email id or single-email conversation.", write: true, idempotent: false },
|
|
@@ -115,7 +117,7 @@ export const TOOL_CATALOG = [
|
|
|
115
117
|
{ name: "migma_test_webhook", domain: "webhooks", summary: "Send a test event to a webhook endpoint.", write: true, idempotent: false },
|
|
116
118
|
{ name: "migma_delete_webhook", domain: "webhooks", summary: "Delete a webhook by id.", write: true, idempotent: false },
|
|
117
119
|
// Meta
|
|
118
|
-
{ name: "migma_get_capabilities", domain: "meta", summary: "Self-describe this server: tools, workflows, idempotency, and brand scoping.
|
|
120
|
+
{ name: "migma_get_capabilities", domain: "meta", summary: "Self-describe this server: tools, workflows, idempotency, and brand scoping. Use migma_get_context for live account state.", write: false, idempotent: false },
|
|
119
121
|
];
|
|
120
122
|
export function getToolReviewAnnotations(name) {
|
|
121
123
|
const entry = TOOL_CATALOG.find((tool) => tool.name === name);
|
|
@@ -156,6 +158,8 @@ export function getToolRequiredScopes(name) {
|
|
|
156
158
|
return ["project:write"];
|
|
157
159
|
if (name === "migma_generate_email")
|
|
158
160
|
return ["email:write", "email:read"];
|
|
161
|
+
if (name === "migma_import_html")
|
|
162
|
+
return ["email:write", "email:read"];
|
|
159
163
|
if (name === "migma_send_test_email" || name === "migma_send_email")
|
|
160
164
|
return ["email:send"];
|
|
161
165
|
const scopeByDomain = {
|
|
@@ -201,33 +205,59 @@ export function applyToolReviewMetadata(server) {
|
|
|
201
205
|
}, callback);
|
|
202
206
|
});
|
|
203
207
|
}
|
|
204
|
-
|
|
208
|
+
function hasScopes(grantedPermissions, required) {
|
|
209
|
+
if (!grantedPermissions)
|
|
210
|
+
return true;
|
|
211
|
+
return required.every((scope) => grantedPermissions.includes(scope));
|
|
212
|
+
}
|
|
213
|
+
function workflowToolNames(steps) {
|
|
214
|
+
return [...new Set(steps.flatMap((step) => step.match(/migma_[a-z_]+/g) ?? []))];
|
|
215
|
+
}
|
|
216
|
+
export function buildCapabilitiesPayload(version, grantedPermissions) {
|
|
217
|
+
const availableTools = TOOL_CATALOG.filter((entry) => hasScopes(grantedPermissions, getToolRequiredScopes(entry.name)));
|
|
218
|
+
const availableToolNames = new Set(availableTools.map((entry) => entry.name));
|
|
219
|
+
const unavailableTools = TOOL_CATALOG.filter((entry) => !availableToolNames.has(entry.name)).map((entry) => ({
|
|
220
|
+
name: entry.name,
|
|
221
|
+
requiredScopes: getToolRequiredScopes(entry.name),
|
|
222
|
+
}));
|
|
223
|
+
const availableWorkflows = WORKFLOWS.filter((workflow) => workflowToolNames(workflow.steps).every((name) => availableToolNames.has(name)));
|
|
224
|
+
return {
|
|
225
|
+
server: "migma",
|
|
226
|
+
version,
|
|
227
|
+
grantedScopes: grantedPermissions ?? null,
|
|
228
|
+
voice: "Present Migma as the user's email person. Suggest and act: after connecting, call migma_get_context and offer the most useful next actions — users rarely know Migma can buy domains, import brands, or read campaign stats. Keep replies short, warm, and human. Promise only actions in tools below.",
|
|
229
|
+
deliveryAccess: {
|
|
230
|
+
directAndTestEmail: hasScopes(grantedPermissions, ["email:send"]),
|
|
231
|
+
campaignCreateSendAndSchedule: hasScopes(grantedPermissions, ["campaign:write"]),
|
|
232
|
+
warning: "email:send enables test/direct email. campaign:write enables campaign creation, send, and schedule. A credential with campaign:write is not no-send.",
|
|
233
|
+
},
|
|
234
|
+
channelRule: "Use one write channel per task. When MCP is selected, stop browser/REST creation, wait for in-flight work, list existing drafts, and reconcile before generating again.",
|
|
235
|
+
designFlow: "Resolve exact brand → build a source-backed required-fact checklist → one migma_generate_email (pass count; pass up to 5 public HTTPS source images through images, not only prompt text) → poll status → IMMEDIATELY show preview images + appUrl. After that first show, verify requested facts and source images before claiming success. Do not validate or edit before the first show.",
|
|
236
|
+
knowledgeBase: "Call migma_add_knowledge_base when the user shares lasting brand facts. Do not list first. List is optional review only.",
|
|
237
|
+
brandScoping: "The connection credential is account-scoped; pass projectId per tool (or set MIGMA_PROJECT_ID for local stdio). Resources in another project return 404.",
|
|
238
|
+
emailsVsCampaigns: "Designed emails use migma_list_emails and migma_get_generation_status. Audience sends use migma_list_campaigns. Brand details use migma_get_project. List, get, status, and edit return preview images and appUrl — show those images as soon as generation completes. Set includeHtml when markup is needed.",
|
|
239
|
+
idempotency: {
|
|
240
|
+
header: "Idempotency-Key",
|
|
241
|
+
maxLength: 100,
|
|
242
|
+
ttlHours: 24,
|
|
243
|
+
conflictCode: "IDEMPOTENCY_CONFLICT",
|
|
244
|
+
},
|
|
245
|
+
tools: availableTools,
|
|
246
|
+
unavailableTools,
|
|
247
|
+
workflows: availableWorkflows,
|
|
248
|
+
errors: "Tools return text; failures include the API error message. HTTP errors map to Migma error responses.",
|
|
249
|
+
docs: "https://docs.migma.ai",
|
|
250
|
+
};
|
|
251
|
+
}
|
|
252
|
+
export function registerCapabilitiesTool(server, grantedPermissions) {
|
|
205
253
|
const { version } = createRequire(import.meta.url)("../../package.json");
|
|
206
254
|
server.registerTool("migma_get_capabilities", {
|
|
207
255
|
title: "Get Capabilities",
|
|
208
256
|
annotations: READ_ONLY_TOOL,
|
|
209
|
-
description: "
|
|
257
|
+
description: "Self-description of this server (migma_get_context returns live account state). Catalog includes migma_generate_email (new emails from a prompt; one call with count for a series), migma_import_html (convert existing HTML or .eml), edit, send, campaigns, audience, domains, and billing. Returns granted scopes, tools available to this connection, unavailable tools with missing scopes, compatible guided workflows, idempotency rules, and brand scoping. Use this result instead of promising tools hidden by the current credential.",
|
|
210
258
|
inputSchema: z.object({}),
|
|
211
259
|
}, async () => {
|
|
212
|
-
const catalog =
|
|
213
|
-
server: "migma",
|
|
214
|
-
version,
|
|
215
|
-
voice: "Present Migma as the user's email person, in first person: 'I'll write the copy, design the email, code it, and send it.' Keep replies short, warm, and human. Core jobs: design emails, send campaigns to an audience, show campaign stats. Frame send approval or DNS as hand-offs, not limitations.",
|
|
216
|
-
designFlow: "When the user asks to design/create emails: resolve brand → one migma_generate_email (pass count for a series; never one call per email) → poll migma_get_generation_status → IMMEDIATELY show preview images + appUrl. Do not validate or edit before that first show. Skip field catalog unless variables are needed. Validate tools are optional and only for user-requested checks or pre-send.",
|
|
217
|
-
knowledgeBase: "Call migma_add_knowledge_base when the user shares lasting brand facts. Do not list first. List is optional review only.",
|
|
218
|
-
brandScoping: "API key is account-scoped; pass projectId per tool (or set MIGMA_PROJECT_ID). Resources in another project return 404.",
|
|
219
|
-
emailsVsCampaigns: "Designed emails use migma_list_emails and migma_get_generation_status. Audience sends use migma_list_campaigns. Brand details use migma_get_project. List, get, status, and edit return preview images and appUrl — show those images as soon as generation completes. Set includeHtml when markup is needed.",
|
|
220
|
-
idempotency: {
|
|
221
|
-
header: "Idempotency-Key",
|
|
222
|
-
maxLength: 100,
|
|
223
|
-
ttlHours: 24,
|
|
224
|
-
conflictCode: "IDEMPOTENCY_CONFLICT",
|
|
225
|
-
},
|
|
226
|
-
tools: TOOL_CATALOG,
|
|
227
|
-
workflows: WORKFLOWS,
|
|
228
|
-
errors: "Tools return text; failures include the API error message. HTTP errors map to Migma error responses.",
|
|
229
|
-
docs: "https://docs.migma.ai",
|
|
230
|
-
};
|
|
260
|
+
const catalog = buildCapabilitiesPayload(version, grantedPermissions);
|
|
231
261
|
return {
|
|
232
262
|
content: [
|
|
233
263
|
{ type: "text", text: JSON.stringify(catalog, null, 2) },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../src/tools/capabilities.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAsBlD,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC;IACpC,uBAAuB;IACvB,kBAAkB;IAClB,qBAAqB;IACrB,yBAAyB;IACzB,6BAA6B;IAC7B,wBAAwB;IACxB,oBAAoB;IACpB,kBAAkB;IAClB,sBAAsB;IACtB,yBAAyB;IACzB,wBAAwB;IACxB,oBAAoB;CACrB,CAAC,CAAC;AAEH,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC;IACrC,uBAAuB;IACvB,kBAAkB;IAClB,kBAAkB;IAClB,qBAAqB;IACrB,yBAAyB;IACzB,uBAAuB;IACvB,sBAAsB;IACtB,sCAAsC;IACtC,kBAAkB;IAClB,sBAAsB;IACtB,sBAAsB;IACtB,yBAAyB;IACzB,oBAAoB;CACrB,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAuB;IAC9C,oBAAoB;IACpB,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,yEAAyE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IACxK,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,4CAA4C,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IACzI,EAAE,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,uEAAuE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IACpK,EAAE,IAAI,EAAE,yBAAyB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,gFAAgF,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IACnL,EAAE,IAAI,EAAE,2BAA2B,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,8DAA8D,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IACpK,EAAE,IAAI,EAAE,0BAA0B,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,wDAAwD,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAE5J,mBAAmB;IACnB,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,qLAAqL,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;IACjR,EAAE,IAAI,EAAE,6BAA6B,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,2FAA2F,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IAChM,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,8DAA8D,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IACzJ,EAAE,IAAI,EAAE,uBAAuB,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,0EAA0E,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IACxK,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,wFAAwF,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IACjL,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,mGAAmG,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAC5L,EAAE,IAAI,EAAE,yBAAyB,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,mIAAmI,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IACpO,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,mEAAmE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IAEjK,UAAU;IACV,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,2DAA2D,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;IACpJ,EAAE,IAAI,EAAE,2BAA2B,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,uFAAuF,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IAE3L,YAAY;IACZ,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,qDAAqD,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IACtJ,EAAE,IAAI,EAAE,uBAAuB,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,4DAA4D,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;IAC5J,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,iDAAiD,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;IAC/I,EAAE,IAAI,EAAE,yBAAyB,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,0CAA0C,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;IAC5I,EAAE,IAAI,EAAE,uBAAuB,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,8BAA8B,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAC/H,EAAE,IAAI,EAAE,wBAAwB,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,sDAAsD,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IACxJ,EAAE,IAAI,EAAE,0BAA0B,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,yCAAyC,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAC7I,EAAE,IAAI,EAAE,0BAA0B,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,+EAA+E,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IACpL,EAAE,IAAI,EAAE,yBAAyB,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,+DAA+D,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IAEnK,aAAa;IACb,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,qCAAqC,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IACvI,EAAE,IAAI,EAAE,8BAA8B,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,8CAA8C,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IACxJ,EAAE,IAAI,EAAE,+BAA+B,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,wCAAwC,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IAEnJ,SAAS;IACT,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,oEAAoE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAC9J,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,6CAA6C,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IACtI,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,kEAAkE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAC3J,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,wDAAwD,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IACrJ,EAAE,IAAI,EAAE,wBAAwB,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,0DAA0D,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IACzJ,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,wDAAwD,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAErJ,UAAU;IACV,EAAE,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,gDAAgD,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IAC7I,EAAE,IAAI,EAAE,6BAA6B,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,6DAA6D,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAClK,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,iDAAiD,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAC9I,EAAE,IAAI,EAAE,wBAAwB,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,wEAAwE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IACxK,EAAE,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,8FAA8F,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAC1L,EAAE,IAAI,EAAE,8BAA8B,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,sEAAsE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IAC7K,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,oFAAoF,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAC9K,EAAE,IAAI,EAAE,4BAA4B,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,8DAA8D,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IACnK,EAAE,IAAI,EAAE,wBAAwB,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,8DAA8D,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IAC/J,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,mEAAmE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IACjK,EAAE,IAAI,EAAE,yBAAyB,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,+DAA+D,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAEhK,UAAU;IACV,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,iEAAiE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IAC7J,EAAE,IAAI,EAAE,wBAAwB,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,qFAAqF,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAErL,WAAW;IACX,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,qDAAqD,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IACpJ,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,kCAAkC,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;IAC7H,EAAE,IAAI,EAAE,4BAA4B,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,mDAAmD,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;IACvJ,EAAE,IAAI,EAAE,6BAA6B,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,oFAAoF,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAC1L,EAAE,IAAI,EAAE,0BAA0B,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,yCAAyC,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IAC7I,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,oCAAoC,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IACjI,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,yBAAyB,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IACxH,EAAE,IAAI,EAAE,sCAAsC,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,kDAAkD,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAEjK,OAAO;IACP,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,8BAA8B,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IACrH,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,uCAAuC,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAC9H,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAE5G,WAAW;IACX,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,2CAA2C,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IAC1I,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,mDAAmD,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAClJ,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,yBAAyB,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAExH,WAAW;IACX,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,+BAA+B,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;IAC9H,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,kDAAkD,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IACjJ,EAAE,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,0CAA0C,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IACvI,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,yBAAyB,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;IAExH,OAAO;IACP,EAAE,IAAI,EAAE,wBAAwB,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,+FAA+F,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;CAC9L,CAAC;AAEF,MAAM,UAAU,wBAAwB,CAAC,IAAY;IACnD,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAC9D,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,qCAAqC,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO;QACL,YAAY,EAAE,CAAC,KAAK,CAAC,KAAK;QAC1B,eAAe,EAAE,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC;QACjD,aAAa,EAAE,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC;QAC9C,2EAA2E;QAC3E,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI;KACtD,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAC7B,WAAoB;IAEpB,IAAI,CAAC,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAClE,MAAM,KAAK,GAAG,WAAsC,CAAC;IACrD,OAAO,CACL,OAAO,KAAK,CAAC,YAAY,KAAK,SAAS;QACvC,OAAO,KAAK,CAAC,eAAe,KAAK,SAAS;QAC1C,OAAO,KAAK,CAAC,aAAa,KAAK,SAAS;QACxC,OAAO,KAAK,CAAC,cAAc,KAAK,SAAS,CAC1C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAY;IAChD,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAC9D,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,qCAAqC,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,IAAI,KAAK,wBAAwB;QAAE,OAAO,EAAE,CAAC;IACjD,IAAI,IAAI,KAAK,oBAAoB;QAAE,OAAO,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;IAC1E,IAAI,IAAI,KAAK,yBAAyB;QAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IACjE,IAAI,IAAI,KAAK,2BAA2B;QAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAChE,IAAI,IAAI,KAAK,0BAA0B;QAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IAClE,IAAI,IAAI,KAAK,sBAAsB;QAAE,OAAO,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IAC1E,IAAI,IAAI,KAAK,uBAAuB,IAAI,IAAI,KAAK,kBAAkB;QAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAE3F,MAAM,aAAa,GAA2B;QAC5C,QAAQ,EAAE,YAAY;QACtB,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,YAAY;QACvD,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY;QAClD,OAAO,EAAE,YAAY;QACrB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,YAAY;QACpB,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa;QACrD,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,cAAc;QACvD,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,eAAe;QAC3D,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,eAAe;QAC1D,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,eAAe;QACtD,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,eAAe;QAC1D,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,cAAc;KACzD,CAAC;IACF,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC1C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,oCAAoC,IAAI,EAAE,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACnE,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,uBAAuB,CAAC,MAAiB;IACvD,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEtD,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC,IAAY,EAAE,MAAc,EAAE,QAAiB,EAAE,EAAE;QACzE,MAAM,KAAK,GAAG,MAIb,CAAC;QACF,MAAM,eAAe,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACrD,MAAM,WAAW,GAAG,sBAAsB,CAAC,KAAK,CAAC,WAAW,CAAC;YAC3D,CAAC,CAAC,KAAK,CAAC,WAAW;YACnB,CAAC,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;QACnC,OAAO,YAAY,CACjB,IAAI,EACJ;YACE,GAAG,MAAM;YACT,WAAW;YACX,KAAK,EAAE;gBACL,GAAG,KAAK,CAAC,KAAK;gBACd,eAAe;aAChB;SACF,EACD,QAAiB,CAClB,CAAC;IACJ,CAAC,CAA+B,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAAiB;IACxD,MAAM,EAAE,OAAO,EAAE,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,oBAAoB,CAEtE,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,wBAAwB,EACxB;QACE,KAAK,EAAE,kBAAkB;QACzB,WAAW,EAAE,cAAc;QAC3B,WAAW,EACT,iVAAiV;QACnV,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;KAC1B,EACD,KAAK,IAAI,EAAE;QACT,MAAM,OAAO,GAAG;YACd,MAAM,EAAE,OAAO;YACf,OAAO;YACP,KAAK,EACH,wSAAwS;YAC1S,UAAU,EACR,qYAAqY;YACvY,aAAa,EACX,0HAA0H;YAC5H,YAAY,EACV,wHAAwH;YAC1H,iBAAiB,EACf,+SAA+S;YACjT,WAAW,EAAE;gBACX,MAAM,EAAE,iBAAiB;gBACzB,SAAS,EAAE,GAAG;gBACd,QAAQ,EAAE,EAAE;gBACZ,YAAY,EAAE,sBAAsB;aACrC;YACD,KAAK,EAAE,YAAY;YACnB,SAAS,EAAE,SAAS;YACpB,MAAM,EACJ,sGAAsG;YACxG,IAAI,EAAE,uBAAuB;SAC9B,CAAC;QAEF,OAAO;YACL,OAAO,EAAE;gBACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;aAClE;SACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../src/tools/capabilities.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAuBnC,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,KAAK,EACb,kBAAkB,CAAC,EAAE,MAAM,EAAE,QAoG9B"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { canUse } from "../permissions.js";
|
|
3
|
+
import { READ_ONLY_TOOL } from "./annotations.js";
|
|
4
|
+
export function registerContextTools(server, client, grantedPermissions) {
|
|
5
|
+
if (!canUse(grantedPermissions, ["email:read"]))
|
|
6
|
+
return;
|
|
7
|
+
server.registerTool("migma_get_context", {
|
|
8
|
+
title: "Get Account Context",
|
|
9
|
+
annotations: READ_ONLY_TOOL,
|
|
10
|
+
description: "One-call account snapshot: workspaces, brand count, plan and remaining credits, and sending domains with their status. Also returns suggestions — concrete next actions worth offering the user (verify a domain, create a managed sending address, upgrade when credits run low). Call this after connecting, before the first task, and whenever the user asks what they can do.",
|
|
11
|
+
inputSchema: z.object({}),
|
|
12
|
+
}, async () => {
|
|
13
|
+
const ws = client.workspaces;
|
|
14
|
+
const canBilling = canUse(grantedPermissions, ["billing:read"]);
|
|
15
|
+
const canDomains = canUse(grantedPermissions, ["domain:read"]);
|
|
16
|
+
const [workspaces, projects, credits, domains] = await Promise.all([
|
|
17
|
+
ws ? ws.list().catch(() => null) : Promise.resolve(null),
|
|
18
|
+
client.projects.list({ limit: 100 }).catch(() => null),
|
|
19
|
+
canBilling ? client.billing.credits().catch(() => null) : Promise.resolve(null),
|
|
20
|
+
canDomains ? client.domains.list().catch(() => null) : Promise.resolve(null),
|
|
21
|
+
]);
|
|
22
|
+
const workspaceRows = workspaces?.data?.workspaces ?? [];
|
|
23
|
+
const projectRows = (projects?.data
|
|
24
|
+
?.projects) ?? [];
|
|
25
|
+
const creditData = credits?.data ?? null;
|
|
26
|
+
const domainRows = (domains?.data ?? []);
|
|
27
|
+
const verifiedDomains = domainRows.filter((d) => d.isVerified);
|
|
28
|
+
const suggestions = [];
|
|
29
|
+
if (canDomains && verifiedDomains.length === 0) {
|
|
30
|
+
suggestions.push("No verified sending domain yet. Offer migma_create_managed_domain for an instant address (hello@company.migma.email, no DNS), or migma_setup_domain for a domain the user owns, or migma_search_buyable_domains to buy one.");
|
|
31
|
+
}
|
|
32
|
+
if (domainRows.some((d) => !d.isVerified)) {
|
|
33
|
+
suggestions.push("A domain is waiting on DNS. Offer migma_verify_domain to re-check it.");
|
|
34
|
+
}
|
|
35
|
+
if (creditData && !creditData.hasCredits) {
|
|
36
|
+
suggestions.push("Out of credits. Show migma_get_credits detail and offer migma_get_upgrade_link — the user pays in their browser.");
|
|
37
|
+
}
|
|
38
|
+
if (projectRows.length === 0) {
|
|
39
|
+
suggestions.push("No brands yet. Offer migma_import_brand with the user's website URL — it extracts colors, fonts, logos, and voice.");
|
|
40
|
+
}
|
|
41
|
+
if (workspaceRows.length > 1) {
|
|
42
|
+
suggestions.push("The user belongs to more than one workspace. Confirm which one to work in, then pass its id as organizationId to migma_list_projects.");
|
|
43
|
+
}
|
|
44
|
+
if (suggestions.length === 0) {
|
|
45
|
+
suggestions.push("Account is ready. Offer the next useful step: design an email, prepare a campaign, or read recent campaign stats.");
|
|
46
|
+
}
|
|
47
|
+
return {
|
|
48
|
+
content: [
|
|
49
|
+
{
|
|
50
|
+
type: "text",
|
|
51
|
+
text: JSON.stringify({
|
|
52
|
+
workspaces: workspaceRows,
|
|
53
|
+
brandCount: projectRows.length,
|
|
54
|
+
plan: creditData
|
|
55
|
+
? {
|
|
56
|
+
currentPlan: creditData.currentPlan,
|
|
57
|
+
hasCredits: creditData.hasCredits,
|
|
58
|
+
emailCreditsRemainingToday: creditData.emailCreditsRemainingToday,
|
|
59
|
+
monthlyCreditsRemaining: creditData.monthlyCreditsRemaining,
|
|
60
|
+
}
|
|
61
|
+
: undefined,
|
|
62
|
+
sendingDomains: domainRows.map((d) => ({
|
|
63
|
+
domain: d.domain,
|
|
64
|
+
status: d.status,
|
|
65
|
+
isVerified: d.isVerified ?? false,
|
|
66
|
+
})),
|
|
67
|
+
suggestions,
|
|
68
|
+
}, null, 2),
|
|
69
|
+
},
|
|
70
|
+
],
|
|
71
|
+
};
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email-images.d.ts","sourceRoot":"","sources":["../../src/tools/email-images.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,aAAa,GAAG;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,CACtB,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,KAC5B,OAAO,CAAC;IACX,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE;QAAE,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IAC9C,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;CACrC,CAAC,CAAC;AAYH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAkB3D;AA2BD,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,MAAM,GAAG,QAAQ,GACtB,aAAa,EAAE,CAiCjB;AAED,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,aAAa,EAAE,EACrB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,GACZ,MAAM,
|
|
1
|
+
{"version":3,"file":"email-images.d.ts","sourceRoot":"","sources":["../../src/tools/email-images.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,aAAa,GAAG;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,CACtB,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,KAC5B,OAAO,CAAC;IACX,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE;QAAE,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IAC9C,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;CACrC,CAAC,CAAC;AAYH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAkB3D;AA2BD,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,MAAM,GAAG,QAAQ,GACtB,aAAa,EAAE,CAiCjB;AAED,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,aAAa,EAAE,EACrB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,GACZ,MAAM,CAuBR;AAiBD,wBAAsB,eAAe,CACnC,GAAG,EAAE,MAAM,EACX,SAAS,GAAE,SAAiB,GAC3B,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAmB9B;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,MAAM,GAAG,QAAQ,EACvB,SAAS,GAAE,SAAiB,GAC3B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC,WAAW,GAAG,YAAY,CAAC,CAAA;CAAE,CAAC,CA0BzD"}
|
|
@@ -85,7 +85,13 @@ export function collectScreenshotRefs(data, mode) {
|
|
|
85
85
|
}
|
|
86
86
|
export function screenshotGuidance(refs, attached, data) {
|
|
87
87
|
if (attached > 0) {
|
|
88
|
-
|
|
88
|
+
const missing = refs.length - attached;
|
|
89
|
+
return missing > 0
|
|
90
|
+
? `Show the ${attached} attached preview image(s) immediately. ${missing} returned preview image(s) could not be attached; show their appUrl links and say visual verification is incomplete. Do not claim every draft or source image was inspected.`
|
|
91
|
+
: "Show these email preview images to the user immediately. Do not only describe the JSON. Do not run validate or edit before showing the drafts.";
|
|
92
|
+
}
|
|
93
|
+
if (refs.length > 0) {
|
|
94
|
+
return "Preview URLs were returned, but no preview image could be attached. Show each appUrl, retry migma_get_email or migma_get_generation_status once, and say visual verification is incomplete. Do not claim requested source images are present.";
|
|
89
95
|
}
|
|
90
96
|
const root = asRecord(data);
|
|
91
97
|
const status = asString(root?.status);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email-images.js","sourceRoot":"","sources":["../../src/tools/email-images.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"email-images.js","sourceRoot":"","sources":["../../src/tools/email-images.ts"],"names":[],"mappings":"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"}
|
package/build/tools/generate.js
CHANGED
|
@@ -8,7 +8,7 @@ export function registerGenerateTools(server, client, config, grantedPermissions
|
|
|
8
8
|
server.registerTool("migma_generate_email", {
|
|
9
9
|
title: "Create / Generate Email or Series",
|
|
10
10
|
annotations: IDEMPOTENT_MUTATING_TOOL,
|
|
11
|
-
description: "Create, design, write, compose, or draft a new email or email series from a prompt. One call can generate multiple emails: pass count (1–12), e.g. count=3 for a three-email series, and name each email's job in the prompt. Never call this tool once per email. This is the tool for making new emails (not campaigns, contacts, DNS, or domains). Returns conversationId immediately. Next: poll migma_get_generation_status until completed, then IMMEDIATELY show the preview images and appUrl links to the user. Do not run validate or edit before that first show. Charges 1 email credit per finished email.",
|
|
11
|
+
description: "Create, design, write, compose, or draft a new email or email series from a prompt. One call can generate multiple emails: pass count (1–12), e.g. count=3 for a three-email series, and name each email's job in the prompt. Never call this tool once per email. This is the tool for making new emails from a prompt (not converting existing HTML — use migma_import_html for that; not campaigns, contacts, DNS, or domains). Images: pass every image the user attached or pointed at through the images argument — product shots and logos to show in the email, and screenshots of emails or pages to use as design reference (when the user names a style, brand, or site like reallygoodemails.com, fetch the real screenshot URL and pass it; say in the prompt which images are content and which are reference). URLs mentioned only in prompt text are not image inputs. For researched work, put exact required facts in the prompt. Returns conversationId immediately. Next: poll migma_get_generation_status until completed, then IMMEDIATELY show the preview images and appUrl links to the user. Do not run validate or edit before that first show. After showing, verify requested facts and assets before claiming success. Charges 1 email credit per finished email.",
|
|
12
12
|
inputSchema: z.object({
|
|
13
13
|
projectId: z
|
|
14
14
|
.string()
|
|
@@ -29,9 +29,9 @@ export function registerGenerateTools(server, client, config, grantedPermissions
|
|
|
29
29
|
.describe("How many emails to generate in this single call (1–12). For three emails pass 3. Omit to infer from the prompt. Do not make a separate generate call per email."),
|
|
30
30
|
images: z
|
|
31
31
|
.array(z.string().url())
|
|
32
|
-
.max(
|
|
32
|
+
.max(5)
|
|
33
33
|
.optional()
|
|
34
|
-
.describe("
|
|
34
|
+
.describe("Up to 5 public HTTPS image URLs: product shots and logos to show in the email, or email/page screenshots to match as design reference. Pass them here, not only inside prompt text, and say in the prompt which are content and which are reference. Inspect completed previews before claiming an asset was used."),
|
|
35
35
|
referenceId: z
|
|
36
36
|
.string()
|
|
37
37
|
.optional()
|
|
@@ -66,7 +66,7 @@ export function registerGenerateTools(server, client, config, grantedPermissions
|
|
|
66
66
|
content: [
|
|
67
67
|
{
|
|
68
68
|
type: "text",
|
|
69
|
-
text: "Generation started. Poll migma_get_generation_status until completed, then show the preview images and appUrl links immediately. Do not validate or edit before the user sees the drafts.",
|
|
69
|
+
text: "Generation started. Poll migma_get_generation_status until completed, then show the preview images and appUrl links immediately. Do not validate or edit before the user sees the drafts. After that first show, verify required facts and reference assets before claiming success.",
|
|
70
70
|
},
|
|
71
71
|
{
|
|
72
72
|
type: "text",
|
|
@@ -80,7 +80,7 @@ export function registerGenerateTools(server, client, config, grantedPermissions
|
|
|
80
80
|
server.registerTool("migma_get_generation_status", {
|
|
81
81
|
title: "Get Generation Status",
|
|
82
82
|
annotations: READ_ONLY_TOOL,
|
|
83
|
-
description: "Check generation progress with conversationId. When status is completed, show the returned preview images and appUrl links to the user right away — do not validate or edit first. Set includeHtml
|
|
83
|
+
description: "Check generation progress with conversationId. When status is completed, show the returned preview images and appUrl links to the user right away — do not validate or edit first. After showing, verify any required fact checklist and source images before claiming success. Set includeHtml when text/content verification needs markup.",
|
|
84
84
|
inputSchema: z.object({
|
|
85
85
|
conversationId: z.string().describe("The conversation/generation ID"),
|
|
86
86
|
includeHtml: z
|
|
@@ -195,7 +195,7 @@ export function registerGenerateTools(server, client, config, grantedPermissions
|
|
|
195
195
|
server.registerTool("migma_edit_email", {
|
|
196
196
|
title: "Edit / Change Email",
|
|
197
197
|
annotations: DESTRUCTIVE_TOOL,
|
|
198
|
-
description: "Edit, change, revise, or rewrite one already-generated email with a natural-language prompt. For a brand-new email or series, use migma_generate_email instead. Returns preview image, subject, appUrl, and screenshotStatus. Set includeHtml when markup is needed. Show the preview. Charges 0.5 email credit after save.",
|
|
198
|
+
description: "Edit, change, revise, or rewrite one already-generated email with a natural-language prompt. For a brand-new email or series, use migma_generate_email instead. This tool does not accept structured source images; adding external images requires a new migma_generate_email call and creates a replacement draft. Returns preview image, subject, appUrl, and screenshotStatus. Set includeHtml when markup is needed. Show the preview. Charges 0.5 email credit after save.",
|
|
199
199
|
inputSchema: z.object({
|
|
200
200
|
emailId: z.string().describe("Generated email ID from result.emails[].emailId"),
|
|
201
201
|
prompt: z
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/tools/generate.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,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,2BAA2B,EAC3B,cAAc,GACf,MAAM,kBAAkB,CAAC;AAS1B,MAAM,UAAU,qBAAqB,CACnC,MAAiB,EACjB,MAAa,EACb,MAAc,EACd,kBAA6B;IAE7B,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC;QAC9D,MAAM,CAAC,YAAY,CACjB,sBAAsB,EACtB;YACE,KAAK,EAAE,mCAAmC;YAC1C,WAAW,EAAE,wBAAwB;YACrC,WAAW,EACT,
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/tools/generate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
2
|
+
import type { Migma } from "migma";
|
|
3
|
+
import type { Config } from "../config.js";
|
|
4
|
+
export declare function registerImportHtmlTools(server: McpServer, client: Migma, config: Config, grantedPermissions?: string[]): void;
|
|
5
|
+
//# sourceMappingURL=import-html.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"import-html.d.ts","sourceRoot":"","sources":["../../src/tools/import-html.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;AAmB3C,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,KAAK,EACb,MAAM,EAAE,MAAM,EACd,kBAAkB,CAAC,EAAE,MAAM,EAAE,QA6G9B"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { canUse } from "../permissions.js";
|
|
3
|
+
import { decorateEmailPayload } from "./agent-payload.js";
|
|
4
|
+
import { IDEMPOTENT_MUTATING_TOOL } from "./annotations.js";
|
|
5
|
+
export function registerImportHtmlTools(server, client, config, grantedPermissions) {
|
|
6
|
+
if (!canUse(grantedPermissions, ["email:write", "email:read"]))
|
|
7
|
+
return;
|
|
8
|
+
server.registerTool("migma_import_html", {
|
|
9
|
+
title: "Import / Convert HTML Email or Series",
|
|
10
|
+
annotations: IDEMPOTENT_MUTATING_TOOL,
|
|
11
|
+
description: "Import, convert, or rebuild an existing HTML email, .eml file, or legacy template into an editable Migma email (Outlook-safe). Use this instead of migma_generate_email when the user already has HTML. One call can import multiple files via htmls (max 12). Optional instruction: keep it as-is, or apply the brand. Returns conversationId. Next: poll migma_get_generation_status, then show preview images and each appUrl. Each result email is one canvas slot with its own emailId. Charges 1 email credit per finished email.",
|
|
12
|
+
inputSchema: z.object({
|
|
13
|
+
projectId: z
|
|
14
|
+
.string()
|
|
15
|
+
.optional()
|
|
16
|
+
.describe("Project/brand ID. Local stdio uses MIGMA_PROJECT_ID if not provided; hosted remote clients should pass projectId."),
|
|
17
|
+
html: z
|
|
18
|
+
.string()
|
|
19
|
+
.min(1)
|
|
20
|
+
.optional()
|
|
21
|
+
.describe("One HTML document or raw .eml source. Provide html or htmls, not both."),
|
|
22
|
+
name: z
|
|
23
|
+
.string()
|
|
24
|
+
.min(1)
|
|
25
|
+
.max(200)
|
|
26
|
+
.optional()
|
|
27
|
+
.describe("Filename for a single html paste, e.g. welcome.html or message.eml."),
|
|
28
|
+
htmls: z
|
|
29
|
+
.array(z.object({
|
|
30
|
+
name: z.string().min(1).max(200),
|
|
31
|
+
source: z.string().min(1),
|
|
32
|
+
}))
|
|
33
|
+
.min(1)
|
|
34
|
+
.max(12)
|
|
35
|
+
.optional()
|
|
36
|
+
.describe("Multiple HTML or .eml files (1–12). One file becomes one canvas slot. Provide html or htmls, not both."),
|
|
37
|
+
instruction: z
|
|
38
|
+
.string()
|
|
39
|
+
.max(20_000)
|
|
40
|
+
.optional()
|
|
41
|
+
.describe("Natural-language conversion instruction. Example: keep this exactly as-is, or apply my brand colors, fonts, and logo."),
|
|
42
|
+
languages: z
|
|
43
|
+
.array(z.string())
|
|
44
|
+
.max(5)
|
|
45
|
+
.optional()
|
|
46
|
+
.describe("Languages (e.g. ['en', 'fr'])."),
|
|
47
|
+
idempotency_key: z
|
|
48
|
+
.string()
|
|
49
|
+
.max(100)
|
|
50
|
+
.optional()
|
|
51
|
+
.describe("Optional Idempotency-Key. Retrying the same key+body within 24h resumes the same job instead of starting a duplicate."),
|
|
52
|
+
}),
|
|
53
|
+
}, async (args) => {
|
|
54
|
+
const projectId = args.projectId || config.projectId;
|
|
55
|
+
if (!projectId) {
|
|
56
|
+
return toolError("projectId is required. Provide projectId, or set MIGMA_PROJECT_ID when using local stdio.");
|
|
57
|
+
}
|
|
58
|
+
const hasHtml = typeof args.html === "string" && args.html.length > 0;
|
|
59
|
+
const hasHtmls = Array.isArray(args.htmls) && args.htmls.length > 0;
|
|
60
|
+
if (hasHtml === hasHtmls) {
|
|
61
|
+
return toolError("Provide either html or htmls (1–12 files), not both.");
|
|
62
|
+
}
|
|
63
|
+
const emails = client.emails;
|
|
64
|
+
const { data, error } = await emails.importHtml({
|
|
65
|
+
projectId,
|
|
66
|
+
html: hasHtml ? args.html : undefined,
|
|
67
|
+
name: hasHtml ? args.name : undefined,
|
|
68
|
+
htmls: hasHtmls ? args.htmls : undefined,
|
|
69
|
+
instruction: args.instruction,
|
|
70
|
+
languages: args.languages,
|
|
71
|
+
}, args.idempotency_key
|
|
72
|
+
? { idempotencyKey: args.idempotency_key }
|
|
73
|
+
: undefined);
|
|
74
|
+
if (error)
|
|
75
|
+
return toolError(error.message);
|
|
76
|
+
const payload = decorateEmailPayload(data);
|
|
77
|
+
return {
|
|
78
|
+
content: [
|
|
79
|
+
{
|
|
80
|
+
type: "text",
|
|
81
|
+
text: "HTML import started. Poll migma_get_generation_status until completed, then show the preview images and appUrl links immediately. Each email is one canvas slot with its own emailId. Do not validate or edit before the user sees the drafts.",
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
type: "text",
|
|
85
|
+
text: JSON.stringify(payload, null, 2),
|
|
86
|
+
},
|
|
87
|
+
],
|
|
88
|
+
};
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
function toolError(message) {
|
|
92
|
+
return {
|
|
93
|
+
content: [{ type: "text", text: message }],
|
|
94
|
+
isError: true,
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=import-html.js.map
|
|
@@ -0,0 +1 @@
|
|
|
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":"projects.d.ts","sourceRoot":"","sources":["../../src/tools/projects.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;AAY3C,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,KAAK,EACb,MAAM,EAAE,MAAM,EACd,kBAAkB,CAAC,EAAE,MAAM,EAAE,
|
|
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,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAY3C,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,KAAK,EACb,MAAM,EAAE,MAAM,EACd,kBAAkB,CAAC,EAAE,MAAM,EAAE,QA2H9B"}
|
package/build/tools/projects.js
CHANGED
|
@@ -7,12 +7,16 @@ export function registerProjectTools(server, client, config, grantedPermissions)
|
|
|
7
7
|
server.registerTool("migma_list_projects", {
|
|
8
8
|
title: "List Projects",
|
|
9
9
|
annotations: READ_ONLY_TOOL,
|
|
10
|
-
description: "List Migma brands. Returns id, name, domain, status, and updatedAt. Pass search to find a brand by name, domain, or id.",
|
|
10
|
+
description: "List Migma brands. Returns id, name, domain, status, and updatedAt. Pass search to find a brand by name, domain, or id. Pass organizationId (a workspace id from migma_get_context) to list another workspace's brands.",
|
|
11
11
|
inputSchema: z.object({
|
|
12
12
|
search: z
|
|
13
13
|
.string()
|
|
14
14
|
.optional()
|
|
15
15
|
.describe("Filter by name, domain, or id (e.g. 'Osmo Studio')."),
|
|
16
|
+
organizationId: z
|
|
17
|
+
.string()
|
|
18
|
+
.optional()
|
|
19
|
+
.describe("Workspace id from migma_get_context. Omit for all brands the user can access."),
|
|
16
20
|
limit: z
|
|
17
21
|
.number()
|
|
18
22
|
.int()
|
|
@@ -31,6 +35,7 @@ export function registerProjectTools(server, client, config, grantedPermissions)
|
|
|
31
35
|
const { data, error } = await client.projects.list({
|
|
32
36
|
limit: args.search ? 100 : args.limit,
|
|
33
37
|
offset: args.search ? 0 : args.offset,
|
|
38
|
+
organizationId: args.organizationId,
|
|
34
39
|
});
|
|
35
40
|
if (error)
|
|
36
41
|
return toolError(error.message);
|
|
@@ -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,kBAAkB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AASjE,MAAM,UAAU,oBAAoB,CAClC,MAAiB,EACjB,MAAa,EACb,MAAc,EACd,kBAA6B;IAE7B,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;QAC/C,MAAM,CAAC,YAAY,CACjB,qBAAqB,EACrB;YACE,KAAK,EAAE,eAAe;YACtB,WAAW,EAAE,cAAc;YAC3B,WAAW,EACT,
|
|
1
|
+
{"version":3,"file":"projects.js","sourceRoot":"","sources":["../../src/tools/projects.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@migma/mcp",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.6.0",
|
|
4
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": {
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"license": "MIT",
|
|
32
32
|
"dependencies": {
|
|
33
33
|
"@modelcontextprotocol/sdk": "^1.9.0",
|
|
34
|
-
"migma": "^1.
|
|
34
|
+
"migma": "^1.6.0",
|
|
35
35
|
"zod": "^3.23.0"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|