@clipform/mcp-server 1.29.0 → 1.30.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.
@@ -4107,30 +4107,25 @@ function quizWorkflow(args, sessionContext, authMode = "oauth") {
4107
4107
 
4108
4108
  1. **Research** the topic - find surprising facts, common misconceptions, myth-busters
4109
4109
  2. **Write questions** - follow the difficulty curve (easy start, hard middle, satisfying end). Target ${count} questions.
4110
- 3. **Create the form** with clipform_create_form:
4111
- - show_step_counter: true
4112
- - disable_back_navigation: true
4113
- 4. **Add questions** with clipform_add_node (type: "choice"):
4114
- - config: { choice: { show_answer_feedback: true }, randomise_options: true }
4115
- - score: 1 on correct option, score: 0 on wrong
4116
- - 3-4 wrong answers per question
4117
- - **IMPORTANT: vary the position of the correct answer** - do NOT put it first every time. Spread correct answers across positions 1-4 so there's no guessable pattern (e.g. Q1=pos3, Q2=pos1, Q3=pos4, Q4=pos2...)
4118
- 5. **Generate narration** with clipform_generate_tts - batch ALL questions in a single call (pass an array of items). Tease the question - do NOT reveal the answer or read options aloud. Keep each narration 5-15 seconds.
4119
- 6. **Build video** for each question:
4110
+ 3. **Build the whole form in ONE clipform_create_form call** - pass nodes, settings, and tags together; do NOT create an empty form and add nodes one by one:
4111
+ - Settings: show_step_counter: true, disable_back_navigation: true
4112
+ - One choice node per question: config { choice: { show_answer_feedback: true }, randomise_options: true }, options with score: 1 on the correct answer and score: 0 on 3-4 plausible wrong ones. The viewer shuffles options at render time, so list them in any order. Scored options enable correct-answer marking automatically.
4113
+ - Final end_screen node - EVERY quiz must have:
4114
+ - show_score: true, icon: "trophy"
4115
+ - show_share_button: true (drives virality)
4116
+ - cta_type: "restart", cta_text: a short challenge like "Beat your score?" or "Try again?"
4117
+ - title and message that fit the quiz's voice - short, punchy, and specific to the topic (not generic "Good job!"). Example: title: "Well played!", message: "Share your score and challenge a friend."
4118
+ - NOTE: Personalised messages per score tier (score_ranges) are coming soon. For now, write one great end screen message that works for all scores.
4119
+ - tags: one format (quiz/survey/interview/feedback/lead-gen), one genre (trivia/personality/nps/poll/testimonial), and 2-3 topic words
4120
+ 4. **Generate narration** with clipform_generate_tts - batch ALL questions in a single call (pass an array of items). Tease the question - do NOT reveal the answer or read options aloud. Keep each narration 5-15 seconds.
4121
+ 5. **Build video** for each question:
4120
4122
  - clipform_search_media (kind: "image") - 3 images per question
4121
4123
  - clipform_generate_video - creates Ken Burns video synced to audio
4122
- 7. **Attach media** with clipform_upload_node_media. Include captions, set show_captions: true.
4123
- 8. **Update end screen** with clipform_update_node - EVERY quiz must have:
4124
- - show_score: true, icon: "trophy"
4125
- - show_share_button: true (drives virality)
4126
- - cta_type: "restart", cta_text: a short challenge like "Beat your score?" or "Try again?"
4127
- - title and message that fit the quiz's voice - short, punchy, and specific to the topic (not generic "Good job!"). Example: title: "Well played!", message: "Share your score and challenge a friend."
4128
- - NOTE: Personalised messages per score tier (score_ranges) are coming soon. For now, write one great end screen message that works for all scores.
4129
- 9. **Publish** with clipform_update_form
4130
- 10. **Tag the form** - pass tags: one format (quiz/survey/interview/feedback/lead-gen), one genre (trivia/personality/nps/poll/testimonial), and 2-3 topic words
4131
- 11. **Log** with clipform_log_generation (sources, images, attributions)
4124
+ 6. **Attach media** with clipform_upload_node_media. Include captions, set show_captions: true.
4125
+ 7. **Publish** with clipform_update_form
4126
+ 8. **Log** with clipform_log_generation (sources, images, attributions)
4132
4127
 
4133
- > **Text-only override:** If the user explicitly asked for text-only (no video), skip steps 6-7 (video production and media attachment). Still generate narration in step 5.`;
4128
+ > **Text-only override:** If the user explicitly asked for text-only (no video), skip steps 5-6 (video production and media attachment). Still generate narration in step 4.`;
4134
4129
  }
