@pinepaper.studio/mcp-server 1.6.11 → 1.6.13

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 (70) hide show
  1. package/README.md +219 -0
  2. package/dist/agent/export-manager.d.ts.map +1 -1
  3. package/dist/agent/export-manager.js +9 -7
  4. package/dist/agent/export-manager.js.map +1 -1
  5. package/dist/assets/repositories/iconify.d.ts +0 -5
  6. package/dist/assets/repositories/iconify.d.ts.map +1 -1
  7. package/dist/assets/repositories/iconify.js +17 -5
  8. package/dist/assets/repositories/iconify.js.map +1 -1
  9. package/dist/browser/puppeteer-controller.d.ts +16 -0
  10. package/dist/browser/puppeteer-controller.d.ts.map +1 -1
  11. package/dist/browser/puppeteer-controller.js +32 -2
  12. package/dist/browser/puppeteer-controller.js.map +1 -1
  13. package/dist/design/design-systems.d.ts +27 -2
  14. package/dist/design/design-systems.d.ts.map +1 -1
  15. package/dist/design/design-systems.js +20 -0
  16. package/dist/design/design-systems.js.map +1 -1
  17. package/dist/tools/compact-descriptions.js +1 -1
  18. package/dist/tools/compact-descriptions.js.map +1 -1
  19. package/dist/tools/definitions.d.ts.map +1 -1
  20. package/dist/tools/definitions.js +175 -52
  21. package/dist/tools/definitions.js.map +1 -1
  22. package/dist/tools/engine-methods.d.ts.map +1 -1
  23. package/dist/tools/engine-methods.js +8 -0
  24. package/dist/tools/engine-methods.js.map +1 -1
  25. package/dist/tools/engine-surface.d.ts +1 -1
  26. package/dist/tools/engine-surface.d.ts.map +1 -1
  27. package/dist/tools/engine-surface.js +32 -12
  28. package/dist/tools/engine-surface.js.map +1 -1
  29. package/dist/tools/handlers.d.ts +13 -2
  30. package/dist/tools/handlers.d.ts.map +1 -1
  31. package/dist/tools/handlers.js +219 -13
  32. package/dist/tools/handlers.js.map +1 -1
  33. package/dist/tools/minimal-descriptions.js +1 -1
  34. package/dist/tools/minimal-descriptions.js.map +1 -1
  35. package/dist/tools/shape-params.d.ts +36 -0
  36. package/dist/tools/shape-params.d.ts.map +1 -0
  37. package/dist/tools/shape-params.js +159 -0
  38. package/dist/tools/shape-params.js.map +1 -0
  39. package/dist/tools/stick-vocabulary.d.ts +26 -0
  40. package/dist/tools/stick-vocabulary.d.ts.map +1 -0
  41. package/dist/tools/stick-vocabulary.js +102 -0
  42. package/dist/tools/stick-vocabulary.js.map +1 -0
  43. package/dist/tools/toolkits.d.ts.map +1 -1
  44. package/dist/tools/toolkits.js +10 -1
  45. package/dist/tools/toolkits.js.map +1 -1
  46. package/dist/types/code-generator.d.ts.map +1 -1
  47. package/dist/types/code-generator.js +865 -122
  48. package/dist/types/code-generator.js.map +1 -1
  49. package/dist/types/schemas.d.ts +191 -35
  50. package/dist/types/schemas.d.ts.map +1 -1
  51. package/dist/types/schemas.js +32 -16
  52. package/dist/types/schemas.js.map +1 -1
  53. package/dist/vendor/design/design-systems-dtcg.d.ts +9 -0
  54. package/dist/vendor/design/design-systems-dtcg.d.ts.map +1 -1
  55. package/dist/vendor/design/design-systems-dtcg.js +53 -1
  56. package/dist/vendor/design/design-systems-dtcg.js.map +1 -1
  57. package/dist/vendor/design/device-mockup-generator.d.ts +83 -0
  58. package/dist/vendor/design/device-mockup-generator.d.ts.map +1 -0
  59. package/dist/vendor/design/device-mockup-generator.js +634 -0
  60. package/dist/vendor/design/device-mockup-generator.js.map +1 -0
  61. package/dist/vendor/design/recursive-subdivision-generator.d.ts +79 -0
  62. package/dist/vendor/design/recursive-subdivision-generator.d.ts.map +1 -0
  63. package/dist/vendor/design/recursive-subdivision-generator.js +319 -0
  64. package/dist/vendor/design/recursive-subdivision-generator.js.map +1 -0
  65. package/dist/vendor/design/textile-weave-generator.d.ts +140 -0
  66. package/dist/vendor/design/textile-weave-generator.d.ts.map +1 -0
  67. package/dist/vendor/design/textile-weave-generator.js +568 -0
  68. package/dist/vendor/design/textile-weave-generator.js.map +1 -0
  69. package/manifest.json +1 -1
  70. package/package.json +8 -2
@@ -10,7 +10,7 @@
10
10
  * The data itself is vendored from mcp-cloud by scripts/sync-design-systems.mjs
11
11
  * and must not be edited here — see src/vendor/design/.
12
12
  */
13
- import { type DTCGDesignSystem, type DTCGTokenType } from '../vendor/design/design-systems-dtcg.js';
13
+ import { type DTCGDesignSystem, type DTCGToken, type DTCGTokenType } from '../vendor/design/design-systems-dtcg.js';
14
14
  import { type DesignStyle } from '../vendor/design/design-style.js';
