@clipform/mcp-server 2.5.1 → 2.10.2

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.
@@ -567,6 +567,80 @@ for (const [key, f] of Object.entries(FEATURES)) {
567
567
  }
568
568
  }
569
569
  }
570
+ var FEATURE_FLAGS = {
571
+ get ENABLE_BRANCHING() {
572
+ return FEATURES.branching.enabled;
573
+ },
574
+ get ENABLE_CUSTOM_SCORES() {
575
+ return FEATURES.custom_scores.enabled;
576
+ },
577
+ get ENABLE_TEXT_RESPONSE() {
578
+ return FEATURES.text_response.enabled;
579
+ },
580
+ get ENABLE_MULTI_SELECT() {
581
+ return FEATURES.multi_select.enabled;
582
+ },
583
+ get INLINE_EMBED() {
584
+ return FEATURES.embed_inline.enabled;
585
+ },
586
+ get WIDGET_EMBED() {
587
+ return FEATURES.embed_widget.enabled;
588
+ },
589
+ get WEBHOOKS() {
590
+ return FEATURES.webhooks.enabled;
591
+ },
592
+ get INTEGRATIONS() {
593
+ return Object.entries(FEATURES).some(([k, f]) => k.startsWith("integration_") && f.enabled);
594
+ },
595
+ get CUSTOM_FONTS() {
596
+ return FEATURES.custom_fonts.enabled;
597
+ },
598
+ get TRACKED_LINKS() {
599
+ return FEATURES.tracked_links.enabled;
600
+ },
601
+ get DYNAMIC_LINK() {
602
+ return FEATURES.dynamic_link.enabled;
603
+ },
604
+ get CUSTOM_DOMAINS() {
605
+ return FEATURES.custom_domains.enabled;
606
+ },
607
+ get BRANDED_QR() {
608
+ return FEATURES.branded_qr.enabled;
609
+ },
610
+ get EMAIL_SHARE() {
611
+ return FEATURES.email_share.enabled;
612
+ },
613
+ get SHARE_NODE() {
614
+ return FEATURES.share_node.enabled;
615
+ },
616
+ get BRAND_NAME() {
617
+ return FEATURES.brand_name.enabled;
618
+ },
619
+ get CSV_EXPORT() {
620
+ return FEATURES.csv_export.enabled;
621
+ },
622
+ get ALLOW_RESUME() {
623
+ return FEATURES.allow_resume.enabled;
624
+ },
625
+ get UTM_ANALYTICS() {
626
+ return FEATURES.utm_tracking.enabled;
627
+ },
628
+ get API_KEYS() {
629
+ return FEATURES.api_keys.enabled;
630
+ },
631
+ get NOTIFICATIONS() {
632
+ return FEATURES.notifications.enabled;
633
+ },
634
+ get IMPORT_TYPEFORM() {
635
+ return FEATURES.import_typeform.enabled;
636
+ },
637
+ get IMPORT_TALLY() {
638
+ return FEATURES.import_tally.enabled;
639
+ },
640
+ get PUBLIC_RESULTS() {
641
+ return FEATURES.public_results.enabled;
642
+ }
643
+ };
570
644
 
571
645
  // ../config/node-types.js
572
646
  var RESPONSE_FORMATS = ["text", "audio", "video"];