4135
4130
  function personalityQuizWorkflow(args, sessionContext, authMode = "oauth") {
4136
4131
  const topic = args.topic ? ` - "${args.topic}"` : "";
@@ -4148,24 +4143,22 @@ There are NO correct answers. Each option should feel equally valid - the quiz i
4148
4143
 
4149
4144
  1. **Define 3-5 outcome categories** conceptually - these guide your question design even though automated scoring is not yet available.
4150
4145
  2. **Write questions** - each question should feel revealing but fun. Target ${count} questions.
4151
- 3. **Create the form** with clipform_create_form:
4152
- - show_step_counter: true
4153
- - disable_back_navigation: true
4154
- 4. **Add questions** with clipform_add_node (type: "choice"):
4155
- - config: { choice: { show_answer_feedback: false } } (no right/wrong!)
4156
- - Do NOT set randomise_options (option order matters for personality quizzes - lead with the most appealing)
4157
- - Do NOT set score or scores on options (category-based scoring is not yet available)
4158
- 5. **Generate narration** with clipform_generate_tts - batch ALL questions in a single call. Conversational, reflective tone. "What does this say about you?" not "Do you know the answer?"
4159
- 6. **Build video** + **attach media** (same as knowledge quiz workflow)
4160
- 7. **Update end screen** with clipform_update_node - EVERY personality quiz must have:
4161
- - show_score: false, icon: "star"
4162
- - show_share_button: true (personality results are inherently shareable)
4163
- - cta_type: "restart", cta_text: "Find out again?" or "Take it again?"
4164
- - Write a title and message that feel personal and shareable. Example: title: "Thanks for playing!", message: "Share this quiz with friends and compare your answers."
4165
- - NOTE: Automated result screens per category (scoring_results) are coming soon. For now, write one engaging end screen.
4166
- 8. **Publish** with clipform_update_form
4167
- 9. **Tag the form** - pass tags: one format (quiz/survey/interview/feedback/lead-gen), one genre (trivia/personality/nps/poll/testimonial), and 2-3 topic words
4168
- 10. **Log** with clipform_log_generation`;
4146
+ 3. **Build the whole form in ONE clipform_create_form call** - pass nodes, settings, and tags together; do NOT create an empty form and add nodes one by one:
4147
+ - Settings: show_step_counter: true, disable_back_navigation: true
4148
+ - One choice node per question: config { choice: { show_answer_feedback: false } } (no right/wrong!)
4149
+ - Do NOT set randomise_options (option order matters for personality quizzes - lead with the most appealing)
4150
+ - Do NOT set score or scores on options (category-based scoring is not yet available)
4151
+ - Final end_screen node - EVERY personality quiz must have:
4152
+ - show_score: false, icon: "star"
4153
+ - show_share_button: true (personality results are inherently shareable)
4154
+ - cta_type: "restart", cta_text: "Find out again?" or "Take it again?"
4155
+ - Write a title and message that feel personal and shareable. Example: title: "Thanks for playing!", message: "Share this quiz with friends and compare your answers."
4156
+ - NOTE: Automated result screens per category (scoring_results) are coming soon. For now, write one engaging end screen.
4157
+ - tags: one format (quiz/survey/interview/feedback/lead-gen), one genre (trivia/personality/nps/poll/testimonial), and 2-3 topic words
4158
+ 4. **Generate narration** with clipform_generate_tts - batch ALL questions in a single call. Conversational, reflective tone. "What does this say about you?" not "Do you know the answer?"
4159
+ 5. **Build video** + **attach media** (same as knowledge quiz workflow)
4160
+ 6. **Publish** with clipform_update_form
4161
+ 7. **Log** with clipform_log_generation`;
4169
4162
  }
