@pinepaper.studio/mcp-server 1.3.1 → 1.3.3
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/taxonomy/classifier.d.ts +74 -0
- package/dist/taxonomy/classifier.d.ts.map +1 -0
- package/dist/taxonomy/classifier.js +448 -0
- package/dist/taxonomy/classifier.js.map +1 -0
- package/dist/taxonomy/error-recovery.d.ts +55 -0
- package/dist/taxonomy/error-recovery.d.ts.map +1 -0
- package/dist/taxonomy/error-recovery.js +205 -0
- package/dist/taxonomy/error-recovery.js.map +1 -0
- package/dist/taxonomy/index.d.ts +24 -0
- package/dist/taxonomy/index.d.ts.map +1 -0
- package/dist/taxonomy/index.js +25 -0
- package/dist/taxonomy/index.js.map +1 -0
- package/dist/taxonomy/matcher.d.ts +104 -0
- package/dist/taxonomy/matcher.d.ts.map +1 -0
- package/dist/taxonomy/matcher.js +473 -0
- package/dist/taxonomy/matcher.js.map +1 -0
- package/dist/taxonomy/registry.d.ts +56 -0
- package/dist/taxonomy/registry.d.ts.map +1 -0
- package/dist/taxonomy/registry.js +950 -0
- package/dist/taxonomy/registry.js.map +1 -0
- package/dist/taxonomy/types.d.ts +207 -0
- package/dist/taxonomy/types.d.ts.map +1 -0
- package/dist/taxonomy/types.js +29 -0
- package/dist/taxonomy/types.js.map +1 -0
- package/dist/tools/definitions.d.ts.map +1 -1
- package/dist/tools/definitions.js +409 -0
- package/dist/tools/definitions.js.map +1 -1
- package/dist/tools/handlers.d.ts.map +1 -1
- package/dist/tools/handlers.js +10 -1
- package/dist/tools/handlers.js.map +1 -1
- package/dist/types/code-generator.d.ts +5 -1
- package/dist/types/code-generator.d.ts.map +1 -1
- package/dist/types/code-generator.js +168 -1
- package/dist/types/code-generator.js.map +1 -1
- package/dist/types/schemas.d.ts +219 -0
- package/dist/types/schemas.d.ts.map +1 -1
- package/dist/types/schemas.js +51 -0
- package/dist/types/schemas.js.map +1 -1
- package/manifest.json +6 -1
- package/package.json +1 -1
|
@@ -149,6 +149,13 @@ export const PINEPAPER_TOOLS = [
|
|
|
149
149
|
// ---------------------------------------------------------------------------
|
|
150
150
|
{
|
|
151
151
|
name: 'pinepaper_create_item',
|
|
152
|
+
annotations: {
|
|
153
|
+
title: 'Create Item',
|
|
154
|
+
readOnlyHint: false,
|
|
155
|
+
destructiveHint: false,
|
|
156
|
+
idempotentHint: false,
|
|
157
|
+
openWorldHint: false,
|
|
158
|
+
},
|
|
152
159
|
description: `Create an item on the PinePaper canvas. Returns an itemId (e.g., "item_1") that you MUST save to reference this item later.
|
|
153
160
|
|
|
154
161
|
USE WHEN:
|
|
@@ -231,6 +238,13 @@ For glossy 3D spheres, use pinepaper_create_glossy_sphere instead. For diagonal
|
|
|
231
238
|
},
|
|
232
239
|
{
|
|
233
240
|
name: 'pinepaper_modify_item',
|
|
241
|
+
annotations: {
|
|
242
|
+
title: 'Modify Item',
|
|
243
|
+
readOnlyHint: false,
|
|
244
|
+
destructiveHint: false,
|
|
245
|
+
idempotentHint: true,
|
|
246
|
+
openWorldHint: false,
|
|
247
|
+
},
|
|
234
248
|
description: `Modify an existing item's properties.
|
|
235
249
|
|
|
236
250
|
USE WHEN:
|
|
@@ -274,6 +288,13 @@ GRADIENT OBJECT FORMAT:
|
|
|
274
288
|
},
|
|
275
289
|
{
|
|
276
290
|
name: 'pinepaper_delete_item',
|
|
291
|
+
annotations: {
|
|
292
|
+
title: 'Delete Item',
|
|
293
|
+
readOnlyHint: false,
|
|
294
|
+
destructiveHint: true,
|
|
295
|
+
idempotentHint: true,
|
|
296
|
+
openWorldHint: false,
|
|
297
|
+
},
|
|
277
298
|
description: `Delete a single item from the canvas by its registry ID.
|
|
278
299
|
|
|
279
300
|
USE WHEN:
|
|
@@ -309,6 +330,13 @@ Use pinepaper_clear_canvas instead of deleting items one by one.`,
|
|
|
309
330
|
// ---------------------------------------------------------------------------
|
|
310
331
|
{
|
|
311
332
|
name: 'pinepaper_create_glossy_sphere',
|
|
333
|
+
annotations: {
|
|
334
|
+
title: 'Create Glossy Sphere',
|
|
335
|
+
readOnlyHint: false,
|
|
336
|
+
destructiveHint: false,
|
|
337
|
+
idempotentHint: false,
|
|
338
|
+
openWorldHint: false,
|
|
339
|
+
},
|
|
312
340
|
description: `Create a 3D-looking glossy sphere with realistic lighting effects. This is a HIGH-LEVEL tool that creates a complete glossy sphere with radial gradient, specular highlights, and optional shadow - all in one operation.
|
|
313
341
|
|
|
314
342
|
USE WHEN:
|
|
@@ -375,6 +403,13 @@ EXAMPLES:
|
|
|
375
403
|
},
|
|
376
404
|
{
|
|
377
405
|
name: 'pinepaper_create_diagonal_stripes',
|
|
406
|
+
annotations: {
|
|
407
|
+
title: 'Create Diagonal Stripes',
|
|
408
|
+
readOnlyHint: false,
|
|
409
|
+
destructiveHint: false,
|
|
410
|
+
idempotentHint: false,
|
|
411
|
+
openWorldHint: false,
|
|
412
|
+
},
|
|
378
413
|
description: `Create a diagonal stripe pattern. This is a HIGH-LEVEL tool that creates multiple stripes at an angle with automatic clipping to a rectangular area.
|
|
379
414
|
|
|
380
415
|
USE WHEN:
|
|
@@ -437,11 +472,175 @@ EXAMPLES:
|
|
|
437
472
|
required: ['width', 'height', 'colors'],
|
|
438
473
|
},
|
|
439
474
|
},
|
|
475
|
+
{
|
|
476
|
+
name: 'pinepaper_create_scene',
|
|
477
|
+
annotations: {
|
|
478
|
+
title: 'Create Scene',
|
|
479
|
+
readOnlyHint: false,
|
|
480
|
+
destructiveHint: false,
|
|
481
|
+
idempotentHint: false,
|
|
482
|
+
openWorldHint: false,
|
|
483
|
+
},
|
|
484
|
+
description: `Create a complete scene with multiple items, relations, and animations in a single operation. This is the MOST EFFICIENT way to create complex animated scenes.
|
|
485
|
+
|
|
486
|
+
USE WHEN:
|
|
487
|
+
- Creating a solar system, bouncing balls, or any multi-item animated scene
|
|
488
|
+
- User describes a scene with multiple related elements
|
|
489
|
+
- Performance is important (reduces 4+ tool calls to 1)
|
|
490
|
+
- Setting up multiple items that will interact with each other
|
|
491
|
+
|
|
492
|
+
ADVANTAGES:
|
|
493
|
+
- 4-8x faster than calling individual tools
|
|
494
|
+
- Single undo step for entire scene
|
|
495
|
+
- Automatic name-to-ID mapping for relations
|
|
496
|
+
- Cleaner, more atomic scene creation
|
|
497
|
+
|
|
498
|
+
HOW IT WORKS:
|
|
499
|
+
1. Define items with "name" references (e.g., "sun", "earth", "moon")
|
|
500
|
+
2. Define relations using those names (e.g., source: "earth", target: "sun")
|
|
501
|
+
3. Define animations using names (e.g., target: "sun", type: "pulse")
|
|
502
|
+
4. The server creates all items, then establishes relations and animations
|
|
503
|
+
|
|
504
|
+
EXAMPLE - Solar System:
|
|
505
|
+
{
|
|
506
|
+
"backgroundColor": "#0a0a0a",
|
|
507
|
+
"items": [
|
|
508
|
+
{ "name": "sun", "itemType": "circle", "position": {"x": 400, "y": 300}, "properties": {"radius": 50, "color": "#fbbf24"} },
|
|
509
|
+
{ "name": "earth", "itemType": "circle", "position": {"x": 550, "y": 300}, "properties": {"radius": 20, "color": "#3b82f6"} },
|
|
510
|
+
{ "name": "moon", "itemType": "circle", "position": {"x": 590, "y": 300}, "properties": {"radius": 8, "color": "#9ca3af"} }
|
|
511
|
+
],
|
|
512
|
+
"relations": [
|
|
513
|
+
{ "source": "earth", "target": "sun", "type": "orbits", "params": {"radius": 150, "speed": 0.5} },
|
|
514
|
+
{ "source": "moon", "target": "earth", "type": "orbits", "params": {"radius": 40, "speed": 1.5} }
|
|
515
|
+
],
|
|
516
|
+
"animations": [
|
|
517
|
+
{ "target": "sun", "type": "pulse", "speed": 0.3 }
|
|
518
|
+
]
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
EXAMPLE - Bouncing Balls:
|
|
522
|
+
{
|
|
523
|
+
"backgroundColor": "#1e293b",
|
|
524
|
+
"items": [
|
|
525
|
+
{ "name": "ball1", "itemType": "circle", "position": {"x": 200, "y": 300}, "properties": {"radius": 30, "color": "#ef4444"} },
|
|
526
|
+
{ "name": "ball2", "itemType": "circle", "position": {"x": 400, "y": 300}, "properties": {"radius": 30, "color": "#22c55e"} },
|
|
527
|
+
{ "name": "ball3", "itemType": "circle", "position": {"x": 600, "y": 300}, "properties": {"radius": 30, "color": "#3b82f6"} }
|
|
528
|
+
],
|
|
529
|
+
"animations": [
|
|
530
|
+
{ "target": "ball1", "type": "bounce", "speed": 1.0 },
|
|
531
|
+
{ "target": "ball2", "type": "bounce", "speed": 0.8 },
|
|
532
|
+
{ "target": "ball3", "type": "bounce", "speed": 1.2 }
|
|
533
|
+
]
|
|
534
|
+
}
|
|
535
|
+
|
|
536
|
+
SUPPORTED ITEM TYPES: text, circle, star, rectangle, triangle, polygon, ellipse, path, line, arc
|
|
537
|
+
SUPPORTED RELATIONS: orbits, follows, attached_to, maintains_distance, points_at, mirrors, parallax, bounds_to
|
|
538
|
+
SUPPORTED ANIMATIONS: pulse, rotate, bounce, fade, wobble, slide, typewriter`,
|
|
539
|
+
inputSchema: {
|
|
540
|
+
type: 'object',
|
|
541
|
+
properties: {
|
|
542
|
+
items: {
|
|
543
|
+
type: 'array',
|
|
544
|
+
items: {
|
|
545
|
+
type: 'object',
|
|
546
|
+
properties: {
|
|
547
|
+
name: {
|
|
548
|
+
type: 'string',
|
|
549
|
+
description: 'Reference name for this item (used in relations/animations)',
|
|
550
|
+
},
|
|
551
|
+
itemType: {
|
|
552
|
+
type: 'string',
|
|
553
|
+
enum: ['text', 'circle', 'star', 'rectangle', 'triangle', 'polygon', 'ellipse', 'path', 'line', 'arc'],
|
|
554
|
+
description: 'Type of item to create',
|
|
555
|
+
},
|
|
556
|
+
position: {
|
|
557
|
+
type: 'object',
|
|
558
|
+
properties: {
|
|
559
|
+
x: { type: 'number' },
|
|
560
|
+
y: { type: 'number' },
|
|
561
|
+
},
|
|
562
|
+
description: 'Position on canvas',
|
|
563
|
+
},
|
|
564
|
+
properties: {
|
|
565
|
+
type: 'object',
|
|
566
|
+
description: 'Item-specific properties (color, radius, content, etc.)',
|
|
567
|
+
additionalProperties: true,
|
|
568
|
+
},
|
|
569
|
+
},
|
|
570
|
+
required: ['name', 'itemType'],
|
|
571
|
+
},
|
|
572
|
+
description: 'Array of items to create with reference names',
|
|
573
|
+
},
|
|
574
|
+
relations: {
|
|
575
|
+
type: 'array',
|
|
576
|
+
items: {
|
|
577
|
+
type: 'object',
|
|
578
|
+
properties: {
|
|
579
|
+
source: { type: 'string', description: 'Name of source item' },
|
|
580
|
+
target: { type: 'string', description: 'Name of target item' },
|
|
581
|
+
type: {
|
|
582
|
+
type: 'string',
|
|
583
|
+
enum: ['orbits', 'follows', 'attached_to', 'maintains_distance', 'points_at', 'mirrors', 'parallax', 'bounds_to'],
|
|
584
|
+
},
|
|
585
|
+
params: {
|
|
586
|
+
type: 'object',
|
|
587
|
+
description: 'Relation parameters (radius, speed, distance, etc.)',
|
|
588
|
+
additionalProperties: true,
|
|
589
|
+
},
|
|
590
|
+
},
|
|
591
|
+
required: ['source', 'target', 'type'],
|
|
592
|
+
},
|
|
593
|
+
description: 'Relations between items',
|
|
594
|
+
},
|
|
595
|
+
animations: {
|
|
596
|
+
type: 'array',
|
|
597
|
+
items: {
|
|
598
|
+
type: 'object',
|
|
599
|
+
properties: {
|
|
600
|
+
target: { type: 'string', description: 'Name of item to animate' },
|
|
601
|
+
type: {
|
|
602
|
+
type: 'string',
|
|
603
|
+
enum: ['pulse', 'rotate', 'bounce', 'fade', 'wobble', 'slide', 'typewriter'],
|
|
604
|
+
},
|
|
605
|
+
speed: { type: 'number', description: 'Animation speed (default: 1.0)' },
|
|
606
|
+
params: {
|
|
607
|
+
type: 'object',
|
|
608
|
+
description: 'Animation-specific parameters',
|
|
609
|
+
additionalProperties: true,
|
|
610
|
+
},
|
|
611
|
+
},
|
|
612
|
+
required: ['target', 'type'],
|
|
613
|
+
},
|
|
614
|
+
description: 'Animations to apply to items',
|
|
615
|
+
},
|
|
616
|
+
backgroundColor: {
|
|
617
|
+
type: 'string',
|
|
618
|
+
description: 'Background color for the scene (hex, rgb, or named)',
|
|
619
|
+
},
|
|
620
|
+
backgroundGenerator: {
|
|
621
|
+
type: 'string',
|
|
622
|
+
description: 'Name of generator to use for background (e.g., "drawSunburst")',
|
|
623
|
+
},
|
|
624
|
+
clearFirst: {
|
|
625
|
+
type: 'boolean',
|
|
626
|
+
description: 'Clear canvas before creating scene (default: true)',
|
|
627
|
+
},
|
|
628
|
+
},
|
|
629
|
+
required: ['items'],
|
|
630
|
+
},
|
|
631
|
+
},
|
|
440
632
|
// ---------------------------------------------------------------------------
|
|
441
633
|
// BATCH OPERATION TOOLS
|
|
442
634
|
// ---------------------------------------------------------------------------
|
|
443
635
|
{
|
|
444
636
|
name: 'pinepaper_batch_create',
|
|
637
|
+
annotations: {
|
|
638
|
+
title: 'Batch Create Items',
|
|
639
|
+
readOnlyHint: false,
|
|
640
|
+
destructiveHint: false,
|
|
641
|
+
idempotentHint: false,
|
|
642
|
+
openWorldHint: false,
|
|
643
|
+
},
|
|
445
644
|
description: `Create multiple items at once with a single history save. This is more efficient than creating items one by one.
|
|
446
645
|
|
|
447
646
|
USE WHEN:
|
|
@@ -489,6 +688,13 @@ items: [
|
|
|
489
688
|
},
|
|
490
689
|
{
|
|
491
690
|
name: 'pinepaper_batch_modify',
|
|
691
|
+
annotations: {
|
|
692
|
+
title: 'Batch Modify Items',
|
|
693
|
+
readOnlyHint: false,
|
|
694
|
+
destructiveHint: false,
|
|
695
|
+
idempotentHint: true,
|
|
696
|
+
openWorldHint: false,
|
|
697
|
+
},
|
|
492
698
|
description: `Modify multiple items at once with a single history save. This is more efficient than modifying items one by one.
|
|
493
699
|
|
|
494
700
|
USE WHEN:
|
|
@@ -535,6 +741,13 @@ modifications: [
|
|
|
535
741
|
},
|
|
536
742
|
{
|
|
537
743
|
name: 'pinepaper_create_grid',
|
|
744
|
+
annotations: {
|
|
745
|
+
title: 'Create Grid',
|
|
746
|
+
readOnlyHint: false,
|
|
747
|
+
destructiveHint: false,
|
|
748
|
+
idempotentHint: false,
|
|
749
|
+
openWorldHint: false,
|
|
750
|
+
},
|
|
538
751
|
description: `Create a grid of lines on the canvas. This is a convenience method that handles all coordinate calculations automatically.
|
|
539
752
|
|
|
540
753
|
USE WHEN:
|
|
@@ -592,6 +805,13 @@ EXAMPLE:
|
|
|
592
805
|
// ---------------------------------------------------------------------------
|
|
593
806
|
{
|
|
594
807
|
name: 'pinepaper_add_relation',
|
|
808
|
+
annotations: {
|
|
809
|
+
title: 'Add Relation',
|
|
810
|
+
readOnlyHint: false,
|
|
811
|
+
destructiveHint: false,
|
|
812
|
+
idempotentHint: true,
|
|
813
|
+
openWorldHint: false,
|
|
814
|
+
},
|
|
595
815
|
description: `Create a behavior relationship between two items. Relations are the PRIMARY way to add animation in PinePaper - they describe HOW items should behave relative to each other.
|
|
596
816
|
|
|
597
817
|
USE WHEN:
|
|
@@ -649,6 +869,13 @@ Relations are COMPOSITIONAL - an item can have multiple relations that work toge
|
|
|
649
869
|
},
|
|
650
870
|
{
|
|
651
871
|
name: 'pinepaper_remove_relation',
|
|
872
|
+
annotations: {
|
|
873
|
+
title: 'Remove Relation',
|
|
874
|
+
readOnlyHint: false,
|
|
875
|
+
destructiveHint: true,
|
|
876
|
+
idempotentHint: true,
|
|
877
|
+
openWorldHint: false,
|
|
878
|
+
},
|
|
652
879
|
description: `Remove a relationship between items.
|
|
653
880
|
|
|
654
881
|
USE WHEN:
|
|
@@ -671,6 +898,13 @@ USE WHEN:
|
|
|
671
898
|
},
|
|
672
899
|
{
|
|
673
900
|
name: 'pinepaper_query_relations',
|
|
901
|
+
annotations: {
|
|
902
|
+
title: 'Query Relations',
|
|
903
|
+
readOnlyHint: true,
|
|
904
|
+
destructiveHint: false,
|
|
905
|
+
idempotentHint: true,
|
|
906
|
+
openWorldHint: false,
|
|
907
|
+
},
|
|
674
908
|
description: `Query relationships for an item.
|
|
675
909
|
|
|
676
910
|
USE WHEN:
|
|
@@ -700,6 +934,13 @@ USE WHEN:
|
|
|
700
934
|
// ---------------------------------------------------------------------------
|
|
701
935
|
{
|
|
702
936
|
name: 'pinepaper_animate',
|
|
937
|
+
annotations: {
|
|
938
|
+
title: 'Animate Item',
|
|
939
|
+
readOnlyHint: false,
|
|
940
|
+
destructiveHint: false,
|
|
941
|
+
idempotentHint: true,
|
|
942
|
+
openWorldHint: false,
|
|
943
|
+
},
|
|
703
944
|
description: `Apply a simple LOOP animation to an item. These are continuous animations that repeat infinitely.
|
|
704
945
|
|
|
705
946
|
USE WHEN:
|
|
@@ -743,6 +984,13 @@ ANIMATION TYPES:
|
|
|
743
984
|
},
|
|
744
985
|
{
|
|
745
986
|
name: 'pinepaper_keyframe_animate',
|
|
987
|
+
annotations: {
|
|
988
|
+
title: 'Keyframe Animation',
|
|
989
|
+
readOnlyHint: false,
|
|
990
|
+
destructiveHint: false,
|
|
991
|
+
idempotentHint: true,
|
|
992
|
+
openWorldHint: false,
|
|
993
|
+
},
|
|
746
994
|
description: `Apply keyframe-based animation with precise timing and property control.
|
|
747
995
|
|
|
748
996
|
USE WHEN:
|
|
@@ -808,6 +1056,13 @@ EASING OPTIONS:
|
|
|
808
1056
|
},
|
|
809
1057
|
{
|
|
810
1058
|
name: 'pinepaper_play_timeline',
|
|
1059
|
+
annotations: {
|
|
1060
|
+
title: 'Play Timeline',
|
|
1061
|
+
readOnlyHint: false,
|
|
1062
|
+
destructiveHint: false,
|
|
1063
|
+
idempotentHint: false,
|
|
1064
|
+
openWorldHint: false,
|
|
1065
|
+
},
|
|
811
1066
|
description: `Control keyframe animation playback.
|
|
812
1067
|
|
|
813
1068
|
USE WHEN:
|
|
@@ -843,6 +1098,13 @@ USE WHEN:
|
|
|
843
1098
|
// ---------------------------------------------------------------------------
|
|
844
1099
|
{
|
|
845
1100
|
name: 'pinepaper_execute_generator',
|
|
1101
|
+
annotations: {
|
|
1102
|
+
title: 'Execute Generator',
|
|
1103
|
+
readOnlyHint: false,
|
|
1104
|
+
destructiveHint: false,
|
|
1105
|
+
idempotentHint: false,
|
|
1106
|
+
openWorldHint: false,
|
|
1107
|
+
},
|
|
846
1108
|
description: `Execute a background generator to create procedural patterns.
|
|
847
1109
|
|
|
848
1110
|
USE WHEN:
|
|
@@ -879,6 +1141,13 @@ GENERATORS:
|
|
|
879
1141
|
},
|
|
880
1142
|
{
|
|
881
1143
|
name: 'pinepaper_list_generators',
|
|
1144
|
+
annotations: {
|
|
1145
|
+
title: 'List Generators',
|
|
1146
|
+
readOnlyHint: true,
|
|
1147
|
+
destructiveHint: false,
|
|
1148
|
+
idempotentHint: true,
|
|
1149
|
+
openWorldHint: false,
|
|
1150
|
+
},
|
|
882
1151
|
description: `Get a list of all available background generators with their parameters.
|
|
883
1152
|
|
|
884
1153
|
USE WHEN:
|
|
@@ -895,6 +1164,13 @@ USE WHEN:
|
|
|
895
1164
|
// ---------------------------------------------------------------------------
|
|
896
1165
|
{
|
|
897
1166
|
name: 'pinepaper_apply_effect',
|
|
1167
|
+
annotations: {
|
|
1168
|
+
title: 'Apply Effect',
|
|
1169
|
+
readOnlyHint: false,
|
|
1170
|
+
destructiveHint: false,
|
|
1171
|
+
idempotentHint: false,
|
|
1172
|
+
openWorldHint: false,
|
|
1173
|
+
},
|
|
898
1174
|
description: `Apply a visual effect to an item.
|
|
899
1175
|
|
|
900
1176
|
USE WHEN:
|
|
@@ -928,6 +1204,13 @@ EFFECTS:
|
|
|
928
1204
|
// ---------------------------------------------------------------------------
|
|
929
1205
|
{
|
|
930
1206
|
name: 'pinepaper_get_items',
|
|
1207
|
+
annotations: {
|
|
1208
|
+
title: 'Get Items',
|
|
1209
|
+
readOnlyHint: true,
|
|
1210
|
+
destructiveHint: false,
|
|
1211
|
+
idempotentHint: true,
|
|
1212
|
+
openWorldHint: false,
|
|
1213
|
+
},
|
|
931
1214
|
description: `Get all or filtered items from the canvas.
|
|
932
1215
|
|
|
933
1216
|
USE WHEN:
|
|
@@ -966,6 +1249,13 @@ USE WHEN:
|
|
|
966
1249
|
},
|
|
967
1250
|
{
|
|
968
1251
|
name: 'pinepaper_get_relation_stats',
|
|
1252
|
+
annotations: {
|
|
1253
|
+
title: 'Get Relation Stats',
|
|
1254
|
+
readOnlyHint: true,
|
|
1255
|
+
destructiveHint: false,
|
|
1256
|
+
idempotentHint: true,
|
|
1257
|
+
openWorldHint: false,
|
|
1258
|
+
},
|
|
969
1259
|
description: `Get statistics about active relations in the scene.
|
|
970
1260
|
|
|
971
1261
|
USE WHEN:
|
|
@@ -982,6 +1272,13 @@ USE WHEN:
|
|
|
982
1272
|
// ---------------------------------------------------------------------------
|
|
983
1273
|
{
|
|
984
1274
|
name: 'pinepaper_set_background_color',
|
|
1275
|
+
annotations: {
|
|
1276
|
+
title: 'Set Background Color',
|
|
1277
|
+
readOnlyHint: false,
|
|
1278
|
+
destructiveHint: false,
|
|
1279
|
+
idempotentHint: true,
|
|
1280
|
+
openWorldHint: false,
|
|
1281
|
+
},
|
|
985
1282
|
description: `Set the canvas background color.
|
|
986
1283
|
|
|
987
1284
|
USE WHEN:
|
|
@@ -1000,6 +1297,13 @@ USE WHEN:
|
|
|
1000
1297
|
},
|
|
1001
1298
|
{
|
|
1002
1299
|
name: 'pinepaper_set_canvas_size',
|
|
1300
|
+
annotations: {
|
|
1301
|
+
title: 'Set Canvas Size',
|
|
1302
|
+
readOnlyHint: false,
|
|
1303
|
+
destructiveHint: false,
|
|
1304
|
+
idempotentHint: true,
|
|
1305
|
+
openWorldHint: false,
|
|
1306
|
+
},
|
|
1003
1307
|
description: `Change the canvas dimensions.
|
|
1004
1308
|
|
|
1005
1309
|
IMPORTANT: Call this BEFORE creating items if you need a specific canvas size. The default canvas is 800x600 which may be too small for complex designs.
|
|
@@ -1034,6 +1338,13 @@ For wedding invitations, event cards, or detailed designs, use at least 1080x108
|
|
|
1034
1338
|
},
|
|
1035
1339
|
{
|
|
1036
1340
|
name: 'pinepaper_get_canvas_size',
|
|
1341
|
+
annotations: {
|
|
1342
|
+
title: 'Get Canvas Size',
|
|
1343
|
+
readOnlyHint: true,
|
|
1344
|
+
destructiveHint: false,
|
|
1345
|
+
idempotentHint: true,
|
|
1346
|
+
openWorldHint: false,
|
|
1347
|
+
},
|
|
1037
1348
|
description: `Get the current canvas dimensions.
|
|
1038
1349
|
|
|
1039
1350
|
USE WHEN:
|
|
@@ -1047,6 +1358,13 @@ USE WHEN:
|
|
|
1047
1358
|
},
|
|
1048
1359
|
{
|
|
1049
1360
|
name: 'pinepaper_clear_canvas',
|
|
1361
|
+
annotations: {
|
|
1362
|
+
title: 'Clear Canvas',
|
|
1363
|
+
readOnlyHint: false,
|
|
1364
|
+
destructiveHint: true,
|
|
1365
|
+
idempotentHint: true,
|
|
1366
|
+
openWorldHint: false,
|
|
1367
|
+
},
|
|
1050
1368
|
description: `Clear all items from the canvas, removing everything including any welcome template items.
|
|
1051
1369
|
|
|
1052
1370
|
USE WHEN:
|
|
@@ -1067,6 +1385,13 @@ IMPORTANT NOTES:
|
|
|
1067
1385
|
},
|
|
1068
1386
|
{
|
|
1069
1387
|
name: 'pinepaper_refresh_page',
|
|
1388
|
+
annotations: {
|
|
1389
|
+
title: 'Refresh Page',
|
|
1390
|
+
readOnlyHint: false,
|
|
1391
|
+
destructiveHint: true,
|
|
1392
|
+
idempotentHint: true,
|
|
1393
|
+
openWorldHint: true,
|
|
1394
|
+
},
|
|
1070
1395
|
description: `Refresh the PinePaper Studio page in the browser. This is the most reliable way to get a completely clean canvas.
|
|
1071
1396
|
|
|
1072
1397
|
USE WHEN:
|
|
@@ -1092,6 +1417,13 @@ IMPORTANT NOTES:
|
|
|
1092
1417
|
// ---------------------------------------------------------------------------
|
|
1093
1418
|
{
|
|
1094
1419
|
name: 'pinepaper_import_svg',
|
|
1420
|
+
annotations: {
|
|
1421
|
+
title: 'Import SVG',
|
|
1422
|
+
readOnlyHint: false,
|
|
1423
|
+
destructiveHint: false,
|
|
1424
|
+
idempotentHint: false,
|
|
1425
|
+
openWorldHint: true,
|
|
1426
|
+
},
|
|
1095
1427
|
description: `Import an SVG string or SVG from URL onto the canvas. Returns an itemId for the imported graphic.
|
|
1096
1428
|
|
|
1097
1429
|
USE WHEN:
|
|
@@ -1145,6 +1477,13 @@ Returns the itemId of the imported SVG group, which can be used with pinepaper_a
|
|
|
1145
1477
|
// ---------------------------------------------------------------------------
|
|
1146
1478
|
{
|
|
1147
1479
|
name: 'pinepaper_add_filter',
|
|
1480
|
+
annotations: {
|
|
1481
|
+
title: 'Add Filter',
|
|
1482
|
+
readOnlyHint: false,
|
|
1483
|
+
destructiveHint: false,
|
|
1484
|
+
idempotentHint: false,
|
|
1485
|
+
openWorldHint: false,
|
|
1486
|
+
},
|
|
1148
1487
|
description: `Add a visual filter effect to the canvas. Filters are scene-wide effects that can be stacked.
|
|
1149
1488
|
|
|
1150
1489
|
USE WHEN:
|
|
@@ -1197,6 +1536,13 @@ Filters can be stacked - call multiple times to combine effects.`,
|
|
|
1197
1536
|
// ---------------------------------------------------------------------------
|
|
1198
1537
|
{
|
|
1199
1538
|
name: 'pinepaper_export_svg',
|
|
1539
|
+
annotations: {
|
|
1540
|
+
title: 'Export SVG',
|
|
1541
|
+
readOnlyHint: true,
|
|
1542
|
+
destructiveHint: false,
|
|
1543
|
+
idempotentHint: true,
|
|
1544
|
+
openWorldHint: false,
|
|
1545
|
+
},
|
|
1200
1546
|
description: `Export the scene as animated SVG.
|
|
1201
1547
|
|
|
1202
1548
|
USE WHEN:
|
|
@@ -1215,6 +1561,13 @@ USE WHEN:
|
|
|
1215
1561
|
},
|
|
1216
1562
|
{
|
|
1217
1563
|
name: 'pinepaper_export_training_data',
|
|
1564
|
+
annotations: {
|
|
1565
|
+
title: 'Export Training Data',
|
|
1566
|
+
readOnlyHint: true,
|
|
1567
|
+
destructiveHint: false,
|
|
1568
|
+
idempotentHint: true,
|
|
1569
|
+
openWorldHint: false,
|
|
1570
|
+
},
|
|
1218
1571
|
description: `Export relation data as training pairs for LLM fine-tuning. This generates instruction/code pairs from the current scene's relations.
|
|
1219
1572
|
|
|
1220
1573
|
USE WHEN:
|
|
@@ -1245,6 +1598,13 @@ OUTPUT FORMAT:
|
|
|
1245
1598
|
// ---------------------------------------------------------------------------
|
|
1246
1599
|
{
|
|
1247
1600
|
name: 'pinepaper_browser_connect',
|
|
1601
|
+
annotations: {
|
|
1602
|
+
title: 'Connect to Browser',
|
|
1603
|
+
readOnlyHint: false,
|
|
1604
|
+
destructiveHint: false,
|
|
1605
|
+
idempotentHint: true,
|
|
1606
|
+
openWorldHint: true,
|
|
1607
|
+
},
|
|
1248
1608
|
description: `Connect to PinePaper Studio Editor in a browser. This launches a browser window and navigates to the PinePaper Editor.
|
|
1249
1609
|
|
|
1250
1610
|
USE WHEN:
|
|
@@ -1271,6 +1631,13 @@ The browser will open and navigate to https://pinepaper.studio/editor where the
|
|
|
1271
1631
|
},
|
|
1272
1632
|
{
|
|
1273
1633
|
name: 'pinepaper_browser_disconnect',
|
|
1634
|
+
annotations: {
|
|
1635
|
+
title: 'Disconnect from Browser',
|
|
1636
|
+
readOnlyHint: false,
|
|
1637
|
+
destructiveHint: true,
|
|
1638
|
+
idempotentHint: true,
|
|
1639
|
+
openWorldHint: true,
|
|
1640
|
+
},
|
|
1274
1641
|
description: `Disconnect from the browser and close PinePaper Studio.
|
|
1275
1642
|
|
|
1276
1643
|
USE WHEN:
|
|
@@ -1284,6 +1651,13 @@ USE WHEN:
|
|
|
1284
1651
|
},
|
|
1285
1652
|
{
|
|
1286
1653
|
name: 'pinepaper_browser_screenshot',
|
|
1654
|
+
annotations: {
|
|
1655
|
+
title: 'Take Screenshot',
|
|
1656
|
+
readOnlyHint: true,
|
|
1657
|
+
destructiveHint: false,
|
|
1658
|
+
idempotentHint: true,
|
|
1659
|
+
openWorldHint: true,
|
|
1660
|
+
},
|
|
1287
1661
|
description: `Take a screenshot of the current PinePaper canvas.
|
|
1288
1662
|
|
|
1289
1663
|
USE WHEN:
|
|
@@ -1308,6 +1682,13 @@ Returns a base64-encoded PNG image of the canvas.`,
|
|
|
1308
1682
|
},
|
|
1309
1683
|
{
|
|
1310
1684
|
name: 'pinepaper_browser_status',
|
|
1685
|
+
annotations: {
|
|
1686
|
+
title: 'Browser Status',
|
|
1687
|
+
readOnlyHint: true,
|
|
1688
|
+
destructiveHint: false,
|
|
1689
|
+
idempotentHint: true,
|
|
1690
|
+
openWorldHint: true,
|
|
1691
|
+
},
|
|
1311
1692
|
description: `Check the current browser connection status.
|
|
1312
1693
|
|
|
1313
1694
|
USE WHEN:
|
|
@@ -1324,6 +1705,13 @@ USE WHEN:
|
|
|
1324
1705
|
// ---------------------------------------------------------------------------
|
|
1325
1706
|
{
|
|
1326
1707
|
name: 'pinepaper_get_performance_metrics',
|
|
1708
|
+
annotations: {
|
|
1709
|
+
title: 'Get Performance Metrics',
|
|
1710
|
+
readOnlyHint: true,
|
|
1711
|
+
destructiveHint: false,
|
|
1712
|
+
idempotentHint: true,
|
|
1713
|
+
openWorldHint: false,
|
|
1714
|
+
},
|
|
1327
1715
|
description: `Get execution performance metrics to identify bottlenecks and optimize workflows.
|
|
1328
1716
|
|
|
1329
1717
|
USE WHEN:
|
|
@@ -1415,6 +1803,13 @@ If you see significantly higher numbers, investigate:
|
|
|
1415
1803
|
// ---------------------------------------------------------------------------
|
|
1416
1804
|
{
|
|
1417
1805
|
name: 'pinepaper_search_assets',
|
|
1806
|
+
annotations: {
|
|
1807
|
+
title: 'Search Assets',
|
|
1808
|
+
readOnlyHint: true,
|
|
1809
|
+
destructiveHint: false,
|
|
1810
|
+
idempotentHint: true,
|
|
1811
|
+
openWorldHint: true,
|
|
1812
|
+
},
|
|
1418
1813
|
description: `Search for free SVG assets from open repositories (SVGRepo, OpenClipart, Iconify, FontAwesome).
|
|
1419
1814
|
|
|
1420
1815
|
USE WHEN:
|
|
@@ -1475,6 +1870,13 @@ PERFORMANCE:
|
|
|
1475
1870
|
},
|
|
1476
1871
|
{
|
|
1477
1872
|
name: 'pinepaper_import_asset',
|
|
1873
|
+
annotations: {
|
|
1874
|
+
title: 'Import Asset',
|
|
1875
|
+
readOnlyHint: false,
|
|
1876
|
+
destructiveHint: false,
|
|
1877
|
+
idempotentHint: false,
|
|
1878
|
+
openWorldHint: true,
|
|
1879
|
+
},
|
|
1478
1880
|
description: `Import an SVG asset from search results or direct URL onto the canvas.
|
|
1479
1881
|
|
|
1480
1882
|
USE WHEN:
|
|
@@ -1551,6 +1953,13 @@ RETURNS:
|
|
|
1551
1953
|
// ---------------------------------------------------------------------------
|
|
1552
1954
|
{
|
|
1553
1955
|
name: 'pinepaper_p5_draw',
|
|
1956
|
+
annotations: {
|
|
1957
|
+
title: 'p5.js Draw',
|
|
1958
|
+
readOnlyHint: false,
|
|
1959
|
+
destructiveHint: false,
|
|
1960
|
+
idempotentHint: false,
|
|
1961
|
+
openWorldHint: false,
|
|
1962
|
+
},
|
|
1554
1963
|
description: `Execute p5.js-style drawing code on the PinePaper canvas.
|
|
1555
1964
|
|
|
1556
1965
|
Claude can use familiar p5.js syntax - the code is translated to Paper.js automatically.
|