15
15
  /**
16
16
  * TWO UPSTREAM SHAPES, normalised here.
@@ -126,7 +126,32 @@ export declare function listSystems(): Array<{
126
126
  category: string;
127
127
  tokenCount: number;
128
128
  }>;
129
- export declare function getSystem(systemId: string, tokenType?: DTCGTokenType): DTCGDesignSystem | null;
129
+ export declare function getSystem(systemId: string, tokenType?: DTCGTokenType): DTCGDesignSystem | {
130
+ tokens: Record<string, DTCGToken<any>>;
131
+ requested: DTCGTokenType;
132
+ available: DTCGTokenType[];
133
+ note: string;
134
+ id: string;
135
+ name: string;
136
+ license: string;
137
+ version: string;
138
+ vendor: string;
139
+ category: "corporate" | "government";
140
+ motion: {
141
+ easings: Record<string, string>;
142
+ durations: Record<string, number>;
143
+ staggers: Record<string, number>;
144
+ };
145
+ typography: {
146
+ basePx: number;
147
+ ratio: number;
148
+ scalePx: number[];
149
+ };
150
+ space: {
151
+ gridPx: number;
152
+ scalePx: number[];
153
+ };
154
+ } | null;
130
155
  export interface NamedEasing {
131
156
  /** Stable name: system id + token path, so two systems' "standard" cannot collide. */
132
157
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"design-systems.d.ts","sourceRoot":"","sources":["../../src/design/design-systems.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"design-systems.d.ts","sourceRoot":"","sources":["../../src/design/design-systems.ts"],"names":[],"mappings":"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"}
@@ -233,6 +233,26 @@ export function getSystem(systemId, tokenType) {
233
233
  if (t.$type === tokenType)
234
234
  tokens[k] = t;
235
235
  }
236
+ // AN EMPTY RESULT USED TO LOOK LIKE AN EMPTY SYSTEM.
237
+ //
238
+ // These systems were captured for their MOTION ladders, spacing grids and
239
+ // type scales; none of them carries colour. Asking material_3 for
240
+ // tokenType 'color' returned `{tokens: {}}`, which reads as "this system has
241
+ // no colours" rather than "this tool does not carry them" — and the caller
242
+ // had no way to tell those apart or learn where colours do live.
243
+ if (Object.keys(tokens).length === 0) {
244
+ const available = [...new Set(Object.values(sys.tokens ?? {}).map((t) => t.$type).filter((t) => !!t))].sort();
245
+ return {
246
+ ...sys,
247
+ tokens,
248
+ requested: tokenType,
249
+ available,
250
+ note: available.includes(tokenType)
251
+ ? `${sys.id} declares no ${tokenType} tokens, though other systems here do.`
252
+ : `no design system here carries ${tokenType} tokens — these were captured for ${available.join(', ')}. `
253
+ + 'For palettes, use pinepaper_design_styles (styleTokens), which does carry them.',
254
+ };
255
+ }
236
256
  return { ...sys, tokens };
237
257
  }
