@productmaker/mcp 8.0.0 → 8.1.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/dist/http.js CHANGED
@@ -6918,7 +6918,10 @@ var ServiceCreativeEstimationOptions = z34.object({
6918
6918
  uploadedVideoDurationSeconds: z34.number().min(0).max(240).optional(),
6919
6919
  /** Quality the panels render at (its registry model sets the per-second
6920
6920
  * price). Absent = economy, the pre-quality service default. */
6921
- videoQuality: VideoQuality.optional()
6921
+ videoQuality: VideoQuality.optional(),
6922
+ /** Semantic resolution the panels render at (H3 maps 480p/720p to its
6923
+ * native 768P/2K). Absent = 480p, the pre-resolution service default. */
6924
+ videoResolution: VideoResolution.optional()
6922
6925
  });
6923
6926
  var ActorGridEstimationOptions = z34.object({}).strict();
6924
6927
  var CostEstimationRequest = z34.discriminatedUnion("type", [
@@ -13352,7 +13355,7 @@ var PRODUCTMAKER_CAPABILITY_REGISTRY = deepFreeze([
13352
13355
  "task",
13353
13356
  "product"
13354
13357
  ]),
13355
- defineCapability("create_service_video", "863884c1af5de3e168cbbe825ea3961901c84dae1899ca400f8f7fa01df91c0a", "credit_consuming", "creative", [
13358
+ defineCapability("create_service_video", "c3d81a4f698e01658fa04ebb613a91c8ba43320d21cacda522e72d198036eb21", "credit_consuming", "creative", [
13356
13359
  "credit_consuming",
13357
13360
  "state_change"
13358
13361
  ], [
@@ -13380,6 +13383,9 @@ var PRODUCTMAKER_CAPABILITY_REGISTRY = deepFreeze([
13380
13383
  // MCP-only for now: WhatsApp's service flow keeps the economy default.
13381
13384
  slot("video_quality", false, [
13382
13385
  "videoQuality"
13386
+ ], []),
13387
+ slot("video_resolution", false, [
13388
+ "videoResolution"
13383
13389
  ], [])
13384
13390
  ], [
13385
13391
  "service_context"
@@ -16876,7 +16882,7 @@ var ApiClient = class {
16876
16882
  };
16877
16883
 
16878
16884
  // src/index.ts
16879
- var MCP_VERSION = "8.0.0";
16885
+ var MCP_VERSION = "8.1.0";
16880
16886
 
16881
16887
  // src/meta-upload-app.ts
16882
16888
  import { readFileSync } from "fs";
@@ -19335,7 +19341,8 @@ var CreateServiceVideoInput = z73.object({
19335
19341
  "cinematic",
19336
19342
  "wild_card"
19337
19343
  ]).default("auto"),
19338
- videoQuality: VideoQualityEnum.default("economy").describe('Opcional. Calidad: "economy" = Econ\xF3mico, "medium" = Medio o "pro" = Pro. El proveedor se elige internamente. Default: economy.')
19344
+ videoQuality: VideoQualityEnum.default("economy").describe('Opcional. Calidad: "economy" = Econ\xF3mico, "medium" = Medio o "pro" = Pro. El proveedor se elige internamente. Default: economy.'),
19345
+ videoResolution: VideoResolutionEnum.default("480p").describe('Opcional. Resoluci\xF3n: "480p" o "720p". 720p cuesta m\xE1s por segundo y solo est\xE1 disponible en "economy" y "pro" (Medio = 768P). Default: 480p.')
19339
19346
  }).strict();
19340
19347
  var GetTaskStatusInput = z73.object({
19341
19348
  taskId: z73.string().min(1),
@@ -19792,6 +19799,9 @@ ANTES de invocar, resume outputs, cantidad de videos y datos comerciales, explic
19792
19799
  });
19793
19800
  server.tool("create_service_video", createServiceVideoGuidance.summary + " Esta acci\xF3n consume cr\xE9ditos: confirma la intenci\xF3n del usuario antes de llamarla. `automatic` genera directamente; `guided` devuelve conceptos para que el usuario apruebe uno mediante `resolve_pending_action`. La web tambi\xE9n acepta demos y anuncios de referencia; el transporte MCP de video adjunto todav\xEDa falla cerrado hasta poder subir bytes de forma segura.", CreateServiceVideoInput.shape, CREATES_PAID_OPEN_WORLD, async (input) => {
19794
19801
  try {
19802
+ if (input.videoQuality === "medium" && input.videoResolution === "720p") {
19803
+ throw mcp(McpErrorCode.INVALID_INPUT, 'videoResolution "720p" no est\xE1 disponible con videoQuality "medium" en videos de servicio (Medio = 768P). Usa "480p" o elige "economy"/"pro".');
19804
+ }
19795
19805
  await requirePaidCreativeConfirmation(server, `Video de servicio en ${input.language}. Modo: ${input.reviewMode === "automatic" ? "la IA decide todo" : "reviews conversacionales"}.`);
19796
19806
  const created = await api.postJson("/v2/ingest", {
19797
19807
  taskType: "service",
@@ -19805,6 +19815,7 @@ ANTES de invocar, resume outputs, cantidad de videos y datos comerciales, explic
19805
19815
  } : {},
19806
19816
  videoPreset: input.videoPreset,
19807
19817
  videoQuality: input.videoQuality,
19818
+ videoResolution: input.videoResolution,
19808
19819
  reviewMode: input.reviewMode,
19809
19820
  ...input.brandId ? {
19810
19821
  brandId: input.brandId
package/dist/stdio.js CHANGED
@@ -6940,7 +6940,10 @@ var ServiceCreativeEstimationOptions = z34.object({
6940
6940
  uploadedVideoDurationSeconds: z34.number().min(0).max(240).optional(),
6941
6941
  /** Quality the panels render at (its registry model sets the per-second
6942
6942
  * price). Absent = economy, the pre-quality service default. */
6943
- videoQuality: VideoQuality.optional()
6943
+ videoQuality: VideoQuality.optional(),
6944
+ /** Semantic resolution the panels render at (H3 maps 480p/720p to its
6945
+ * native 768P/2K). Absent = 480p, the pre-resolution service default. */
6946
+ videoResolution: VideoResolution.optional()
6944
6947
  });
6945
6948
  var ActorGridEstimationOptions = z34.object({}).strict();
6946
6949
  var CostEstimationRequest = z34.discriminatedUnion("type", [
@@ -13374,7 +13377,7 @@ var PRODUCTMAKER_CAPABILITY_REGISTRY = deepFreeze([
13374
13377
  "task",
13375
13378
  "product"
13376
13379
  ]),
13377
- defineCapability("create_service_video", "863884c1af5de3e168cbbe825ea3961901c84dae1899ca400f8f7fa01df91c0a", "credit_consuming", "creative", [
13380
+ defineCapability("create_service_video", "c3d81a4f698e01658fa04ebb613a91c8ba43320d21cacda522e72d198036eb21", "credit_consuming", "creative", [
13378
13381
  "credit_consuming",
13379
13382
  "state_change"
13380
13383
  ], [
@@ -13402,6 +13405,9 @@ var PRODUCTMAKER_CAPABILITY_REGISTRY = deepFreeze([
13402
13405
  // MCP-only for now: WhatsApp's service flow keeps the economy default.
13403
13406
  slot("video_quality", false, [
13404
13407
  "videoQuality"
13408
+ ], []),
13409
+ slot("video_resolution", false, [
13410
+ "videoResolution"
13405
13411
  ], [])
13406
13412
  ], [
13407
13413
  "service_context"
@@ -15255,7 +15261,7 @@ var ApiClient = class {
15255
15261
  };
15256
15262
 
15257
15263
  // src/index.ts
15258
- var MCP_VERSION = "8.0.0";
15264
+ var MCP_VERSION = "8.1.0";
15259
15265
 
15260
15266
  // src/meta-upload-app.ts
15261
15267
  import { readFileSync } from "fs";
@@ -17767,7 +17773,8 @@ var CreateServiceVideoInput = z72.object({
17767
17773
  "cinematic",
17768
17774
  "wild_card"
17769
17775
  ]).default("auto"),
17770
- videoQuality: VideoQualityEnum.default("economy").describe('Opcional. Calidad: "economy" = Econ\xF3mico, "medium" = Medio o "pro" = Pro. El proveedor se elige internamente. Default: economy.')
17776
+ videoQuality: VideoQualityEnum.default("economy").describe('Opcional. Calidad: "economy" = Econ\xF3mico, "medium" = Medio o "pro" = Pro. El proveedor se elige internamente. Default: economy.'),
17777
+ videoResolution: VideoResolutionEnum.default("480p").describe('Opcional. Resoluci\xF3n: "480p" o "720p". 720p cuesta m\xE1s por segundo y solo est\xE1 disponible en "economy" y "pro" (Medio = 768P). Default: 480p.')
17771
17778
  }).strict();
17772
17779
  var GetTaskStatusInput = z72.object({
17773
17780
  taskId: z72.string().min(1),
@@ -18224,6 +18231,9 @@ ANTES de invocar, resume outputs, cantidad de videos y datos comerciales, explic
18224
18231
  });
18225
18232
  server.tool("create_service_video", createServiceVideoGuidance.summary + " Esta acci\xF3n consume cr\xE9ditos: confirma la intenci\xF3n del usuario antes de llamarla. `automatic` genera directamente; `guided` devuelve conceptos para que el usuario apruebe uno mediante `resolve_pending_action`. La web tambi\xE9n acepta demos y anuncios de referencia; el transporte MCP de video adjunto todav\xEDa falla cerrado hasta poder subir bytes de forma segura.", CreateServiceVideoInput.shape, CREATES_PAID_OPEN_WORLD, async (input) => {
18226
18233
  try {
18234
+ if (input.videoQuality === "medium" && input.videoResolution === "720p") {
18235
+ throw mcp(McpErrorCode.INVALID_INPUT, 'videoResolution "720p" no est\xE1 disponible con videoQuality "medium" en videos de servicio (Medio = 768P). Usa "480p" o elige "economy"/"pro".');
18236
+ }
18227
18237
  await requirePaidCreativeConfirmation(server, `Video de servicio en ${input.language}. Modo: ${input.reviewMode === "automatic" ? "la IA decide todo" : "reviews conversacionales"}.`);
18228
18238
  const created = await api.postJson("/v2/ingest", {
18229
18239
  taskType: "service",
@@ -18237,6 +18247,7 @@ ANTES de invocar, resume outputs, cantidad de videos y datos comerciales, explic
18237
18247
  } : {},
18238
18248
  videoPreset: input.videoPreset,
18239
18249
  videoQuality: input.videoQuality,
18250
+ videoResolution: input.videoResolution,
18240
18251
  reviewMode: input.reviewMode,
18241
18252
  ...input.brandId ? {
18242
18253
  brandId: input.brandId
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@productmaker/mcp",
3
- "version": "8.0.0",
3
+ "version": "8.1.0",
4
4
  "type": "module",
5
5
  "private": false,
6
6
  "description": "ProductMaker MCP server — cost products, generate landing pages, UGC videos, and ad creatives, and publish to Shopify, Meta Ads, and TikTok Ads.",