@productmaker/mcp 8.3.0 → 8.4.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.
Files changed (4) hide show
  1. package/README.md +12 -0
  2. package/dist/http.js +4406 -4236
  3. package/dist/stdio.js +4249 -4115
  4. package/package.json +1 -1
package/README.md CHANGED
@@ -268,6 +268,18 @@ The `base64` field was removed. MCP JSON-RPC transports truncate large tool argu
268
268
 
269
269
  ## Version history
270
270
 
271
+ ### 8.4.0 — Fase 4 (contratos)
272
+
273
+ - `create_product_task` acepta `outputs` con un solo elemento (`["video"]`, `["image"]` o `["landing"]`); antes exigía dos.
274
+ - `create_product_task` rechaza en el esquema un `actorId` de más de 120 caracteres (antes llegaba a la API y fallaba con 400).
275
+ - `create_product_task` ya no envía `landingStrategy: "classic"` cuando no la indicas; la API aplica el mismo valor por defecto.
276
+ - Los enums públicos del MCP se importan de `@packages/types` en vez de copiarse a mano; los valores expuestos no cambian.
277
+ - Sin cambios de nombres de tools ni de campos. Lo único que el esquema rechaza ahora y antes no es `actorId` > 120, que ya rechazaba la API con 400.
278
+
279
+ ### 8.3.1 — Refresh token garantizado
280
+
281
+ - OAuth alojado: el proxy `/oauth/authorize` añade `offline_access` al scope antes de redirigir a Auth0. Los hosts que siguen el spec piden solo `mcp:access` (lo que anuncian el challenge y la metadata del recurso) y sin esto Auth0 nunca emitía refresh token.
282
+
271
283
  ### 8.3.0 — Idempotencia de tools pagadas + refresh OAuth
272
284
 
273
285
  - Tools pagadas (`create_product_task`, `create_service_video`, `generate_video_creative`, `generate_free_video`, `generate_image_creatives`, `generate_landing`, `create_creative_variant`): envían un `Idempotency-Key` derivado de los argumentos semánticos (ventana de 15 min). Un reintento con los mismos argumentos devuelve la misma tarea (`replayed: true`) sin segundo cargo; una tarea en `error` sí se reintenta.