4170
4163
  function comprehensionQuizWorkflow(args, sessionContext, authMode = "oauth") {
4171
4164
  const count = args.question_count ?? 8;
@@ -4187,28 +4180,23 @@ function comprehensionQuizWorkflow(args, sessionContext, authMode = "oauth") {
4187
4180
  - Include 1-2 inference questions: "Based on the video, why does the presenter believe...?"
4188
4181
  - Avoid questions answerable without watching (e.g., common knowledge about the topic)
4189
4182
  4. **Adapt to the audience**${audienceLabel} - simplify language for younger audiences, focus on concrete/visual details rather than abstract arguments
4190
- 5. **Create the form** with clipform_create_form:
4191
- - show_step_counter: true
4192
- - disable_back_navigation: true
4193
- 6. **Add questions** with clipform_add_node (type: "choice"):
4194
- - config: { choice: { show_answer_feedback: true }, randomise_options: true }
4195
- - score: 1 on correct option, score: 0 on wrong
4196
- - 3-4 wrong answers per question - make distractors plausible (things someone might guess without watching)
4197
- - **IMPORTANT: vary the position of the correct answer** - do NOT put it first every time. Spread correct answers across positions 1-4 so there's no guessable pattern (e.g. Q1=pos3, Q2=pos1, Q3=pos4, Q4=pos2...)
4198
- 7. **Generate narration** with clipform_generate_tts - batch ALL questions in a single call. Reference the video naturally: "If you watched closely, you'll know this one..." Keep each narration 5-10 seconds.
4199
- 8. **Build video** for each question:
4183
+ 5. **Build the whole form in ONE clipform_create_form call** - pass nodes, settings, and tags together; do NOT create an empty form and add nodes one by one:
4184
+ - Settings: show_step_counter: true, disable_back_navigation: true
4185
+ - One choice node per question: config { choice: { show_answer_feedback: true }, randomise_options: true }, options with score: 1 on the correct answer and score: 0 on 3-4 plausible wrong ones - make distractors things someone might guess without watching. The viewer shuffles options at render time, so list them in any order. Scored options enable correct-answer marking automatically.
4186
+ - Final end_screen node:
4187
+ - show_score: true, icon: "trophy"
4188
+ - show_share_button: true
4189
+ - cta_type: "restart", cta_text: "Rewatch and try again?"
4190
+ - title and message that reference the video. Example: title: "How well do you know this video?", message: "Share your score and see if your friends were really paying attention."
4191
+ - NOTE: Personalised messages per score tier (score_ranges) are coming soon. For now, write one great end screen message.
4192
+ - tags: ["quiz", "comprehension", "youtube"] + 2-3 topic words from the video
4193
+ 6. **Generate narration** with clipform_generate_tts - batch ALL questions in a single call. Reference the video naturally: "If you watched closely, you'll know this one..." Keep each narration 5-10 seconds.
4194
+ 7. **Build video** for each question:
4200
4195
  - clipform_search_media (kind: "image") - 3 images per question
4201
4196
  - clipform_generate_video - Ken Burns video synced to audio
4202
- 9. **Attach media** with clipform_upload_node_media. Include captions, set show_captions: true.
4203
- 10. **Update end screen** with clipform_update_node:
4204
- - show_score: true, icon: "trophy"
4205
- - show_share_button: true
4206
- - cta_type: "restart", cta_text: "Rewatch and try again?"
4207
- - title and message that reference the video. Example: title: "How well do you know this video?", message: "Share your score and see if your friends were really paying attention."
4208
- - NOTE: Personalised messages per score tier (score_ranges) are coming soon. For now, write one great end screen message.
4209
- 11. **Publish** with clipform_update_form
4210
- 12. **Tag** - tags: ["quiz", "comprehension", "youtube"] + 2-3 topic words from the video
4211
- 13. **Log** with clipform_log_generation - include the YouTube URL, video title, and channel as sources
4197
+ 8. **Attach media** with clipform_upload_node_media. Include captions, set show_captions: true.
4198
+ 9. **Publish** with clipform_update_form
4199
+ 10. **Log** with clipform_log_generation - include the YouTube URL, video title, and channel as sources
4212
4200
 
4213
4201
  ## Question Types for Comprehension
4214
4202
 
@@ -4222,7 +4210,7 @@ function comprehensionQuizWorkflow(args, sessionContext, authMode = "oauth") {
4222
4210
 
4223
4211
  Wrong answers should sound right to someone who didn't watch but googled the topic. The quiz should be unfair to non-watchers and fair to watchers.
4224
4212
 
4225
- > **Text-only override:** If the user explicitly asked for text-only (no video), skip steps 8-9 (video production and media attachment). Still generate narration in step 7.`;
4213
+ > **Text-only override:** If the user explicitly asked for text-only (no video), skip steps 7-8 (video production and media attachment). Still generate narration in step 6.`;
4226
4214
  }
4227
4215
  function interviewWorkflow(args, sessionContext, authMode = "oauth") {
4228
4216
  const purpose = args.purpose ?? "responses";
@@ -4671,4 +4659,4 @@ export {
4671
4659
  getWorkflowText,
4672
4660
  registerPrompts
4673
4661
  };
4674
- //# sourceMappingURL=chunk-6SFMF2AQ.js.map
4662
+ //# sourceMappingURL=chunk-ELO7KCMZ.js.map