238
258
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"design-systems.js","sourceRoot":"","sources":["../../src/design/design-systems.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"design-systems.js","sourceRoot":"","sources":["../../src/design/design-systems.ts"],"names":[],"mappings":"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"}
@@ -106,7 +106,7 @@ SHAPE TYPES: ${DIAGRAM_SHAPES}.`,
106
106
  // -------------------------------------------------------------------------
107
107
  // agent_export
108
108
  // -------------------------------------------------------------------------
109
- pinepaper_agent_export: `Export as MP4, GIF, PNG, SVG, or PDF. Formats: svg, png, gif, mp4, webm, pdf. Quality: draft, standard, high. Framing: canvas (default) or camera (camera_animates viewport — video formats only).`,
109
+ pinepaper_agent_export: `Export as MP4, GIF, PNG, SVG, or PDF. Formats: svg, png, gif, mp4, webm, pdf. Quality: draft, standard, high — compression, and a default frame rate (15/30/60) that fps overrides. Video size control is scale 0.1-1, not a bitrate; scale 0.5 + quality draft is the fast preview. Framing: canvas (default) or camera (camera_animates viewport — video formats only).`,
110
110
  // -------------------------------------------------------------------------
111
111
  // design_system
112
112
  // -------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"compact-descriptions.js","sourceRoot":"","sources":["../../src/tools/compact-descriptions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compact-descriptions.js","sourceRoot":"","sources":["../../src/tools/compact-descriptions.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../src/tools/definitions.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAwB/C,eAAO,MAAM,cAAc,6kbAyK+G,CAAC;AAW3I,eAAO,MAAM,eAAe,EAAE,IAAI,EA8wQjC,CAAC;AAEF;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAE5D;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,EAAE,CAEvC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,EAAE,CAO3D;AAED;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAE9D;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,aAAa,GAAG,IAAI,EAAE,CAQrE"}
1
+ {"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../src/tools/definitions.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AA0B/C,eAAO,MAAM,cAAc,6kbAyK+G,CAAC;AAW3I,eAAO,MAAM,eAAe,EAAE,IAAI,EAu4QjC,CAAC;AAEF;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAE5D;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,EAAE,CAEvC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,EAAE,CAO3D;AAED;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAE9D;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,aAAa,GAAG,IAAI,EAAE,CAQrE"}
@@ -9,6 +9,8 @@
9
9
  */
10
10
  import { COMPACT_DESCRIPTIONS } from './compact-descriptions.js';
11
11
  import { MINIMAL_DESCRIPTIONS } from './minimal-descriptions.js';
12
+ import { STICK_GAITS, STICK_POSES, STICK_SEQUENCES, STICK_EXPRESSIONS, STICK_PROPS } from './stick-vocabulary.js';
13
+ import { GeneratorNameSchema, ItemTypeSchema } from '../types/schemas.js';
12
14
  import { EffectTypeSchema, SimpleAnimationTypeSchema, GEOMETRY_OPERATIONS, THREAD_STITCHES, } from '../types/schemas.js';
13
15
  /**
14
16
  * Vocabulary lists derived from Zod schemas so tool descriptions stay in
@@ -336,10 +338,19 @@ USE WHEN:
336
338
 
337
339
  IMPORTANT NOTES:
338
340
  - This reloads the entire page, which resets everything
339
- - The welcome template will NOT appear after refresh (only shows for first-time visitors)
340
- - After refresh, the canvas will be completely empty
341
341
  - All unsaved work will be lost
342
- - You may need to wait a moment after refresh before executing other commands`,
342
+ - You may need to wait a moment after refresh before executing other commands
343
+
344
+ WHAT YOU ACTUALLY GET, which is not always an empty canvas:
345
+ - The template picker and a "Restore your previous work?" dialog can both
346
+ appear after a reload — observed in agent mode. A screenshot taken straight
347
+ afterwards shows those, not your scene, so do not read one as evidence that
348
+ the canvas is broken or that your items failed to draw.
349
+ - Dismiss or clear whatever appears before judging the result, and prefer
350
+ pinepaper_agent_reset when you want a clean canvas rather than a clean PAGE:
351
+ it skips the reload and the dialogs entirely.
352
+ - This description used to promise the welcome template would not appear and
353
+ that the canvas would be empty. Neither is reliable, so neither is claimed.`,
343
354
  inputSchema: {
344
355
  type: 'object',
345
356
  properties: {},
@@ -380,13 +391,64 @@ For requests like "draw a witch", "draw a cat face", "draw a person", or any det
380
391
  - DO NOT attempt pixel-level character drawing with paths
381
392
 
382
393
  ITEM TYPES:
394
+
395
+ EVERY type below also takes an anchor, which says WHICH CORNER your x/y meant.
396
+ Position is the bounding-box CENTRE by default. Anything that computed a layout
397
+ box — a design system, or any CSS-shaped mental model — authored the TOP-LEFT
398
+ instead, and passing those coordinates straight in displaces every item by half
399
+ its own size. anchor: 'top-left' (also top-right, bottom-left, bottom-right,
400
+ center; origin is an alias for the parameter) fixes that without you computing
401
+ bounds you cannot know until the item exists. It is applied after size and
402
+ rotation, so it uses the item's real box.
403
+
404
+ EVERY type below also takes a label, which wraps the item in a labelled group —
405
+ you do not need a second create call and a hand-computed position to caption a
406
+ shape. A string is the short form; the object form places and styles it:
407
+ label: { content: 'Start', position: 'top', offset: [0, 10], fontSize: 14,
408
+ fontFamily: 'Inter, sans-serif', color: '#ffffff', backgroundColor: null }.
409
+ position takes center (default), top, bottom, left, right or a corner. Use
410
+ label.position for placement: it works here today, and where the sibling
411
+ labelPosition spelling is also accepted, label.position wins.
412
+ Labelling a text item gives you TWO text items in the group — the body and the
413
+ label. That is what you want for a caption; it is a surprise if you expected
414
+ the label to replace the content.
415
+
383
416
  - text: Text content with font styling (properties: content, fontSize, color, fontFamily)
384
417
  - circle: Circular shape (properties: radius, color, strokeColor, strokeWidth)
385
418
  - star: Star shape (properties: radius1, radius2, points, color)
419
+ radius1 is the OUTER radius and is what sizes the star; radius or
420
+ width/height size it equally well. radius2 is read ONLY as a ratio to
421
+ radius1 (inner/outer, default 0.4), so radius2 passed WITHOUT radius1 is
422
+ ignored completely and you get the default waist. innerRadiusRatio sets that
423
+ same waist directly and needs no radii at all. points defaults to 5.
424
+ A star is always radially symmetric — given width and height it uses the
425
+ smaller — and the size you give is the radius BOX, the circle the tips
426
+ touch. The visible bounds are never larger than that box and usually
427
+ smaller — they fill it only when points is a multiple of 4.
386
428
  - rectangle: Rectangle (properties: width, height, color, cornerRadius)
387
- - triangle: Triangular shape (properties: color)
429
+ - triangle: Triangular shape (properties: width, height, color, angles, kind)
430
+ Defaults to a 100x86 isosceles. For any OTHER triangle, do not hand-build it
431
+ from a path — name it: kind: 'right' | 'equilateral' | 'isosceles' |
432
+ 'obtuse' | 'acute' | 'scalene', or give exact interior angles in degrees,
433
+ angles: [30, 60] (the third is inferred) or [30, 60, 90]. Angles that nearly
434
+ sum to 180 are normalized, so rounding is safe. With angles or kind the
435
+ triangle scales UNIFORMLY into the width x height box — the angles are fixed
436
+ and win, so one axis comes out smaller than requested. That is the only way
437
+ to keep a 'right' triangle actually right.
438
+ An angle set the engine cannot use — fewer than two entries, or any angle
439
+ outside 0.5-179.5 degrees — falls back to the default isosceles SILENTLY,
440
+ with no error. If you asked for a right triangle and got an isosceles one,
441
+ the angles were rejected.
388
442
  - polygon: Regular polygon with N sides (properties: sides, radius, color)
389
- - ellipse: Oval shape (properties: color)
443
+ points additionally accepts an explicit VERTEX LIST — [[x, y], ...] or
444
+ [{x, y}, ...], three or more, in canvas coordinates — which builds that
445
+ exact, possibly IRREGULAR polygon and ignores sides. Reach for this before
446
+ path when the outline is straight-edged. A plain number in points is not a
447
+ vertex list and falls through to sides (default 6).
448
+ In the vertex-list form the coordinates are ABSOLUTE canvas coordinates and
449
+ position is ignored — the polygon lands where its points say, not where you
450
+ positioned it. Offset the points yourself, or use sides + radius + position.
451
+ - ellipse: Oval shape (properties: width, height, color) — defaults to 100x60
390
452
  - path: Custom path with segments or SVG data (properties: segments, pathData, strokeColor, fillColor, closed, smooth)
391
453
  - line: Line between two points (properties: from, to, strokeColor, strokeWidth)
392
454
  - arc: Curved arc through three points (properties: from, through, to, strokeColor)
@@ -394,18 +456,27 @@ ITEM TYPES:
394
456
  - hexagon: Regular 6-sided polygon (properties: radius, color)
395
457
  - diamond: 4-sided diamond/rhombus (properties: radius, color)
396
458
  - arrow: Right-pointing block arrow (properties: width, height, color)
397
- - heart: Heart shape (properties: color)
459
+ - heart: Heart shape (properties: width, height, color) — defaults to 80x80
398
460
  - disk: Filled disk — the region inside a circle (properties: radius, color)
399
461
  - circle-outline: The circle CURVE — stroked, no interior (properties: radius,
400
462
  strokeColor, strokeWidth)
401
463
  - arrow-right: Alias for arrow — the same definition under the name the shape
402
- grids use. Identical output; both are listed because both are accepted.
464
+ grids use. Identical output and the same width, height and color; both are
465
+ listed because both are accepted.
403
466
 
404
467
  SPEECH AND ANNOTATION SHAPES — the engine draws these; use one instead of
405
468
  hand-building an outline from a path. All take width, height and color, and the
406
- descriptions below are the engine's own. The six with a tail also take
407
- tailDirection (bottom-left | bottom-right | bottom | top-left | top-right | top
408
- | left | right) and tailSize (0-1, default 0.35):
469
+ descriptions below are the engine's own. Three further parameters are each
470
+ read by six of these eight shapes, and THE THREE SIXES ARE NOT THE SAME SIX —
471
+ a shape missing from a list ignores that parameter silently, so check before
472
+ you pass it:
473
+ cornerRadius — speech-bubble, speech-bubble-pointed, comment-box,
474
+ callout-box, double-bubble, quote-bubble
475
+ tailDirection (bottom-left | bottom-right | bottom | top-left | top-right |
476
+ top | left | right) — speech-bubble, speech-bubble-square,
477
+ speech-bubble-pointed, thought-bubble, comment-box, callout-box
478
+ tailSize (0-1, default 0.35) — speech-bubble, speech-bubble-square,
479
+ speech-bubble-pointed, comment-box, callout-box, double-bubble
409
480
  - speech-bubble: Classic round speech bubble with triangular tail.
410
481
  - speech-bubble-square: Rectangular speech bubble with sharp corners and
411
482
  pointed tail.
@@ -1942,11 +2013,24 @@ ACTIONS:
1942
2013
  - set_font_axes: { itemId, axes: { weight?, width?, slant? } } — STANDARD variable-font axes only (Canvas 2D has no font-variation-settings, so custom foundry axes are unreachable — platform limit, stated, not silent). Returns {applied, rejected}: CHECK rejected — an axis silently ignored is the failure this surface exists to prevent. All three are ordinary animatable properties: keyframe fontWeight and type breathes between weights.
1943
2014
  - list_styles: {} — styles + palettes + axes, for pickers. Call this first; styleKey strings come from here.
1944
2015
 
2016
+ OVER PHOTOGRAPHS, PASS A PALETTE — NEVER THE DEFAULT. Measured on a real
2017
+ render of captions over photographs: highlighter, sticker, caption and badge
2018
+ read correctly at the default palette. neon needs one on a dark photo. chrome,
2019
+ cutout and glitch are off-brief at the default palette over any photograph —
2020
+ they are designed against flat backgrounds and the default palette assumes one.
2021
+ A style that is hard to read still reports success, so this is a judgement the
2022
+ tool cannot make for you.
2023
+
2024
+ MEASURE THE WIDTH BEFORE COMMITTING TO A SIZE. glitch at 80px in a monospace
2025
+ face overflows a 1920 canvas at 36 characters. Layered styles draw offset
2026
+ copies, so the group is WIDER than the text — use 'wrap' first, or shorten the
2027
+ line, rather than discovering it in an export.
2028
+
1945
2029
  EXAMPLE: { action: 'apply_style', itemId: 'title_1', styleKey: 'arcade', fontFamily: 'suggested' }`,
1946
2030
  inputSchema: {
1947
2031
  type: 'object',
1948
2032
  properties: {
1949
- action: { type: 'string', enum: ['apply_style', 'set_font_axes', 'list_styles', 'cursive', 'wrap', 'unwrap', 'to_collage'], description: "Text style operation. 'cursive' draws text as STROKED handwriting — a path, not a glyph, so draw-on animation and outline_stroke both apply. 'wrap'/'unwrap' break a text item to a width, reversibly. 'to_collage' converts an EXISTING text item into a letter collage in place." },
2033
+ action: { type: 'string', enum: ['apply_style', 'set_font_axes', 'list_styles', 'list', 'cursive', 'wrap', 'unwrap', 'to_collage'], description: "Text style operation. 'list' is accepted as an alias for 'list_styles', because pinepaper_text_effect spells the same action 'list' and an agent moving between them guesses wrong. 'cursive' draws text as STROKED handwriting — a path, not a glyph, so draw-on animation and outline_stroke both apply. 'wrap'/'unwrap' break a text item to a width, reversibly. 'to_collage' converts an EXISTING text item into a letter collage in place." },
1950
2034
  text: { type: 'string', description: 'cursive: the words to write. to_collage: the text to build from, if it differs from the item.' },
1951
2035
  maxWidth: { type: 'number', description: 'wrap: the width to break at, in canvas units. unwrap restores the original, so this is not destructive.' },
1952
2036
  cursiveOptions: { type: 'object', description: 'cursive: { x?, y?, scale?, strokeColor?, strokeWidth? }.' },
@@ -2310,7 +2394,9 @@ A partial composition reports as a failure with the elements that did not create
2310
2394
  name: 'pinepaper_stick',
2311
2395
  description: `The vendored stick-figure kit — a rigged figure posed, walking, travelling, holding a prop, with a garment and hair, plus the set it stands on and among.
2312
2396
 
2313
- A different construction from pinepaper_character, which places a figure from the DESIGN GRAPH by concept ("pp:Pigeon"). This is the stick kit specifically, and its options — pose, walk, travel, prop, garment, trouser, hair, expression and a timeline of expressions — were discoverable only by reading the engine's source.
2397
+ A different construction from pinepaper_character, which places a figure from the DESIGN GRAPH by concept ("pp:Pigeon"). This is the stick kit specifically.
2398
+
2399
+ TO MAKE IT ACT, not just stand: gait is how it walks and is never just walking; poses is the body over time, [{at, pose}]; sequence is a named track of those. Pass gait and travel in the SAME call to cross the frame — they share one track and two calls fight over it. A mistyped gait, pose or sequence comes back NAMED in warnings with the valid list, and the figure is still built.
2314
2400
 
2315
2401
  action 'figure' builds the figure. action 'set' builds the floor, the wall and the objects around it, so a figure has somewhere to be.
2316
2402
 
@@ -2323,26 +2409,48 @@ The geometry is vendored from mcp-cloud, which makes this a three-repo artifact:
2323
2409
  kind: { type: 'string', description: 'figure: which figure. set: which piece of the kit.' },
2324
2410
  at: { type: 'object', description: '{ x?, y? } — where it goes.' },
2325
2411
  scale: { type: 'number', description: 'Size multiplier.' },
2326
- facing: { type: 'string', enum: ['left', 'right'], description: 'Which way the figure looks.' },
2327
- pose: { type: 'string', description: "figure: a named pose from the kit's POSES." },
2412
+ facing: { type: 'string', enum: ['left', 'right'], description: "set: which way a CHAIR faces. A figure has none and passing it here is refused — a figure faces the way it travels." },
2413
+ pose: { type: 'string', enum: [...STICK_POSES], description: 'figure: ONE pose, held.' },
2328
2414
  poseAt: { type: 'number', description: 'figure: seconds at which that pose is struck.' },
2329
- expression: { type: 'string', description: 'figure: one facial expression.' },
2330
- expressions: { type: 'array', items: { type: 'object' }, description: 'figure: [{ at, name }] — expressions over time.' },
2331
- walk: { anyOf: [{ type: 'boolean' }, { type: 'object' }], description: 'figure: a walk cycle.' },
2332
- travel: { type: 'object', description: 'figure: move across the scene while walking, rather than walking in place.' },
2333
- prop: { type: 'string', description: 'figure: something held in hand.' },
2334
- propSide: { type: 'string', enum: ['left', 'right'], description: 'figure: which hand.' },
2335
- garment: { type: 'string', description: 'figure: clothing.' },
2336
- trouser: { type: 'string', description: 'figure: legwear.' },
2337
- hair: { type: 'string', description: 'figure: hair style.' },
2415
+ poses: {
2416
+ type: 'array',
2417
+ description: 'figure: THE BODY OVER TIME — [{at: seconds, pose: name}]. The counterpart of expressions, and the difference between a figure that acts and one that holds a single attitude while captions do the work.',
2418
+ items: { type: 'object', properties: { at: { type: 'number' }, pose: { type: 'string', enum: [...STICK_POSES] } }, required: ['at', 'pose'] },
2419
+ },
2420
+ gait: { type: 'string', enum: [...STICK_GAITS], description: 'figure: HOW it walks, and it is never just walking — trudge leans away from where it is going, sneak crouches, tiptoe raises the cadence. Pass travel in the SAME call to cross the frame; they share one track.' },
2421
+ gaitSeconds: { type: 'number', description: 'figure: how long the gait runs. Defaults to durationSeconds.' },
2422
+ gaitFrom: { type: 'number', description: 'figure: when the gait starts, in seconds.' },
2423
+ sequence: { type: 'string', enum: [...STICK_SEQUENCES], description: 'figure: a named pose track. Shorthand that resolves to beats and joins any poses you also pass.' },
2424
+ sequenceFrom: { type: 'number', description: 'figure: when the sequence starts (default 0).' },
2425
+ sequenceSeconds: { type: 'number', description: 'figure: how long it spans (default 4).' },
2426
+ expression: { type: 'string', enum: [...STICK_EXPRESSIONS], description: 'figure: one face. An unknown name costs the face, not the figure.' },
2427
+ expressions: {
2428
+ type: 'array',
2429
+ description: 'figure: faces over time — [{at: seconds, expression: name}]. Pass durationSeconds with these or the last face lasts one second.',
2430
+ items: { type: 'object', properties: { at: { type: 'number' }, expression: { type: 'string', enum: [...STICK_EXPRESSIONS] } }, required: ['at', 'expression'] },
2431
+ },
2432
+ walk: {
2433
+ anyOf: [{ type: 'boolean' }, { type: 'array', items: { type: 'object', properties: { seconds: { type: 'number' }, from: { type: 'number' } } } }],
2434
+ description: 'figure: walk cycles — true for one default cycle, or [{seconds, from}] for several. For anything other than a plain walk, use gait.',
2435
+ },
2436
+ travel: {
2437
+ type: 'array',
2438
+ description: 'figure: waypoints [{t, x, y}] carrying the figure across the scene rather than walking in place. FEWER THAN TWO IS IGNORED. Pass walk or gait in the same call or it slides without moving its legs.',
2439
+ items: { type: 'object', properties: { t: { type: 'number' }, x: { type: 'number' }, y: { type: 'number' } }, required: ['t', 'x', 'y'] },
2440
+ },
2441
+ prop: { type: 'string', enum: [...STICK_PROPS], description: 'figure: something held in hand.' },
2442
+ propSide: { type: 'string', enum: ['L', 'R'], description: "figure: which hand. 'left'/'right' are accepted and normalised." },
2443
+ garment: { type: 'string', description: 'figure: clothing colour.' },
2444
+ trouser: { type: 'string', description: 'figure: legwear colour.' },
2445
+ hair: { type: 'string', description: 'figure: hair colour.' },
2338
2446
  withHair: { type: 'boolean', description: 'figure: draw hair at all.' },
2339
- groundY: { type: 'number', description: 'The y the figure stands on.' },
2340
- surfaceY: { type: 'number', description: 'The y a set object sits on.' },
2341
- durationSeconds: { type: 'number', description: 'figure: length of the performance.' },
2342
- object: { type: 'object', description: 'set: the object spec.' },
2343
- items: { type: 'array', items: { type: 'object' }, description: 'set: several pieces at once.' },
2344
- floor: { anyOf: [{ type: 'boolean' }, { type: 'object' }], description: 'set: draw a floor.' },
2345
- wall: { anyOf: [{ type: 'boolean' }, { type: 'object' }], description: 'set: draw a wall.' },
2447
+ groundY: { type: 'number', description: 'set: the y a ROOM floor sits at.' },
2448
+ surfaceY: { type: 'number', description: 'set: the y a TABLETOP object sits on.' },
2449
+ durationSeconds: { type: 'number', description: 'figure: when the tracks end, on the same clock as expressions, poses and travel.' },
2450
+ object: { type: 'string', description: "set: the NAME of the thing to put on a surface, with kind 'tabletop'." },
2451
+ items: { type: 'number', description: 'set: how many things stand on a shelf (default 3). A COUNT, not a list.' },
2452
+ floor: { type: 'string', description: "set: the floor COLOUR, for kind 'room'." },
2453
+ wall: { type: 'string', description: "set: the wall COLOUR, for kind 'room'." },
2346
2454
  },
2347
2455
  required: ['action'],
2348
2456
  },
@@ -6709,7 +6817,7 @@ S6 Procedural (seeded, OKLCH palettes, curated presets, optional Motion). All ta
6709
6817
  GPU / GLSL math-art (transpiled to a fragment shader, 60fps; all take renderScale 0.25–1, transparentBg, speed):
6710
6818
  - drawFormulaArt: type a math expression in x,y,t → scalar mapped through a 3-stop palette (formula, domain, color1/color2/color3). Try sin(x*5+t)*cos(y*3).
6711
6819
  - drawParametricCollection: N circles or line segments indexed by k, expressions in k,N,t — Yeganeh-style (mode: circles|lines, count, xExpression/yExpression/radiusExpression or x1..y2Expression, scale, palette, bgColor).
6712
- - drawShaderArt: paste your own GLSL fragment shader (fragmentSource; uniforms u_time, u_resolution, u_color1/2/3) or pick a preset.
6820
+ - drawShaderArt: a GLSL fragment shader. PASSING fragmentSource ALONE DOES NOTHING — preset defaults to 'wavefield' and wins, so your shader is ignored and a preset renders instead, reporting success. Pass preset: 'custom' to use fragmentSource verbatim. The shader is GLSL ES 3.00: inputs 'in vec2 v_uv', output 'out vec4 outColor' — NOT gl_FragColor, and there is no u_uv. Uniforms: u_time, u_resolution (vec2), u_color1/2/3 (vec3). Other presets: wavefield, gradient_glow, noise_clouds, voronoi, simplex_noise, perlin, pulsing_border. renderScale 0.25-1 (default 0.5) trades resolution for speed.
6713
6821
  - drawYeganehMountains: GLSL port of Hamid Naderi Yeganeh's "Mountains" (mountainCount, timeOffset, skyTop, skyBottom, ridgeColor, valleyColor).
6714
6822
 
6715
6823
  OKLCH seeded backgrounds (palette + seed → reproducible):
@@ -6729,18 +6837,7 @@ COMMON PARAMS (all generators):
6729
6837
  properties: {
6730
6838
  generatorName: {
6731
6839
  type: 'string',
6732
- enum: [
6733
- 'drawSunburst', 'drawSunsetScene', 'drawGrid', 'drawStackedCircles',
6734
- 'drawCircuit', 'drawWaves', 'drawPattern',
6735
- 'drawBokeh', 'drawGradientMesh', 'drawGeometricAbstract', 'drawWindField',
6736
- 'drawFluidFlow', 'drawOrganicFlow', 'drawNoiseTexture',
6737
- 'drawGlobeWireframe',
6738
- 'drawFunctionPlot', 'drawParametricCurve', 'drawSimulation',
6739
- 'drawSpectrumAnalyzer', 'draw3DSurface',
6740
- 'drawTruchet', 'drawHalftone', 'drawRibbons',
6741
- 'drawFormulaArt', 'drawParametricCollection', 'drawShaderArt', 'drawYeganehMountains',
6742
- 'drawBlobs', 'drawLowPoly', 'drawPeaks', 'drawScatter', 'drawStackedWaves', 'draw3DParametricCurve',
6743
- ],
6840
+ enum: [...GeneratorNameSchema.options],
6744
6841
  description: 'Generator name',
6745
6842
  },
6746
6843
  params: {
@@ -6804,6 +6901,15 @@ USE WHEN:
6804
6901
  - Celebration effects (confetti)
6805
6902
  - Enhancing visual impact (ripple, glow, electric)
6806
6903
 
6904
+ SIZE IS A MULTIPLIER, NOT PIXELS — and this is the one that bites hardest.
6905
+ Every effect derives its scale from the ITEM'S OWN BOUNDS, and 'size' multiplies
6906
+ that. glow computes a radius from max(width, height) and pulses it to
6907
+ '1 + (size - 1)', so size: 30 on a modest item asks for a disc thousands of
6908
+ pixels across, gets one, and reports success. Typical values are 1.5 to 3 —
6909
+ glow's own default is 1.5. Pass a pixel count here and you will be wrong by
6910
+ about two orders of magnitude. A recent studio warns about it
6911
+ (kind: 'glow-size-unit'); an older one does not.
6912
+
6807
6913
  EFFECTS (15 particle + 7 shader auras):
6808
6914
  - sparkle: Glitter/sparkle particles (color, speed, size)
6809
6915
  - blast: Explosion burst effect (color, radius, count)
@@ -7581,14 +7687,14 @@ EXAMPLE — Animated sky scene with timed reveals:
7581
7687
  backgroundColor: { type: 'string', description: 'For set_background: hex color' },
7582
7688
  generatorName: {
7583
7689
  type: 'string',
7584
- enum: ['drawSunburst', 'drawSunsetScene', 'drawGrid', 'drawWaves', 'drawCircuit', 'drawStackedCircles', 'drawPattern', 'drawBokeh', 'drawGradientMesh', 'drawGeometricAbstract', 'drawWindField', 'drawFluidFlow', 'drawOrganicFlow', 'drawNoiseTexture', 'drawGlobeWireframe'],
7690
+ enum: [...GeneratorNameSchema.options],
7585
7691
  description: 'For execute_generator: generator name',
7586
7692
  },
7587
7693
  generatorParams: { type: 'object', description: 'For execute_generator: parameters' },
7588
7694
  // Items
7589
7695
  itemType: {
7590
7696
  type: 'string',
7591
- enum: ['text', 'circle', 'rectangle', 'star', 'triangle', 'polygon', 'ellipse', 'path', 'line', 'arc', 'pentagon', 'hexagon', 'diamond', 'arrow', 'heart'],
7697
+ enum: [...ItemTypeSchema.options],
7592
7698
  description: 'For create: item type',
7593
7699
  },
7594
7700
  position: {
@@ -7754,14 +7860,16 @@ EXAMPLES:
7754
7860
  - {platform: "instagram", format: "mp4"} — force MP4
7755
7861
  - {platform: "web", format: "svg"} — animated SVG
7756
7862
  - {platform: "youtube", format: "mp4", framing: "camera"} — render only what the camera frames during the walkthrough
7757
- - {platform: "youtube", format: "mp4", duration: 30, estimateOnly: true} — how big would that be? (renders nothing)`,
7863
+ - {platform: "youtube", format: "mp4", duration: 30, estimateOnly: true} — how big would that be, and what would it lose? (renders nothing)
7864
+
7865
+ Every export answers the second question too: where this scene loses something to the format you chose, the result carries "fidelity" naming it. Its ABSENCE means this scene has nothing that format would drop — not that the format is lossless.`,
7758
7866
  inputSchema: {
7759
7867
  type: 'object',
7760
7868
  properties: {
7761
7869
  platform: {
7762
7870
  type: 'string',
7763
- enum: ['instagram', 'instagram-story', 'tiktok', 'youtube', 'youtube-thumbnail', 'twitter', 'linkedin', 'web', 'print-a4', 'print-letter'],
7764
- description: 'Target platform for export',
7871
+ enum: ['auto', 'instagram', 'instagram-story', 'tiktok', 'youtube', 'youtube-thumbnail', 'twitter', 'linkedin', 'web', 'print-a4', 'print-letter'],
7872
+ description: "Target platform, which sets the output DIMENSIONS. 'auto' (the default) renders the canvas at its own size — use it when the canvas is already the size you want, otherwise a preset REPLACES your dimensions. Every other value forces that platform's frame regardless of the canvas.",
7765
7873
  },
7766
7874
  format: {
7767
7875
  type: 'string',
@@ -7780,7 +7888,19 @@ EXAMPLES:
7780
7888
  quality: {
7781
7889
  type: 'string',
7782
7890
  enum: ['draft', 'standard', 'high'],
7783
- description: 'Export quality level (default: standard)',
7891
+ description: 'Compression level (default: standard). It ALSO carries a default frame rate — draft 15, standard 30, high 60 — so "high" doubles the frame count and the render time against "standard" unless you set fps yourself. Set fps and scale to control those halves directly and leave quality meaning compression.',
7892
+ },
7893
+ fps: {
7894
+ type: 'integer',
7895
+ minimum: 1,
7896
+ maximum: 120,
7897
+ description: 'Video only: frames per second, overriding whatever `quality` implies. File size is bitrate x duration and does not move with fps, but the picture gets fewer bits per frame at a higher one.',
7898
+ },
7899
+ scale: {
7900
+ type: 'number',
7901
+ minimum: 0.1,
7902
+ maximum: 1,
7903
+ description: 'Video only: render at this fraction of the platform preset dimensions (0.1-1). The engine derives its encode target from RESOLUTION, so this is the size control — there is no bitrate to set, and halving the frame roughly quarters the pixels and the file. It is also the preview knob: scale 0.5 with quality "draft" is the fast look-check before committing to a full render. Rounded to even dimensions, which H.264 requires.',
7784
7904
  },
7785
7905
  framing: {
7786
7906
  type: 'string',
@@ -7789,7 +7909,7 @@ EXAMPLES:
7789
7909
  },
7790
7910
  estimateOnly: {
7791
7911
  type: 'boolean',
7792
- description: 'Preflight only — return the estimated file size for these exact settings and render nothing. Modeled for mp4/webm/gif; png/pdf/svg report confidence "none" (no dimension-based model exists for them); wav reports confidence "exact", because uncompressed PCM size is arithmetic.',
7912
+ description: 'Preflight only — return the estimated file size for these exact settings and render nothing. Modeled for mp4/webm/gif; png/pdf/svg report confidence "none" (no dimension-based model exists for them); wav reports confidence "exact", because uncompressed PCM size is arithmetic. Also answers what THIS scene would lose to this format — a png of an animated scene is one frame, a gif drops the soundtrack — under "fidelity", which is present only when there is something to lose.',
7793
7913
  },
7794
7914
  duration: {
7795
7915
  type: 'number',
@@ -7798,7 +7918,10 @@ EXAMPLES:
7798
7918
  description: 'Video duration in seconds for mp4/webm/gif (default 5). Max 60 for mp4/webm; GIF is capped at 15 because it has no bitrate target, so size scales with frames × dimensions — use mp4/webm for longer clips. Static formats ignore this. If you set play_timeline to N seconds, pass the same N here.',
7799
7919
  },
7800
7920
  },
7801
- required: ['platform'],
7921
+ // Nothing is required: platform defaults to 'auto', which is the canvas's
7922
+ // own size. Requiring it forced every caller to pick a preset, and a
7923
+ // preset silently replaces the dimensions they had already chosen.
7924
+ required: [],
7802
7925
  },
7803
7926
  },
7804
7927
  {
@@ -8196,7 +8319,7 @@ QUERIES (14):
8196
8319
  Listing:
8197
8320
  - list_types: All item types (filter by category, includeAbstract)
8198
8321
  - list_edges: All relation/edge types (filter by category)
8199
- - list_generators: the BUILT-IN background generators, from a fixed table in the engine. It is not a view of what is registered: a generator you registered at runtime will never appear here, and neither will a custom draw function. Use it to discover the built-ins and their parameters, not to check whether something exists.
8322
+ - list_generators: every generator the engine can run — the built-ins AND the registry, merged and awaited, which on a current studio is about 74 rather than the 3 this once reported. A generator you registered at runtime DOES appear. A custom draw function passed to execute_generator does not, because it was never registered; that is the one gap. If the registry chunk has not finished loading the result says partial: true and names the retry rather than presenting the built-ins as the whole set, and an older studio that cannot merge the registry answers with the built-ins under that same flag.
8200
8323
  - list_effects: All visual effect types
8201
8324
  - list_patterns: All detected design patterns
8202
8325
  - list_math_functions: All math functions used in animations