@productmaker/mcp 6.9.0 → 6.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/http.js CHANGED
@@ -5085,6 +5085,16 @@ var ShopifyPublishErrorResponse = z27.discriminatedUnion("code", [
5085
5085
  action: z27.literal("open_editor"),
5086
5086
  message: z27.string().optional()
5087
5087
  }),
5088
+ z27.object({
5089
+ /**
5090
+ * The chosen existing product cannot express the confirmed offer's
5091
+ * quantity/price options. `message` carries the merchant-facing reason;
5092
+ * the client offers a one-click "create a new product and retry" path.
5093
+ */
5094
+ code: z27.literal("SHOPIFY_PUBLISH_TARGET_INCOMPATIBLE"),
5095
+ message: z27.string().optional(),
5096
+ commerceCorrectionSaved: z27.literal(true).optional()
5097
+ }),
5088
5098
  z27.object({
5089
5099
  /**
5090
5100
  * Code-landing publish refused BEFORE any product mutation: the shared
@@ -6329,7 +6339,7 @@ var SharedOutputEstimationFields = {
6329
6339
  * The lightweight competitor scan must never imply this add-on. */
6330
6340
  competitorCommercialStudyRequested: z33.boolean().optional(),
6331
6341
  /** Declining the winner replica makes `gap_replication` unreachable, so its
6332
- * forced-STANDARD ceiling must not be quoted. See
6342
+ * tier-matched replication ceiling must not be quoted. See
6333
6343
  * `.agent/specs/winner-replication-consent.spec.test.ts`. */
6334
6344
  replicateWinnerWhenFound: z33.boolean().optional()
6335
6345
  };
@@ -16189,7 +16199,7 @@ var ApiClient = class {
16189
16199
  };
16190
16200
 
16191
16201
  // src/index.ts
16192
- var MCP_VERSION = "6.9.0";
16202
+ var MCP_VERSION = "6.9.1";
16193
16203
 
16194
16204
  // src/meta-upload-app.ts
16195
16205
  import { readFileSync } from "fs";
@@ -17307,6 +17317,7 @@ var McpErrorCode = {
17307
17317
  SHOPIFY_PUBLISH_INPUT_REQUIRED: "SHOPIFY_PUBLISH_INPUT_REQUIRED",
17308
17318
  SHOPIFY_PUBLISH_CONTEXT_CHANGED: "SHOPIFY_PUBLISH_CONTEXT_CHANGED",
17309
17319
  SHOPIFY_PUBLISH_CORRECTION_REQUIRES_EDITOR: "SHOPIFY_PUBLISH_CORRECTION_REQUIRES_EDITOR",
17320
+ SHOPIFY_PUBLISH_TARGET_INCOMPATIBLE: "SHOPIFY_PUBLISH_TARGET_INCOMPATIBLE",
17310
17321
  SHOPIFY_THEME_SETUP_REQUIRED: "SHOPIFY_THEME_SETUP_REQUIRED",
17311
17322
  // Meta / Facebook Ads
17312
17323
  META_NO_FB_PAGE: "META_NO_FB_PAGE",
@@ -17378,6 +17389,7 @@ var CODE_MESSAGES = {
17378
17389
  SHOPIFY_PUBLISH_INPUT_REQUIRED: "Review every recovery issue with the seller. Ask for missing prices and confirm the exact currency, unit price and pack totals before resending commerceCorrection with confirmed:true. Never invent amounts, convert currency or remove an offer.",
17379
17390
  SHOPIFY_PUBLISH_CONTEXT_CHANGED: "The publication context changed. Reopen the task in ProductMaker, review the current store, product and landing revision, and obtain fresh confirmation. Do not reuse this correction.",
17380
17391
  SHOPIFY_PUBLISH_CORRECTION_REQUIRES_EDITOR: "Open the landing editor in ProductMaker to reconcile the visible offer with checkout prices. The correction was not saved; do not retry it automatically or regenerate the landing without approval.",
17392
+ SHOPIFY_PUBLISH_TARGET_INCOMPATIBLE: "The selected Shopify product cannot carry the confirmed offer (missing quantity options/prices) or no longer exists. Read the error's message to the user, then retry with publicationMode:'new' to create a fresh product, or ask the user to pick a different existing product.",
17381
17393
  SHOPIFY_THEME_SETUP_REQUIRED: "The store's Shopify theme is missing the ProductMaker 'Code Landing' app block \u2014 publishing now would create a product whose page renders blank. Send the user the themeEditorDeepLink (in error data) to open the Shopify theme editor, have them confirm the Code Landing block is added and press Save, then retry publishing. This is a one-time step per store; nothing was published.",
17382
17394
  SHOPIFY_NO_PUBLISHED_THEME: "The Shopify store has no published theme, so there is nowhere to place the landing. Ask the user to publish a theme (Online Store > Themes > Publish) and retry.",
17383
17395
  SHOPIFY_THEME_STRUCTURE_UNSUPPORTED: "The active Shopify theme contains an HTML structure ProductMaker cannot process safely. Ask the user to restore a valid layout/theme.liquid or contact ProductMaker support to correct the theme, then retry.",
@@ -17572,6 +17584,7 @@ var INVALID_PARAM_CODES = /* @__PURE__ */ new Set([
17572
17584
  McpErrorCode.SHOPIFY_PUBLISH_INPUT_REQUIRED,
17573
17585
  McpErrorCode.SHOPIFY_PUBLISH_CONTEXT_CHANGED,
17574
17586
  McpErrorCode.SHOPIFY_PUBLISH_CORRECTION_REQUIRES_EDITOR,
17587
+ McpErrorCode.SHOPIFY_PUBLISH_TARGET_INCOMPATIBLE,
17575
17588
  McpErrorCode.SHOPIFY_THEME_SETUP_REQUIRED,
17576
17589
  McpErrorCode.TIKTOK_NOT_CONNECTED,
17577
17590
  McpErrorCode.NO_SHOPIFY_SHOPS,
@@ -17598,6 +17611,7 @@ var PASSTHROUGH_CODES = /* @__PURE__ */ new Set([
17598
17611
  McpErrorCode.SHOPIFY_PUBLISH_INPUT_REQUIRED,
17599
17612
  McpErrorCode.SHOPIFY_PUBLISH_CONTEXT_CHANGED,
17600
17613
  McpErrorCode.SHOPIFY_PUBLISH_CORRECTION_REQUIRES_EDITOR,
17614
+ McpErrorCode.SHOPIFY_PUBLISH_TARGET_INCOMPATIBLE,
17601
17615
  McpErrorCode.SHOPIFY_NOT_CONNECTED,
17602
17616
  McpErrorCode.SHOPIFY_TOKEN_EXPIRED,
17603
17617
  McpErrorCode.SHOPIFY_SCOPE_UPGRADE_REQUIRED,
package/dist/stdio.js CHANGED
@@ -5107,6 +5107,16 @@ var ShopifyPublishErrorResponse = z27.discriminatedUnion("code", [
5107
5107
  action: z27.literal("open_editor"),
5108
5108
  message: z27.string().optional()
5109
5109
  }),
5110
+ z27.object({
5111
+ /**
5112
+ * The chosen existing product cannot express the confirmed offer's
5113
+ * quantity/price options. `message` carries the merchant-facing reason;
5114
+ * the client offers a one-click "create a new product and retry" path.
5115
+ */
5116
+ code: z27.literal("SHOPIFY_PUBLISH_TARGET_INCOMPATIBLE"),
5117
+ message: z27.string().optional(),
5118
+ commerceCorrectionSaved: z27.literal(true).optional()
5119
+ }),
5110
5120
  z27.object({
5111
5121
  /**
5112
5122
  * Code-landing publish refused BEFORE any product mutation: the shared
@@ -6351,7 +6361,7 @@ var SharedOutputEstimationFields = {
6351
6361
  * The lightweight competitor scan must never imply this add-on. */
6352
6362
  competitorCommercialStudyRequested: z33.boolean().optional(),
6353
6363
  /** Declining the winner replica makes `gap_replication` unreachable, so its
6354
- * forced-STANDARD ceiling must not be quoted. See
6364
+ * tier-matched replication ceiling must not be quoted. See
6355
6365
  * `.agent/specs/winner-replication-consent.spec.test.ts`. */
6356
6366
  replicateWinnerWhenFound: z33.boolean().optional()
6357
6367
  };
@@ -14568,7 +14578,7 @@ var ApiClient = class {
14568
14578
  };
14569
14579
 
14570
14580
  // src/index.ts
14571
- var MCP_VERSION = "6.9.0";
14581
+ var MCP_VERSION = "6.9.1";
14572
14582
 
14573
14583
  // src/meta-upload-app.ts
14574
14584
  import { readFileSync } from "fs";
@@ -15686,6 +15696,7 @@ var McpErrorCode = {
15686
15696
  SHOPIFY_PUBLISH_INPUT_REQUIRED: "SHOPIFY_PUBLISH_INPUT_REQUIRED",
15687
15697
  SHOPIFY_PUBLISH_CONTEXT_CHANGED: "SHOPIFY_PUBLISH_CONTEXT_CHANGED",
15688
15698
  SHOPIFY_PUBLISH_CORRECTION_REQUIRES_EDITOR: "SHOPIFY_PUBLISH_CORRECTION_REQUIRES_EDITOR",
15699
+ SHOPIFY_PUBLISH_TARGET_INCOMPATIBLE: "SHOPIFY_PUBLISH_TARGET_INCOMPATIBLE",
15689
15700
  SHOPIFY_THEME_SETUP_REQUIRED: "SHOPIFY_THEME_SETUP_REQUIRED",
15690
15701
  // Meta / Facebook Ads
15691
15702
  META_NO_FB_PAGE: "META_NO_FB_PAGE",
@@ -15757,6 +15768,7 @@ var CODE_MESSAGES = {
15757
15768
  SHOPIFY_PUBLISH_INPUT_REQUIRED: "Review every recovery issue with the seller. Ask for missing prices and confirm the exact currency, unit price and pack totals before resending commerceCorrection with confirmed:true. Never invent amounts, convert currency or remove an offer.",
15758
15769
  SHOPIFY_PUBLISH_CONTEXT_CHANGED: "The publication context changed. Reopen the task in ProductMaker, review the current store, product and landing revision, and obtain fresh confirmation. Do not reuse this correction.",
15759
15770
  SHOPIFY_PUBLISH_CORRECTION_REQUIRES_EDITOR: "Open the landing editor in ProductMaker to reconcile the visible offer with checkout prices. The correction was not saved; do not retry it automatically or regenerate the landing without approval.",
15771
+ SHOPIFY_PUBLISH_TARGET_INCOMPATIBLE: "The selected Shopify product cannot carry the confirmed offer (missing quantity options/prices) or no longer exists. Read the error's message to the user, then retry with publicationMode:'new' to create a fresh product, or ask the user to pick a different existing product.",
15760
15772
  SHOPIFY_THEME_SETUP_REQUIRED: "The store's Shopify theme is missing the ProductMaker 'Code Landing' app block \u2014 publishing now would create a product whose page renders blank. Send the user the themeEditorDeepLink (in error data) to open the Shopify theme editor, have them confirm the Code Landing block is added and press Save, then retry publishing. This is a one-time step per store; nothing was published.",
15761
15773
  SHOPIFY_NO_PUBLISHED_THEME: "The Shopify store has no published theme, so there is nowhere to place the landing. Ask the user to publish a theme (Online Store > Themes > Publish) and retry.",
15762
15774
  SHOPIFY_THEME_STRUCTURE_UNSUPPORTED: "The active Shopify theme contains an HTML structure ProductMaker cannot process safely. Ask the user to restore a valid layout/theme.liquid or contact ProductMaker support to correct the theme, then retry.",
@@ -15951,6 +15963,7 @@ var INVALID_PARAM_CODES = /* @__PURE__ */ new Set([
15951
15963
  McpErrorCode.SHOPIFY_PUBLISH_INPUT_REQUIRED,
15952
15964
  McpErrorCode.SHOPIFY_PUBLISH_CONTEXT_CHANGED,
15953
15965
  McpErrorCode.SHOPIFY_PUBLISH_CORRECTION_REQUIRES_EDITOR,
15966
+ McpErrorCode.SHOPIFY_PUBLISH_TARGET_INCOMPATIBLE,
15954
15967
  McpErrorCode.SHOPIFY_THEME_SETUP_REQUIRED,
15955
15968
  McpErrorCode.TIKTOK_NOT_CONNECTED,
15956
15969
  McpErrorCode.NO_SHOPIFY_SHOPS,
@@ -15977,6 +15990,7 @@ var PASSTHROUGH_CODES = /* @__PURE__ */ new Set([
15977
15990
  McpErrorCode.SHOPIFY_PUBLISH_INPUT_REQUIRED,
15978
15991
  McpErrorCode.SHOPIFY_PUBLISH_CONTEXT_CHANGED,
15979
15992
  McpErrorCode.SHOPIFY_PUBLISH_CORRECTION_REQUIRES_EDITOR,
15993
+ McpErrorCode.SHOPIFY_PUBLISH_TARGET_INCOMPATIBLE,
15980
15994
  McpErrorCode.SHOPIFY_NOT_CONNECTED,
15981
15995
  McpErrorCode.SHOPIFY_TOKEN_EXPIRED,
15982
15996
  McpErrorCode.SHOPIFY_SCOPE_UPGRADE_REQUIRED,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@productmaker/mcp",
3
- "version": "6.9.0",
3
+ "version": "6.9.1",
4
4
  "type": "module",
5
5
  "private": false,
6
6
  "description": "Product Maker MCP server — cost products, generate dropshipping landing pages, UGC videos, and ad creatives, and publish to Shopify and Meta Ads from Claude, ChatGPT, or Gemini.",