@clipform/mcp-server 2.17.1 → 3.0.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/README.md +2 -3
- package/dist/{chunk-5TQU2XJ7.js → chunk-EXV5M7YV.js} +2 -2
- package/dist/{chunk-2EPNC4AY.js → chunk-KCF7ZVDI.js} +10 -10
- package/dist/{chunk-2EPNC4AY.js.map → chunk-KCF7ZVDI.js.map} +1 -1
- package/dist/{chunk-FIUAXSVQ.js → chunk-KNOCYZHG.js} +7 -265
- package/dist/chunk-KNOCYZHG.js.map +1 -0
- package/dist/{chunk-HBKYE4JQ.js → chunk-QBPE32AV.js} +25 -204
- package/dist/chunk-QBPE32AV.js.map +1 -0
- package/dist/index.js +4 -4
- package/dist/prompts.js +2 -2
- package/dist/resources.js +2 -2
- package/dist/server.js +4 -4
- package/package.json +1 -1
- package/dist/chunk-FIUAXSVQ.js.map +0 -1
- package/dist/chunk-HBKYE4JQ.js.map +0 -1
- /package/dist/{chunk-5TQU2XJ7.js.map → chunk-EXV5M7YV.js.map} +0 -0
|
@@ -401,8 +401,12 @@ var FEATURES = {
|
|
|
401
401
|
share_node: {
|
|
402
402
|
name: "Share individual nodes",
|
|
403
403
|
description: "Share a direct link to a specific node within a form",
|
|
404
|
-
|
|
405
|
-
|
|
404
|
+
// Pulled back 2026-09-30 (#3791): hides the node-menu Share (copy
|
|
405
|
+
// ?node_id= link) item. Re-enable by flipping back to enabled true +
|
|
406
|
+
// status 'live', and restore the per-step share paragraph in
|
|
407
|
+
// apps/docs/content/docs/help/sharing.mdx.
|
|
408
|
+
enabled: false,
|
|
409
|
+
status: "beta",
|
|
406
410
|
wentLiveAt: "2026-07-17",
|
|
407
411
|
category: "sharing"
|
|
408
412
|
},
|
|
@@ -2624,238 +2628,6 @@ function isInactiveOptionEdge(node, action) {
|
|
|
2624
2628
|
return isOptionEdge(action) && !isBranchingActive(node);
|
|
2625
2629
|
}
|
|
2626
2630
|
|
|
2627
|
-
// ../config/video-templates.js
|
|
2628
|
-
var PRESET_BG = {
|
|
2629
|
-
bold: "#0a0a14",
|
|
2630
|
-
elegant: "#1a1a2e",
|
|
2631
|
-
minimal: "#fafafa",
|
|
2632
|
-
typewriter: "#0d1117",
|
|
2633
|
-
neon: "#0a0a0a",
|
|
2634
|
-
cinematic: "#000000"
|
|
2635
|
-
};
|
|
2636
|
-
var PRESET_NAMES = Object.keys(PRESET_BG);
|
|
2637
|
-
var THEME_MOTION = {
|
|
2638
|
-
calm: { holdMultiplier: 1.4 },
|
|
2639
|
-
balanced: { holdMultiplier: 1 },
|
|
2640
|
-
energetic: { holdMultiplier: 0.7 }
|
|
2641
|
-
};
|
|
2642
|
-
var THEME_NAMES = Object.keys(THEME_MOTION);
|
|
2643
|
-
var SLIDESHOW_COMPOSITION_TRANSITIONS = ["fade", "slide", "wipe", "none"];
|
|
2644
|
-
var SLIDESHOW_TRANSITION_DURATION = { min: 0.1, max: 5 };
|
|
2645
|
-
function isHttpUrl(value) {
|
|
2646
|
-
return /^https?:\/\//i.test(value);
|
|
2647
|
-
}
|
|
2648
|
-
var HTTP_URL_MESSAGE = "URL must start with http:// or https://";
|
|
2649
|
-
var VIDEO_LOOKS = {
|
|
2650
|
-
clean: {
|
|
2651
|
-
transition: { type: "fade", duration: 1 },
|
|
2652
|
-
motionPreset: "cinematic"
|
|
2653
|
-
},
|
|
2654
|
-
editorial: {
|
|
2655
|
-
transition: { type: "fade", duration: 1 },
|
|
2656
|
-
motionPreset: "calm",
|
|
2657
|
-
texture: { type: "halftone" },
|
|
2658
|
-
duotone: { shadow: "#1a1633", highlight: "#f5c542" }
|
|
2659
|
-
},
|
|
2660
|
-
punchy: {
|
|
2661
|
-
transition: { type: "slide", duration: 0.5 },
|
|
2662
|
-
motionPreset: "energetic",
|
|
2663
|
-
randomEffects: true
|
|
2664
|
-
},
|
|
2665
|
-
"bold-poster": {
|
|
2666
|
-
transition: { type: "fade", duration: 1 },
|
|
2667
|
-
motionPreset: "dramatic",
|
|
2668
|
-
texture: { type: "halftone" },
|
|
2669
|
-
duotone: { shadow: "#0a0a14", highlight: "#f59e0b" },
|
|
2670
|
-
backgroundColor: "#0a0a14"
|
|
2671
|
-
}
|
|
2672
|
-
};
|
|
2673
|
-
var VIDEO_LOOK_NAMES = Object.keys(VIDEO_LOOKS);
|
|
2674
|
-
var VIDEO_TEMPLATE_REGISTRY = [
|
|
2675
|
-
{
|
|
2676
|
-
name: "title-card",
|
|
2677
|
-
tier: "labs",
|
|
2678
|
-
description: "An intro, section break, or outro card: a title with optional tagline and subtitle over an image or solid-colour background.",
|
|
2679
|
-
keywords: ["intro card", "title screen", "opening", "outro", "section header", "branded end screen"],
|
|
2680
|
-
controls: ["title", "subtitle?", "tagline?", "preset?", "backgroundImage?", "variant?", "theme?"],
|
|
2681
|
-
exampleControls: {
|
|
2682
|
-
title: "Welcome to Clipform",
|
|
2683
|
-
subtitle: "Video-first forms that actually get answered",
|
|
2684
|
-
tagline: "Get started",
|
|
2685
|
-
preset: "cinematic"
|
|
2686
|
-
}
|
|
2687
|
-
},
|
|
2688
|
-
{
|
|
2689
|
-
name: "mystery-reveal",
|
|
2690
|
-
tier: "public",
|
|
2691
|
-
description: 'A "guess what this is" reveal - a single image that resolves from obscured (blurred, pixelated, or zoomed-in) to sharp.',
|
|
2692
|
-
keywords: ["guess what this is", "reveal quiz", "blurred photo", "zoom and reveal", "mystery image", "guess the picture", "guess the flag"],
|
|
2693
|
-
controls: ["image", "variant?", "revealSeconds?", "theme?"],
|
|
2694
|
-
exampleControls: {
|
|
2695
|
-
image: "https://picsum.photos/seed/clipform-mystery/1080/1920",
|
|
2696
|
-
variant: "blur"
|
|
2697
|
-
}
|
|
2698
|
-
},
|
|
2699
|
-
{
|
|
2700
|
-
name: "colour-grid",
|
|
2701
|
-
tier: "labs",
|
|
2702
|
-
description: "A colour-matching or palette game: a grid of colour swatches to pick from or reveal.",
|
|
2703
|
-
keywords: ["colour matching", "palette quiz", "pick the colour", "swatch game", "build the flag"],
|
|
2704
|
-
controls: ["colors", "labels?", "variant?", "theme?"],
|
|
2705
|
-
exampleControls: {
|
|
2706
|
-
colors: ["#6366F1", "#EC4899", "#F59E0B", "#10B981"],
|
|
2707
|
-
labels: ["Indigo", "Pink", "Amber", "Emerald"]
|
|
2708
|
-
}
|
|
2709
|
-
},
|
|
2710
|
-
{
|
|
2711
|
-
name: "question-card",
|
|
2712
|
-
tier: "labs",
|
|
2713
|
-
description: "A survey or quiz prompt: a question over an image or solid-colour background, with an optional helper line - the workhorse for a form's question nodes.",
|
|
2714
|
-
keywords: ["ask a question", "survey question", "quiz prompt", "poll question", "form question"],
|
|
2715
|
-
controls: ["question", "helper?", "preset?", "backgroundImage?", "variant?", "theme?"],
|
|
2716
|
-
exampleControls: {
|
|
2717
|
-
question: "What are you hoping to achieve?",
|
|
2718
|
-
helper: "One sentence is plenty",
|
|
2719
|
-
preset: "minimal"
|
|
2720
|
-
}
|
|
2721
|
-
},
|
|
2722
|
-
{
|
|
2723
|
-
name: "stat-highlight",
|
|
2724
|
-
tier: "labs",
|
|
2725
|
-
description: "An impressive-number beat: one big statistic or metric that pops in, with an optional label and caption - social proof and emphasis.",
|
|
2726
|
-
keywords: ["big number", "statistic", "metric highlight", "impressive figure", "social proof number"],
|
|
2727
|
-
controls: ["value", "label?", "caption?", "preset?", "backgroundImage?", "variant?", "theme?"],
|
|
2728
|
-
exampleControls: {
|
|
2729
|
-
value: "10,000+",
|
|
2730
|
-
label: "forms created this month",
|
|
2731
|
-
preset: "bold"
|
|
2732
|
-
}
|
|
2733
|
-
},
|
|
2734
|
-
{
|
|
2735
|
-
name: "quote-card",
|
|
2736
|
-
tier: "labs",
|
|
2737
|
-
description: "A testimonial or pull-quote beat for social proof, with optional attribution.",
|
|
2738
|
-
keywords: ["testimonial", "pull quote", "social proof", "customer quote", "review highlight"],
|
|
2739
|
-
controls: ["quote", "attribution?", "preset?", "backgroundImage?", "variant?", "theme?"],
|
|
2740
|
-
exampleControls: {
|
|
2741
|
-
quote: "The fastest way we've found to talk to customers at scale.",
|
|
2742
|
-
attribution: "Jamie R., Head of Growth",
|
|
2743
|
-
preset: "elegant"
|
|
2744
|
-
}
|
|
2745
|
-
},
|
|
2746
|
-
{
|
|
2747
|
-
name: "list-card",
|
|
2748
|
-
tier: "labs",
|
|
2749
|
-
description: `An agenda, steps, or "what you'll get" beat: a headline with a short bulleted list revealed sequentially.`,
|
|
2750
|
-
keywords: ["bullet list", "agenda", "steps", "what you'll get", "checklist", "how it works"],
|
|
2751
|
-
controls: ["title", "items", "preset?", "backgroundImage?", "variant?", "theme?"],
|
|
2752
|
-
exampleControls: {
|
|
2753
|
-
title: "What you'll get",
|
|
2754
|
-
items: ["A custom quote", "A 15-minute call", "A live demo", "A follow-up plan"],
|
|
2755
|
-
preset: "bold"
|
|
2756
|
-
}
|
|
2757
|
-
},
|
|
2758
|
-
{
|
|
2759
|
-
name: "cta-card",
|
|
2760
|
-
tier: "labs",
|
|
2761
|
-
description: "A closing call-to-action: headline, action line, and optional subtext telling the viewer what to do next.",
|
|
2762
|
-
keywords: ["call to action", "closing screen", "do this next", "sign up prompt", "end card"],
|
|
2763
|
-
controls: ["headline", "action", "subtext?", "preset?", "backgroundImage?", "variant?", "theme?"],
|
|
2764
|
-
exampleControls: {
|
|
2765
|
-
headline: "Ready to get started?",
|
|
2766
|
-
action: "Sign up free",
|
|
2767
|
-
subtext: "No credit card required",
|
|
2768
|
-
preset: "cinematic"
|
|
2769
|
-
}
|
|
2770
|
-
},
|
|
2771
|
-
{
|
|
2772
|
-
name: "slideshow",
|
|
2773
|
-
tier: "public",
|
|
2774
|
-
description: "A photo and video montage: images and/or video clips with Ken Burns motion and configurable transitions, with optional narration or background audio (audio_url / background_audio_url) synced to the track length. Defaults to silent (motion only) when no audio_url is given - for the richer per-item mixed-media dials or advanced style overrides, use clipform_generate_video instead.",
|
|
2775
|
-
keywords: ["photo montage", "image slideshow", "ken burns", "picture story", "gallery", "photo gallery", "narrated montage", "video montage"],
|
|
2776
|
-
controls: ["images", "items?", "effect?", "transition?", "preset?", "secondsPerImage?", "audio_url?", "background_audio_url?", "background_audio_volume?", "duration_seconds?", "theme?"],
|
|
2777
|
-
exampleControls: {
|
|
2778
|
-
images: [
|
|
2779
|
-
"https://picsum.photos/seed/clipform-slideshow-1/1080/1920",
|
|
2780
|
-
"https://picsum.photos/seed/clipform-slideshow-2/1080/1920",
|
|
2781
|
-
"https://picsum.photos/seed/clipform-slideshow-3/1080/1920"
|
|
2782
|
-
],
|
|
2783
|
-
transition: "fade"
|
|
2784
|
-
}
|
|
2785
|
-
},
|
|
2786
|
-
{
|
|
2787
|
-
name: "guess-the-city",
|
|
2788
|
-
tier: "public",
|
|
2789
|
-
description: 'A map "guess where this is" reveal - the camera flies from a globe down onto a mystery city with place names hidden, then optionally reveals the answer.',
|
|
2790
|
-
keywords: ["guess the location", "guess the city", "where in the world", "geography trivia", "map flyover", "guess the country"],
|
|
2791
|
-
controls: ["lat", "lng", "name?", "motion?", "basemap?", "revealName?", "theme?"],
|
|
2792
|
-
exampleControls: {
|
|
2793
|
-
lat: 48.8566,
|
|
2794
|
-
lng: 2.3522,
|
|
2795
|
-
name: "Paris",
|
|
2796
|
-
motion: "zoom-in"
|
|
2797
|
-
}
|
|
2798
|
-
},
|
|
2799
|
-
{
|
|
2800
|
-
name: "versus",
|
|
2801
|
-
tier: "public",
|
|
2802
|
-
description: 'A head-to-head "this or that" comparison: two options side by side for the viewer to pick between.',
|
|
2803
|
-
keywords: ["this or that", "versus", "a or b", "which do you prefer", "head to head", "pick a side", "would you rather"],
|
|
2804
|
-
controls: ["left", "right", "leftLabel?", "rightLabel?", "theme?"],
|
|
2805
|
-
exampleControls: {
|
|
2806
|
-
left: "https://picsum.photos/seed/clipform-versus-left/1080/1920",
|
|
2807
|
-
right: "https://picsum.photos/seed/clipform-versus-right/1080/1920",
|
|
2808
|
-
leftLabel: "Option A",
|
|
2809
|
-
rightLabel: "Option B"
|
|
2810
|
-
}
|
|
2811
|
-
},
|
|
2812
|
-
{
|
|
2813
|
-
name: "pick-the-answer",
|
|
2814
|
-
tier: "public",
|
|
2815
|
-
description: "A multiple-choice question grid - the everyday quiz beat. Pair with a choice node's own answer feedback for the win/lose beat; set reveal: true for an optional spotlight-the-correct-option-with-a-green-tick payoff variant.",
|
|
2816
|
-
keywords: ["multiple choice", "quiz options", "pick the answer", "pick the correct one", "reveal the answer", "trivia question", "question grid"],
|
|
2817
|
-
controls: ["options", "reveal?", "correctIndex?", "columns?", "theme?"],
|
|
2818
|
-
exampleControls: {
|
|
2819
|
-
options: ["Paris", "London", "Rome", "Berlin"],
|
|
2820
|
-
reveal: true,
|
|
2821
|
-
correctIndex: 0
|
|
2822
|
-
}
|
|
2823
|
-
},
|
|
2824
|
-
{
|
|
2825
|
-
name: "odd-one-out",
|
|
2826
|
-
tier: "public",
|
|
2827
|
-
description: `A "spot the one that does not belong" grid puzzle. Pair with a choice node's own answer feedback for the win/lose beat; set reveal: true for an optional spotlight-the-odd-item payoff variant.`,
|
|
2828
|
-
keywords: ["odd one out", "spot the odd one", "which does not belong", "find the different one", "which is different"],
|
|
2829
|
-
controls: ["items", "reveal?", "oddIndex?", "columns?", "theme?"],
|
|
2830
|
-
exampleControls: {
|
|
2831
|
-
items: [
|
|
2832
|
-
"https://picsum.photos/seed/clipform-odd-1/1080/1920",
|
|
2833
|
-
"https://picsum.photos/seed/clipform-odd-2/1080/1920",
|
|
2834
|
-
"https://picsum.photos/seed/clipform-odd-3/1080/1920",
|
|
2835
|
-
"https://picsum.photos/seed/clipform-odd-4/1080/1920"
|
|
2836
|
-
],
|
|
2837
|
-
reveal: true,
|
|
2838
|
-
oddIndex: 2
|
|
2839
|
-
}
|
|
2840
|
-
},
|
|
2841
|
-
{
|
|
2842
|
-
name: "photo-grid",
|
|
2843
|
-
tier: "public",
|
|
2844
|
-
description: "A photo wall or mosaic: several images shown together in one grid, with optional captions.",
|
|
2845
|
-
keywords: ["photo grid", "photo wall", "mosaic", "image grid", "moodboard", "gallery grid"],
|
|
2846
|
-
controls: ["images", "columns?", "labels?", "theme?"],
|
|
2847
|
-
exampleControls: {
|
|
2848
|
-
images: [
|
|
2849
|
-
"https://picsum.photos/seed/clipform-photo-1/1080/1920",
|
|
2850
|
-
"https://picsum.photos/seed/clipform-photo-2/1080/1920",
|
|
2851
|
-
"https://picsum.photos/seed/clipform-photo-3/1080/1920",
|
|
2852
|
-
"https://picsum.photos/seed/clipform-photo-4/1080/1920"
|
|
2853
|
-
]
|
|
2854
|
-
}
|
|
2855
|
-
}
|
|
2856
|
-
];
|
|
2857
|
-
var VIDEO_TEMPLATE_NAMES = VIDEO_TEMPLATE_REGISTRY.map((r) => r.name);
|
|
2858
|
-
|
|
2859
2631
|
// ../config/logic-chain.js
|
|
2860
2632
|
function outgoingTargets(actions, node) {
|
|
2861
2633
|
const out = [];
|
|
@@ -3168,27 +2940,6 @@ var CONTACT_FIELDS = [
|
|
|
3168
2940
|
var CONTACT_FIELDS_MAP = Object.fromEntries(
|
|
3169
2941
|
CONTACT_FIELDS.map((f) => [f.id, f])
|
|
3170
2942
|
);
|
|
3171
|
-
var KEN_BURNS_EFFECTS = [
|
|
3172
|
-
"pan-left",
|
|
3173
|
-
"pan-right",
|
|
3174
|
-
"pan-up",
|
|
3175
|
-
"pan-down",
|
|
3176
|
-
"zoom-in-pan-left",
|
|
3177
|
-
"zoom-in-pan-right",
|
|
3178
|
-
"zoom-in",
|
|
3179
|
-
"zoom-out",
|
|
3180
|
-
"static"
|
|
3181
|
-
];
|
|
3182
|
-
var KEN_BURNS_PRESETS = [
|
|
3183
|
-
"cinematic",
|
|
3184
|
-
"dramatic",
|
|
3185
|
-
"calm",
|
|
3186
|
-
"documentary",
|
|
3187
|
-
"dreamy",
|
|
3188
|
-
"moody",
|
|
3189
|
-
"energetic"
|
|
3190
|
-
];
|
|
3191
|
-
var KEN_BURNS_FIT_MODES = ["cover", "blur-pad", "auto"];
|
|
3192
2943
|
var COMPOSITION_REGISTRY = [
|
|
3193
2944
|
// Beds (full-bleed backgrounds)
|
|
3194
2945
|
{ id: "Slideshow", tier: "public", kind: "bed", scene_layer: true },
|
|
@@ -3245,7 +2996,6 @@ var MCP_TOOL_TOOLSETS = {
|
|
|
3245
2996
|
// composition's `boundary` prop, so it lives with the render tools.
|
|
3246
2997
|
clipform_fetch_boundary: "media",
|
|
3247
2998
|
clipform_generate_tts: "media",
|
|
3248
|
-
clipform_generate_video: "media",
|
|
3249
2999
|
clipform_render_composition: "media",
|
|
3250
3000
|
clipform_render_video_template: "media",
|
|
3251
3001
|
clipform_check_render: "media",
|
|
@@ -3470,17 +3220,9 @@ export {
|
|
|
3470
3220
|
ALL_VARIANTS,
|
|
3471
3221
|
resolveFormType,
|
|
3472
3222
|
getDiscoveryParams,
|
|
3473
|
-
SLIDESHOW_COMPOSITION_TRANSITIONS,
|
|
3474
|
-
SLIDESHOW_TRANSITION_DURATION,
|
|
3475
|
-
isHttpUrl,
|
|
3476
|
-
HTTP_URL_MESSAGE,
|
|
3477
|
-
VIDEO_LOOK_NAMES,
|
|
3478
3223
|
defaultTarget,
|
|
3479
3224
|
bfsOrder,
|
|
3480
3225
|
CONTACT_FIELDS,
|
|
3481
|
-
KEN_BURNS_EFFECTS,
|
|
3482
|
-
KEN_BURNS_PRESETS,
|
|
3483
|
-
KEN_BURNS_FIT_MODES,
|
|
3484
3226
|
exposedCompositionIds,
|
|
3485
3227
|
MCP_TOOL_TIERS,
|
|
3486
3228
|
MCP_TOOL_TOOLSETS,
|
|
@@ -3493,4 +3235,4 @@ export {
|
|
|
3493
3235
|
getSessionContextWithAuth,
|
|
3494
3236
|
getSessionContext
|
|
3495
3237
|
};
|
|
3496
|
-
//# sourceMappingURL=chunk-
|
|
3238
|
+
//# sourceMappingURL=chunk-KNOCYZHG.js.map
|