@@ -1099,7 +1173,7 @@ var NODE_TYPES = {
1099
1173
  label: "File Upload",
1100
1174
  shorthand: "Upload",
1101
1175
  icon: "Upload",
1102
- color: "#CFFAFE",
1176
+ color: "#ECFCCB",
1103
1177
  description: "Collect file uploads from respondents",
1104
1178
  category: "input",
1105
1179
  sort_order: 6,
@@ -1599,7 +1673,7 @@ var NODE_TYPES = {
1599
1673
  color: "#DBEAFE",
1600
1674
  description: "Simple button for acknowledgment or navigation",
1601
1675
  category: "input",
1602
- sort_order: 3,
1676
+ sort_order: 3.5,
1603
1677
  has_options: true,
1604
1678
  min_options: 1,
1605
1679
  max_options: 1,
@@ -2133,6 +2207,47 @@ var FORM_TYPES = {
2133
2207
  variant_guide_uris: {},
2134
2208
  variant_descriptions: {},
2135
2209
  prompt: { name: "create-booking", title: "Create a Booking Form", description: "Build an event registration or booking form with a personal video welcome" }
2210
+ },
2211
+ intake: {
2212
+ label: "Client Intake",
2213
+ description: "Client intake and onboarding form for a service business",
2214
+ sort_order: 8,
2215
+ category: "collection",
2216
+ aliases: ["client-intake", "onboarding", "enquiry", "inquiry", "new-client"],
2217
+ variants: [],
2218
+ required_features: [],
2219
+ required_node_types: ["details", "open", "end_screen"],
2220
+ default_media_style: "video",
2221
+ guide_uri: "clipform://guides/intake",
2222
+ guide_description: "Craft knowledge for client intake and onboarding forms - a warm welcome, minimal contact capture, a video-first question about what the client needs, and a clear next step",
2223
+ discovery: [
2224
+ { key: "use_case", question: "What kind of business or service? (massage, coaching, personal training, agency)", fallback: "General client intake", mode: "all" },
2225
+ { key: "response_format", question: "How should people answer the open question? (video, audio, text, all)", fallback: "All formats", mode: "full" }
2226
+ ],
2227
+ variant_discovery: {},
2228
+ variant_guide_uris: {},
2229
+ variant_descriptions: {},
2230
+ prompt: { name: "create-intake", title: "Create a Client Intake Form", description: "Build a warm client intake or onboarding form that captures contact details and what the client needs" }
2231
+ },
2232
+ "lead-capture": {
2233
+ label: "Lead Capture",
2234
+ description: "Linear lead capture or enquiry form - turn interest into a contact with minimal friction",
2235
+ sort_order: 9,
2236
+ category: "collection",
2237
+ aliases: ["lead", "lead-form", "enquiry-form", "waitlist", "get-a-quote"],
2238
+ variants: [],
2239
+ required_features: [],
2240
+ required_node_types: ["details", "end_screen"],
2241
+ default_media_style: "text",
2242
+ guide_uri: "clipform://guides/lead-capture",
2243
+ guide_description: "Craft knowledge for linear lead capture and enquiry forms - minimal friction, a light qualifier only if it routes follow-up, and a clear next step (no branching, no scoring)",
2244
+ discovery: [
2245
+ { key: "use_case", question: "What are you capturing leads for? (a service, a product, a waitlist, a quote)", fallback: "General enquiries", mode: "all" }
2246
+ ],
2247
+ variant_discovery: {},
2248
+ variant_guide_uris: {},
2249
+ variant_descriptions: {},
2250
+ prompt: { name: "create-lead-capture", title: "Create a Lead Capture Form", description: "Build a short lead capture or enquiry form that turns interest into a contact" }
2136
2251
  }
2137
2252
  };
2138
2253
  for (const def of Object.values(FORM_TYPES)) {
@@ -2183,7 +2298,9 @@ var HELP_TOPICS = {
2183
2298
  emailShare: { path: "/help/sharing", anchor: "share-by-email" },
2184
2299
  publicResults: { path: "/help/public-results", anchor: null },
2185
2300
  trash: { path: "/help/managing-forms", anchor: "trash" },
2186
- agreementVersions: { path: "/help/responses", anchor: "agreement-versions" }
2301
+ agreementVersions: { path: "/help/responses", anchor: "agreement-versions" },
2302
+ customDomains: { path: "/help/domains", anchor: null },
2303
+ customPath: { path: "/help/links", anchor: "custom-path-on-your-domain" }
2187
2304
  };
2188
2305
  function buildHelpLinks(docsBaseUrl) {
2189
2306
  const links = {};
@@ -2576,8 +2693,10 @@ var MCP_TOOL_TOOLSETS = {
2576
2693
  clipform_delete_form: "account",
2577
2694
  clipform_whoami: "account",
2578
2695
  clipform_get_results: "account",
2696
+ clipform_get_responses: "account",
2579
2697
  // forms: form/node structure + research tools used while building.
2580
2698
  clipform_create_form: "forms",
2699
+ clipform_import_form: "forms",
2581
2700
  clipform_add_node: "forms",
2582
2701
  clipform_update_node: "forms",
2583
2702
  clipform_delete_node: "forms",
@@ -2790,6 +2909,7 @@ async function getSessionContext() {
2790
2909
  }
2791
2910
 
2792
2911
  export {
2912
+ FEATURE_FLAGS,
2793
2913
  NODE_TYPES,
2794
2914
  ACTIVE_NODE_TYPES,
2795
2915
  NON_COUNTABLE_TYPES,
@@ -2817,4 +2937,4 @@ export {
2817
2937
  getSessionContextWithAuth,
2818
2938
  getSessionContext
2819
2939
  };
2820
- //# sourceMappingURL=chunk-3BYQLPTT.js.map
2940
+ //# sourceMappingURL=chunk-IL26A4IN.js.map