@excalimate/mcp-server 0.3.5 → 0.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.
- package/dist/httpServer.d.ts.map +1 -1
- package/dist/httpServer.js +4 -3
- package/dist/httpServer.js.map +1 -1
- package/dist/index.js +10 -5
- package/dist/index.js.map +1 -1
- package/dist/server/animationTools.d.ts.map +1 -1
- package/dist/server/animationTools.js +43 -63
- package/dist/server/animationTools.js.map +1 -1
- package/dist/server/compositeTools.d.ts +18 -0
- package/dist/server/compositeTools.d.ts.map +1 -0
- package/dist/server/compositeTools.js +209 -0
- package/dist/server/compositeTools.js.map +1 -0
- package/dist/server/referenceText.d.ts +2 -2
- package/dist/server/referenceText.d.ts.map +1 -1
- package/dist/server/referenceText.js +83 -254
- package/dist/server/referenceText.js.map +1 -1
- package/dist/server/sceneTools.d.ts.map +1 -1
- package/dist/server/sceneTools.js +2 -1
- package/dist/server/sceneTools.js.map +1 -1
- package/dist/server/stateContext.d.ts +36 -1
- package/dist/server/stateContext.d.ts.map +1 -1
- package/dist/server/stateContext.js +157 -13
- package/dist/server/stateContext.js.map +1 -1
- package/dist/server.d.ts +2 -2
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +4 -2
- package/dist/server.js.map +1 -1
- package/dist/state.d.ts +14 -0
- package/dist/state.d.ts.map +1 -1
- package/dist/state.js +57 -0
- package/dist/state.js.map +1 -1
- package/package.json +4 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compositeTools.js","sourceRoot":"","sources":["../../src/server/compositeTools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export declare const REFERENCE_TEXT = "# Excalimate
|
|
2
|
-
export declare const EXAMPLES_TEXT = "# Excalimate
|
|
1
|
+
export declare const REFERENCE_TEXT = "# Excalimate Reference\n\n## Element Format (base properties)\n{ id, type, x, y, width, height, strokeColor, backgroundColor, fillStyle, strokeWidth, opacity, groupIds, angle }\n\nTypes: rectangle, ellipse, diamond, arrow, line, text, freedraw, image\n\nText extra: { text, fontSize, fontFamily: 5, textAlign, verticalAlign }\nArrow/Line extra: { points: [[0,0],[dx,dy]], endArrowhead: \"arrow\"|null }\nBound text: text with containerId \u2192 shape with boundElements:[{id,type:\"text\"}]\n\n## Colors\nStroke: #1e1e1e #e03131 #2f9e44 #1971c2 #f08c00 #6741d9 #0c8599 #e8590c\nFill: transparent #ffc9c9 #b2f2bb #a5d8ff #ffec99 #d0bfff #99e9f2 #ffd8a8\n\n## Animation Properties\nopacity (0\u20131), translateX/Y (px), scaleX/Y (0.1+), rotation (deg), drawProgress (0\u20131, lines/arrows only)\n\n## Easings\nlinear, easeIn, easeOut, easeInOut, easeInQuad, easeOutQuad, easeInOutQuad,\neaseInCubic, easeOutCubic, easeInOutCubic, easeInBack, easeOutBack, easeInOutBack,\neaseInElastic, easeOutElastic, easeInBounce, easeOutBounce, step\n\n## Preferred Workflow\n1. Use **create_animated_scene** \u2014 one call for elements + keyframes + sequences + camera + clip range\n2. Use add_keyframes_batch or create_sequence for incremental changes\n3. Use save_checkpoint to persist\n4. Verify with animations_of_item, items_visible_in_camera, is_camera_centered\n\n## Key Tips\n- Set opacity 0 at time 0 for elements that appear later\n- Bound text inherits container animation\n- drawProgress only works on arrows/lines\n- easeOutBack = nice bounce; easeInOutCubic = best general-purpose\n- Camera: scale > 1 = zoomed out, < 1 = zoomed in\n- Set clip range before saving\n";
|
|
2
|
+
export declare const EXAMPLES_TEXT = "# Excalimate Examples\n\n## Complete Scene (preferred \u2014 one call)\n```\ncreate_animated_scene({\n elements: '[\n {\"id\":\"A\",\"type\":\"rectangle\",\"x\":100,\"y\":200,\"width\":150,\"height\":80,\"strokeColor\":\"#1e1e1e\",\"backgroundColor\":\"#b2f2bb\",\"fillStyle\":\"solid\",\"boundElements\":[{\"id\":\"A-label\",\"type\":\"text\"}]},\n {\"id\":\"A-label\",\"type\":\"text\",\"x\":120,\"y\":225,\"width\":110,\"height\":30,\"text\":\"Service A\",\"fontSize\":20,\"fontFamily\":5,\"textAlign\":\"center\",\"verticalAlign\":\"middle\",\"containerId\":\"A\"},\n {\"id\":\"B\",\"type\":\"rectangle\",\"x\":500,\"y\":200,\"width\":150,\"height\":80,\"strokeColor\":\"#1e1e1e\",\"backgroundColor\":\"#a5d8ff\",\"fillStyle\":\"solid\",\"boundElements\":[{\"id\":\"B-label\",\"type\":\"text\"}]},\n {\"id\":\"B-label\",\"type\":\"text\",\"x\":520,\"y\":225,\"width\":110,\"height\":30,\"text\":\"Service B\",\"fontSize\":20,\"fontFamily\":5,\"textAlign\":\"center\",\"verticalAlign\":\"middle\",\"containerId\":\"B\"},\n {\"id\":\"arrow1\",\"type\":\"arrow\",\"x\":250,\"y\":240,\"width\":250,\"height\":0,\"points\":[[0,0],[250,0]],\"endArrowhead\":\"arrow\"}\n ]',\n keyframes: '[\n {\"targetId\":\"A\",\"property\":\"opacity\",\"time\":0,\"value\":0},\n {\"targetId\":\"A\",\"property\":\"opacity\",\"time\":600,\"value\":1,\"easing\":\"easeOut\"},\n {\"targetId\":\"arrow1\",\"property\":\"opacity\",\"time\":0,\"value\":0},\n {\"targetId\":\"arrow1\",\"property\":\"opacity\",\"time\":600,\"value\":0},\n {\"targetId\":\"arrow1\",\"property\":\"opacity\",\"time\":700,\"value\":1},\n {\"targetId\":\"arrow1\",\"property\":\"drawProgress\",\"time\":600,\"value\":0},\n {\"targetId\":\"arrow1\",\"property\":\"drawProgress\",\"time\":1800,\"value\":1,\"easing\":\"easeInOut\"},\n {\"targetId\":\"B\",\"property\":\"opacity\",\"time\":0,\"value\":0},\n {\"targetId\":\"B\",\"property\":\"opacity\",\"time\":1800,\"value\":0},\n {\"targetId\":\"B\",\"property\":\"opacity\",\"time\":2400,\"value\":1,\"easing\":\"easeOut\"}\n ]',\n clipEnd: 3000,\n cameraFrame: { x: 375, y: 240, width: 800 }\n})\n```\n\n## Staggered Reveal (simpler alternative)\n```\ncreate_animated_scene({\n elements: '[...elements...]',\n sequences: '[{\"elementIds\":[\"title\",\"box1\",\"arrow1\",\"box2\"],\"delay\":400,\"duration\":600}]',\n clipEnd: 3500\n})\n```\n\n## Scale Animation (pop-in from center)\n```\nadd_scale_animation({ targetId: \"box1\", origin: \"center\", keyframes: '[{\"time\":0,\"scaleX\":0.3,\"scaleY\":0.3},{\"time\":600,\"scaleX\":1,\"scaleY\":1,\"easing\":\"easeOutBack\"}]' })\n```\nOrigins: center, top-left, top-right, bottom-left, bottom-right, top, bottom, left, right\n\n## Camera Pan + Zoom\n```\nset_camera_frame({ x: 300, y: 200, width: 800 })\nadd_camera_keyframes_batch({ keyframes: '[\n {\"property\":\"translateX\",\"time\":0,\"value\":-200},\n {\"property\":\"translateX\",\"time\":3000,\"value\":200,\"easing\":\"easeInOut\"},\n {\"property\":\"scaleX\",\"time\":0,\"value\":1.5},\n {\"property\":\"scaleY\",\"time\":0,\"value\":1.5},\n {\"property\":\"scaleX\",\"time\":3000,\"value\":1,\"easing\":\"easeInOutCubic\"},\n {\"property\":\"scaleY\",\"time\":3000,\"value\":1,\"easing\":\"easeInOutCubic\"}\n]' })\n```\n";
|
|
3
3
|
//# sourceMappingURL=referenceText.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"referenceText.d.ts","sourceRoot":"","sources":["../../src/server/referenceText.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"referenceText.d.ts","sourceRoot":"","sources":["../../src/server/referenceText.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,woDAoC1B,CAAC;AAIF,eAAO,MAAM,aAAa,0uGAwDzB,CAAC"}
|
|
@@ -1,268 +1,97 @@
|
|
|
1
|
-
export const REFERENCE_TEXT = `# Excalimate
|
|
1
|
+
export const REFERENCE_TEXT = `# Excalimate Reference
|
|
2
2
|
|
|
3
|
-
##
|
|
3
|
+
## Element Format (base properties)
|
|
4
|
+
{ id, type, x, y, width, height, strokeColor, backgroundColor, fillStyle, strokeWidth, opacity, groupIds, angle }
|
|
4
5
|
|
|
5
|
-
|
|
6
|
-
\`\`\`json
|
|
7
|
-
{
|
|
8
|
-
"id": "unique-id",
|
|
9
|
-
"type": "rectangle|ellipse|diamond|arrow|line|text|freedraw|image",
|
|
10
|
-
"x": 100, "y": 200,
|
|
11
|
-
"width": 300, "height": 150,
|
|
12
|
-
"angle": 0,
|
|
13
|
-
"strokeColor": "#1e1e1e",
|
|
14
|
-
"backgroundColor": "transparent",
|
|
15
|
-
"fillStyle": "solid",
|
|
16
|
-
"strokeWidth": 2,
|
|
17
|
-
"roughness": 1,
|
|
18
|
-
"opacity": 100,
|
|
19
|
-
"groupIds": [],
|
|
20
|
-
"isDeleted": false
|
|
21
|
-
}
|
|
22
|
-
\`\`\`
|
|
6
|
+
Types: rectangle, ellipse, diamond, arrow, line, text, freedraw, image
|
|
23
7
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
{
|
|
27
|
-
"type": "text",
|
|
28
|
-
"text": "Hello World",
|
|
29
|
-
"fontSize": 20,
|
|
30
|
-
"fontFamily": 5,
|
|
31
|
-
"textAlign": "center",
|
|
32
|
-
"verticalAlign": "middle"
|
|
33
|
-
}
|
|
34
|
-
\`\`\`
|
|
8
|
+
Text extra: { text, fontSize, fontFamily: 5, textAlign, verticalAlign }
|
|
9
|
+
Arrow/Line extra: { points: [[0,0],[dx,dy]], endArrowhead: "arrow"|null }
|
|
10
|
+
Bound text: text with containerId → shape with boundElements:[{id,type:"text"}]
|
|
35
11
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
"type": "arrow",
|
|
40
|
-
"points": [[0, 0], [200, 100]],
|
|
41
|
-
"startArrowhead": null,
|
|
42
|
-
"endArrowhead": "arrow",
|
|
43
|
-
"startBinding": null,
|
|
44
|
-
"endBinding": null
|
|
45
|
-
}
|
|
46
|
-
\`\`\`
|
|
12
|
+
## Colors
|
|
13
|
+
Stroke: #1e1e1e #e03131 #2f9e44 #1971c2 #f08c00 #6741d9 #0c8599 #e8590c
|
|
14
|
+
Fill: transparent #ffc9c9 #b2f2bb #a5d8ff #ffec99 #d0bfff #99e9f2 #ffd8a8
|
|
47
15
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
\`\`\`json
|
|
51
|
-
{ "type": "text", "containerId": "shape-id", ... }
|
|
52
|
-
\`\`\`
|
|
53
|
-
And add to the shape: \`"boundElements": [{"id": "text-id", "type": "text"}]\`
|
|
54
|
-
|
|
55
|
-
## Color Palettes
|
|
56
|
-
|
|
57
|
-
**Stroke**: #1e1e1e, #e03131, #2f9e44, #1971c2, #f08c00, #6741d9, #0c8599, #e8590c
|
|
58
|
-
**Background**: transparent, #ffc9c9, #b2f2bb, #a5d8ff, #ffec99, #d0bfff, #99e9f2, #ffd8a8
|
|
59
|
-
|
|
60
|
-
## Animatable Properties
|
|
61
|
-
|
|
62
|
-
| Property | Range | Description |
|
|
63
|
-
|----------|-------|-------------|
|
|
64
|
-
| opacity | 0–1 | Element visibility (0=hidden, 1=visible) |
|
|
65
|
-
| translateX | px | Horizontal position offset |
|
|
66
|
-
| translateY | px | Vertical position offset |
|
|
67
|
-
| scaleX | 0.1+ | Horizontal scale (1=normal) |
|
|
68
|
-
| scaleY | 0.1+ | Vertical scale (1=normal) |
|
|
69
|
-
| rotation | degrees | Rotation angle |
|
|
70
|
-
| drawProgress | 0–1 | Stroke draw-on progress (for lines/arrows) |
|
|
71
|
-
|
|
72
|
-
## Easing Types
|
|
16
|
+
## Animation Properties
|
|
17
|
+
opacity (0–1), translateX/Y (px), scaleX/Y (0.1+), rotation (deg), drawProgress (0–1, lines/arrows only)
|
|
73
18
|
|
|
19
|
+
## Easings
|
|
74
20
|
linear, easeIn, easeOut, easeInOut, easeInQuad, easeOutQuad, easeInOutQuad,
|
|
75
21
|
easeInCubic, easeOutCubic, easeInOutCubic, easeInBack, easeOutBack, easeInOutBack,
|
|
76
22
|
easeInElastic, easeOutElastic, easeInBounce, easeOutBounce, step
|
|
77
23
|
|
|
78
|
-
## Workflow
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
\`\`\`
|
|
93
|
-
1. create_scene: [{"id":"rect1","type":"rectangle","x":100,"y":100,"width":200,"height":100,...}]
|
|
94
|
-
2. add_keyframe: {targetId:"rect1", property:"opacity", time:0, value:0}
|
|
95
|
-
3. add_keyframe: {targetId:"rect1", property:"opacity", time:1000, value:1, easing:"easeOut"}
|
|
96
|
-
\`\`\`
|
|
24
|
+
## Preferred Workflow
|
|
25
|
+
1. Use **create_animated_scene** — one call for elements + keyframes + sequences + camera + clip range
|
|
26
|
+
2. Use add_keyframes_batch or create_sequence for incremental changes
|
|
27
|
+
3. Use save_checkpoint to persist
|
|
28
|
+
4. Verify with animations_of_item, items_visible_in_camera, is_camera_centered
|
|
29
|
+
|
|
30
|
+
## Key Tips
|
|
31
|
+
- Set opacity 0 at time 0 for elements that appear later
|
|
32
|
+
- Bound text inherits container animation
|
|
33
|
+
- drawProgress only works on arrows/lines
|
|
34
|
+
- easeOutBack = nice bounce; easeInOutCubic = best general-purpose
|
|
35
|
+
- Camera: scale > 1 = zoomed out, < 1 = zoomed in
|
|
36
|
+
- Set clip range before saving
|
|
97
37
|
`;
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
Scale origins: center, top-left, top-right, bottom-left, bottom-right, top, bottom, left, right.
|
|
155
|
-
Add "scaleOrigin" per scaleX/scaleY keyframe in add_keyframes_batch, or use add_scale_animation for a single element.
|
|
156
|
-
|
|
157
|
-
## Example 10: Draw In an Arrow (Stroke Animation)
|
|
158
|
-
\`\`\`
|
|
159
|
-
add_keyframe({ targetId: "arrow1", property: "drawProgress", time: 0, value: 0 })
|
|
160
|
-
add_keyframe({ targetId: "arrow1", property: "drawProgress", time: 1200, value: 1, easing: "easeInOut" })
|
|
161
|
-
\`\`\`
|
|
162
|
-
|
|
163
|
-
## Example 11: Sequential Reveal — A → Arrow → B (Most Common Pattern)
|
|
164
|
-
\`\`\`
|
|
165
|
-
add_keyframes_batch({ keyframes: '[
|
|
166
|
-
{"targetId":"A","property":"opacity","time":0,"value":0},
|
|
167
|
-
{"targetId":"A","property":"opacity","time":600,"value":1,"easing":"easeOut"},
|
|
168
|
-
{"targetId":"arrow1","property":"opacity","time":0,"value":0},
|
|
169
|
-
{"targetId":"arrow1","property":"opacity","time":600,"value":0},
|
|
170
|
-
{"targetId":"arrow1","property":"opacity","time":700,"value":1},
|
|
171
|
-
{"targetId":"arrow1","property":"drawProgress","time":600,"value":0},
|
|
172
|
-
{"targetId":"arrow1","property":"drawProgress","time":1800,"value":1,"easing":"easeInOut"},
|
|
173
|
-
{"targetId":"B","property":"opacity","time":0,"value":0},
|
|
174
|
-
{"targetId":"B","property":"opacity","time":1800,"value":0},
|
|
175
|
-
{"targetId":"B","property":"opacity","time":2400,"value":1,"easing":"easeOut"}
|
|
176
|
-
]' })
|
|
177
|
-
\`\`\`
|
|
178
|
-
|
|
179
|
-
## Example 12: Bidirectional Flow — A ↔ B
|
|
180
|
-
\`\`\`
|
|
181
|
-
add_keyframes_batch({ keyframes: '[
|
|
182
|
-
{"targetId":"A","property":"opacity","time":0,"value":0},
|
|
183
|
-
{"targetId":"A","property":"opacity","time":500,"value":1,"easing":"easeOut"},
|
|
184
|
-
{"targetId":"arrowAB","property":"opacity","time":0,"value":0},
|
|
185
|
-
{"targetId":"arrowAB","property":"opacity","time":500,"value":1},
|
|
186
|
-
{"targetId":"arrowAB","property":"drawProgress","time":500,"value":0},
|
|
187
|
-
{"targetId":"arrowAB","property":"drawProgress","time":1500,"value":1,"easing":"easeInOut"},
|
|
188
|
-
{"targetId":"B","property":"opacity","time":0,"value":0},
|
|
189
|
-
{"targetId":"B","property":"opacity","time":1500,"value":0},
|
|
190
|
-
{"targetId":"B","property":"opacity","time":2000,"value":1,"easing":"easeOut"},
|
|
191
|
-
{"targetId":"arrowBA","property":"opacity","time":0,"value":0},
|
|
192
|
-
{"targetId":"arrowBA","property":"opacity","time":2000,"value":1},
|
|
193
|
-
{"targetId":"arrowBA","property":"drawProgress","time":2000,"value":0},
|
|
194
|
-
{"targetId":"arrowBA","property":"drawProgress","time":3000,"value":1,"easing":"easeInOut"}
|
|
38
|
+
// Use string concatenation for EXAMPLES_TEXT to avoid backtick escaping issues
|
|
39
|
+
const CB = '```'; // code block delimiter
|
|
40
|
+
export const EXAMPLES_TEXT = `# Excalimate Examples
|
|
41
|
+
|
|
42
|
+
## Complete Scene (preferred — one call)
|
|
43
|
+
${CB}
|
|
44
|
+
create_animated_scene({
|
|
45
|
+
elements: '[
|
|
46
|
+
{"id":"A","type":"rectangle","x":100,"y":200,"width":150,"height":80,"strokeColor":"#1e1e1e","backgroundColor":"#b2f2bb","fillStyle":"solid","boundElements":[{"id":"A-label","type":"text"}]},
|
|
47
|
+
{"id":"A-label","type":"text","x":120,"y":225,"width":110,"height":30,"text":"Service A","fontSize":20,"fontFamily":5,"textAlign":"center","verticalAlign":"middle","containerId":"A"},
|
|
48
|
+
{"id":"B","type":"rectangle","x":500,"y":200,"width":150,"height":80,"strokeColor":"#1e1e1e","backgroundColor":"#a5d8ff","fillStyle":"solid","boundElements":[{"id":"B-label","type":"text"}]},
|
|
49
|
+
{"id":"B-label","type":"text","x":520,"y":225,"width":110,"height":30,"text":"Service B","fontSize":20,"fontFamily":5,"textAlign":"center","verticalAlign":"middle","containerId":"B"},
|
|
50
|
+
{"id":"arrow1","type":"arrow","x":250,"y":240,"width":250,"height":0,"points":[[0,0],[250,0]],"endArrowhead":"arrow"}
|
|
51
|
+
]',
|
|
52
|
+
keyframes: '[
|
|
53
|
+
{"targetId":"A","property":"opacity","time":0,"value":0},
|
|
54
|
+
{"targetId":"A","property":"opacity","time":600,"value":1,"easing":"easeOut"},
|
|
55
|
+
{"targetId":"arrow1","property":"opacity","time":0,"value":0},
|
|
56
|
+
{"targetId":"arrow1","property":"opacity","time":600,"value":0},
|
|
57
|
+
{"targetId":"arrow1","property":"opacity","time":700,"value":1},
|
|
58
|
+
{"targetId":"arrow1","property":"drawProgress","time":600,"value":0},
|
|
59
|
+
{"targetId":"arrow1","property":"drawProgress","time":1800,"value":1,"easing":"easeInOut"},
|
|
60
|
+
{"targetId":"B","property":"opacity","time":0,"value":0},
|
|
61
|
+
{"targetId":"B","property":"opacity","time":1800,"value":0},
|
|
62
|
+
{"targetId":"B","property":"opacity","time":2400,"value":1,"easing":"easeOut"}
|
|
63
|
+
]',
|
|
64
|
+
clipEnd: 3000,
|
|
65
|
+
cameraFrame: { x: 375, y: 240, width: 800 }
|
|
66
|
+
})
|
|
67
|
+
${CB}
|
|
68
|
+
|
|
69
|
+
## Staggered Reveal (simpler alternative)
|
|
70
|
+
${CB}
|
|
71
|
+
create_animated_scene({
|
|
72
|
+
elements: '[...elements...]',
|
|
73
|
+
sequences: '[{"elementIds":["title","box1","arrow1","box2"],"delay":400,"duration":600}]',
|
|
74
|
+
clipEnd: 3500
|
|
75
|
+
})
|
|
76
|
+
${CB}
|
|
77
|
+
|
|
78
|
+
## Scale Animation (pop-in from center)
|
|
79
|
+
${CB}
|
|
80
|
+
add_scale_animation({ targetId: "box1", origin: "center", keyframes: '[{"time":0,"scaleX":0.3,"scaleY":0.3},{"time":600,"scaleX":1,"scaleY":1,"easing":"easeOutBack"}]' })
|
|
81
|
+
${CB}
|
|
82
|
+
Origins: center, top-left, top-right, bottom-left, bottom-right, top, bottom, left, right
|
|
83
|
+
|
|
84
|
+
## Camera Pan + Zoom
|
|
85
|
+
${CB}
|
|
86
|
+
set_camera_frame({ x: 300, y: 200, width: 800 })
|
|
87
|
+
add_camera_keyframes_batch({ keyframes: '[
|
|
88
|
+
{"property":"translateX","time":0,"value":-200},
|
|
89
|
+
{"property":"translateX","time":3000,"value":200,"easing":"easeInOut"},
|
|
90
|
+
{"property":"scaleX","time":0,"value":1.5},
|
|
91
|
+
{"property":"scaleY","time":0,"value":1.5},
|
|
92
|
+
{"property":"scaleX","time":3000,"value":1,"easing":"easeInOutCubic"},
|
|
93
|
+
{"property":"scaleY","time":3000,"value":1,"easing":"easeInOutCubic"}
|
|
195
94
|
]' })
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
## Example 13: Staggered Reveal via create_sequence
|
|
199
|
-
\`\`\`
|
|
200
|
-
create_sequence({ elementIds: ["title","box1","arrow1","box2","arrow2","box3"], property: "opacity", startTime: 0, delay: 400, duration: 600 })
|
|
201
|
-
\`\`\`
|
|
202
|
-
Result: title at 0ms, box1 at 400ms, arrow1 at 800ms, box2 at 1200ms, arrow2 at 1600ms, box3 at 2000ms.
|
|
203
|
-
|
|
204
|
-
## Example 14: Camera Pan
|
|
205
|
-
\`\`\`
|
|
206
|
-
set_camera_frame({ x: 300, y: 200, width: 800, aspectRatio: "16:9" })
|
|
207
|
-
add_camera_keyframe({ property: "translateX", time: 0, value: -200 })
|
|
208
|
-
add_camera_keyframe({ property: "translateX", time: 3000, value: 200, easing: "easeInOut" })
|
|
209
|
-
\`\`\`
|
|
210
|
-
|
|
211
|
-
## Example 15: Camera Zoom In
|
|
212
|
-
\`\`\`
|
|
213
|
-
add_camera_keyframe({ property: "scaleX", time: 0, value: 2 })
|
|
214
|
-
add_camera_keyframe({ property: "scaleY", time: 0, value: 2 })
|
|
215
|
-
add_camera_keyframe({ property: "scaleX", time: 2000, value: 1, easing: "easeInOutCubic" })
|
|
216
|
-
add_camera_keyframe({ property: "scaleY", time: 2000, value: 1, easing: "easeInOutCubic" })
|
|
217
|
-
\`\`\`
|
|
218
|
-
|
|
219
|
-
## Example 16: Clip Range + Save
|
|
220
|
-
\`\`\`
|
|
221
|
-
set_clip_range({ start: 0, end: 5000 })
|
|
222
|
-
save_checkpoint({ id: "my-animation" })
|
|
223
|
-
\`\`\`
|
|
224
|
-
|
|
225
|
-
---
|
|
226
|
-
|
|
227
|
-
# Tips
|
|
228
|
-
|
|
229
|
-
1. Always call create_scene first (or clear_scene to start fresh), then animate.
|
|
230
|
-
2. Use add_keyframes_batch for efficiency — one call for many keyframes.
|
|
231
|
-
3. Use create_sequence for simple staggered reveals.
|
|
232
|
-
4. Bound text inherits container animation — animating arrow opacity also hides its label.
|
|
233
|
-
5. drawProgress only works on arrows and lines.
|
|
234
|
-
6. easeOutBack gives a nice bounce for pop-in effects.
|
|
235
|
-
7. easeInOutCubic is the best general-purpose easing.
|
|
236
|
-
8. Set elements to opacity 0 at time 0 if they should appear later.
|
|
237
|
-
9. Set clip range before saving — it defines what gets exported.
|
|
238
|
-
10. Camera scale > 1 = zoomed out, < 1 = zoomed in.
|
|
239
|
-
11. Use delete_items to remove elements AND their animation tracks in one call.
|
|
240
|
-
12. Verify your work with animations_of_item, items_visible_in_camera, are_items_in_line, is_camera_centered.
|
|
241
|
-
|
|
242
|
-
## Example 17: Verify Animation
|
|
243
|
-
\`\`\`
|
|
244
|
-
animations_of_item({ targetId: "box1" })
|
|
245
|
-
// Returns:
|
|
246
|
-
// opacity:
|
|
247
|
-
// 0ms 0% ↑ 100% 600ms (easeOut)
|
|
248
|
-
|
|
249
|
-
items_visible_in_camera({ time: 1000 })
|
|
250
|
-
// Returns: 5/8 items visible (62%) at 1000ms
|
|
251
|
-
|
|
252
|
-
are_items_in_line({ ids: ["box1","box2","box3"], axis: "horizontal" })
|
|
253
|
-
// Returns: ✅ Aligned (max deviation: 3px)
|
|
254
|
-
|
|
255
|
-
is_camera_centered({ axis: "both", time: 0 })
|
|
256
|
-
// Returns: ✅ Centered (offsets: dx=5 dy=2)
|
|
257
|
-
\`\`\`
|
|
258
|
-
|
|
259
|
-
## Example 18: Delete and Rebuild
|
|
260
|
-
\`\`\`
|
|
261
|
-
delete_items({ ids: ["old_box", "old_arrow"] })
|
|
262
|
-
// Removes elements + all their animation tracks
|
|
263
|
-
|
|
264
|
-
clear_scene()
|
|
265
|
-
// Nuclear option: removes everything
|
|
266
|
-
\`\`\`
|
|
95
|
+
${CB}
|
|
267
96
|
`;
|
|
268
97
|
//# sourceMappingURL=referenceText.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"referenceText.js","sourceRoot":"","sources":["../../src/server/referenceText.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG
|
|
1
|
+
{"version":3,"file":"referenceText.js","sourceRoot":"","sources":["../../src/server/referenceText.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoC7B,CAAC;AAEF,+EAA+E;AAC/E,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,uBAAuB;AACzC,MAAM,CAAC,MAAM,aAAa,GAAG;;;EAG3B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;EAwBF,EAAE;;;EAGF,EAAE;;;;;;EAMF,EAAE;;;EAGF,EAAE;;EAEF,EAAE;;;;EAIF,EAAE;;;;;;;;;;EAUF,EAAE;CACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sceneTools.d.ts","sourceRoot":"","sources":["../../src/server/sceneTools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"sceneTools.d.ts","sourceRoot":"","sources":["../../src/server/sceneTools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,SAAS,EACjB,GAAG,EAAE,YAAY,EACjB,iBAAiB,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,GAC5C,IAAI,CAsHN"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
+
import { getSceneElementsJSON } from './stateContext.js';
|
|
2
3
|
export function registerSceneTools(server, ctx, normalizeElements) {
|
|
3
4
|
ctx.mutatingTool('create_scene', 'Create or replace the Excalidraw scene with the given elements.', { elements: z.string().describe('JSON string of Excalidraw elements array') }, async ({ elements }) => {
|
|
4
5
|
try {
|
|
@@ -60,7 +61,7 @@ export function registerSceneTools(server, ctx, normalizeElements) {
|
|
|
60
61
|
}
|
|
61
62
|
});
|
|
62
63
|
server.tool('get_scene', 'Return the current scene elements as JSON.', {}, async () => ({
|
|
63
|
-
content: [{ type: 'text', text:
|
|
64
|
+
content: [{ type: 'text', text: getSceneElementsJSON() }],
|
|
64
65
|
}));
|
|
65
66
|
ctx.mutatingTool('clear_scene', 'Clear all elements and all animation tracks. Resets the scene to a blank canvas.', {}, async () => {
|
|
66
67
|
const state = ctx.getState();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sceneTools.js","sourceRoot":"","sources":["../../src/server/sceneTools.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"sceneTools.js","sourceRoot":"","sources":["../../src/server/sceneTools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,42 @@
|
|
|
1
1
|
import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
2
|
import type { ServerState } from '../types.js';
|
|
3
|
-
|
|
3
|
+
/**
|
|
4
|
+
* Delta message format sent over SSE.
|
|
5
|
+
* Instead of full state areas, we send fine-grained changes:
|
|
6
|
+
* - Scene: only added/updated/removed elements
|
|
7
|
+
* - Timeline: only upserted/removed tracks
|
|
8
|
+
* - Clip and cameraFrame: sent as-is (small payloads)
|
|
9
|
+
*/
|
|
10
|
+
export interface StateDelta {
|
|
11
|
+
scene?: {
|
|
12
|
+
/** Elements that were added or have changed properties */
|
|
13
|
+
upsert: any[];
|
|
14
|
+
/** Element IDs that were removed */
|
|
15
|
+
removed: string[];
|
|
16
|
+
};
|
|
17
|
+
timeline?: {
|
|
18
|
+
/** Tracks that were added or have changed keyframes */
|
|
19
|
+
upsertedTracks: any[];
|
|
20
|
+
/** Track IDs that were removed */
|
|
21
|
+
removedTrackIds: string[];
|
|
22
|
+
/** Timeline metadata (duration, fps) — only sent if changed */
|
|
23
|
+
meta?: {
|
|
24
|
+
duration: number;
|
|
25
|
+
fps: number;
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
clipStart?: number;
|
|
29
|
+
clipEnd?: number;
|
|
30
|
+
cameraFrame?: ServerState['cameraFrame'];
|
|
31
|
+
}
|
|
32
|
+
export type StateChangeListener = (delta: StateDelta) => void;
|
|
4
33
|
export declare function getSharedState(): ServerState;
|
|
34
|
+
/** Get the full state as a JSON string, using cache when unchanged. */
|
|
35
|
+
export declare function getSharedStateJSON(): string;
|
|
36
|
+
/** Get scene elements as a pretty JSON string, using cache when unchanged. */
|
|
37
|
+
export declare function getSceneElementsJSON(): string;
|
|
38
|
+
/** Get timeline + clip + camera as a pretty JSON string, using cache when unchanged. */
|
|
39
|
+
export declare function getTimelineJSON(): string;
|
|
5
40
|
export interface StateContext {
|
|
6
41
|
getState: () => ServerState;
|
|
7
42
|
updateState: (newState: ServerState) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stateContext.d.ts","sourceRoot":"","sources":["../../src/server/stateContext.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"stateContext.d.ts","sourceRoot":"","sources":["../../src/server/stateContext.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C;;;;;;GAMG;AACH,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE;QACN,0DAA0D;QAC1D,MAAM,EAAE,GAAG,EAAE,CAAC;QACd,oCAAoC;QACpC,OAAO,EAAE,MAAM,EAAE,CAAC;KACnB,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,uDAAuD;QACvD,cAAc,EAAE,GAAG,EAAE,CAAC;QACtB,kCAAkC;QAClC,eAAe,EAAE,MAAM,EAAE,CAAC;QAC1B,+DAA+D;QAC/D,IAAI,CAAC,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,GAAG,EAAE,MAAM,CAAA;SAAE,CAAC;KAC1C,CAAC;IACF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;CAC1C;AAED,MAAM,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;AAM9D,wBAAgB,cAAc,IAAI,WAAW,CAAyB;AAatE,uEAAuE;AACvE,wBAAgB,kBAAkB,IAAI,MAAM,CAK3C;AAED,8EAA8E;AAC9E,wBAAgB,oBAAoB,IAAI,MAAM,CAK7C;AAED,wFAAwF;AACxF,wBAAgB,eAAe,IAAI,MAAM,CAUxC;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,WAAW,CAAC;IAC5B,WAAW,EAAE,CAAC,QAAQ,EAAE,WAAW,KAAK,IAAI,CAAC;IAC7C,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,yDAAyD;IACzD,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,GAAG,UAAU,GAAG,MAAM,GAAG,aAAa,GAAG,KAAK,KAAK,IAAI,CAAC;IACjF,YAAY,EAAE,CACZ,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,GAAG,EACX,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC;QAAE,OAAO,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAAE,CAAC;IAC9E,wFAAwF;IACxF,UAAU,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,UAAU,GAAG,MAAM,GAAG,aAAa,CAAC,KAC9D,IAAI,CAAC;CACX;AAqGD,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,SAAS,EACjB,aAAa,CAAC,EAAE,mBAAmB,GAClC,YAAY,CA+Gd"}
|