@clipform/mcp-server 1.15.0 → 1.16.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.
|
@@ -20918,6 +20918,7 @@ var NODE_TYPES = {
|
|
|
20918
20918
|
supports_media: false,
|
|
20919
20919
|
is_system: true,
|
|
20920
20920
|
is_active: true,
|
|
20921
|
+
show_in_results: false,
|
|
20921
20922
|
default_config: null,
|
|
20922
20923
|
config_schema: null,
|
|
20923
20924
|
response_schema: null,
|
|
@@ -20942,6 +20943,7 @@ var NODE_TYPES = {
|
|
|
20942
20943
|
supports_media: true,
|
|
20943
20944
|
is_system: false,
|
|
20944
20945
|
is_active: true,
|
|
20946
|
+
show_in_results: true,
|
|
20945
20947
|
default_config: {
|
|
20946
20948
|
selection_mode: "single",
|
|
20947
20949
|
choice: { enable_branching: true, record_scores: false },
|
|
@@ -21041,6 +21043,7 @@ var NODE_TYPES = {
|
|
|
21041
21043
|
supports_media: true,
|
|
21042
21044
|
is_system: false,
|
|
21043
21045
|
is_active: true,
|
|
21046
|
+
show_in_results: true,
|
|
21044
21047
|
default_config: {
|
|
21045
21048
|
formats: [
|
|
21046
21049
|
{ order: 0, format: "text" },
|
|
@@ -21083,7 +21086,17 @@ var NODE_TYPES = {
|
|
|
21083
21086
|
type: "object",
|
|
21084
21087
|
properties: {
|
|
21085
21088
|
type: { enum: ["audio", "video"], type: "string" },
|
|
21086
|
-
storage_path: { type: "string" }
|
|
21089
|
+
storage_path: { type: "string" },
|
|
21090
|
+
facing_mode: { enum: ["user", "environment"], type: "string" },
|
|
21091
|
+
preview_crop: {
|
|
21092
|
+
type: "object",
|
|
21093
|
+
properties: {
|
|
21094
|
+
stream_width: { type: "number" },
|
|
21095
|
+
stream_height: { type: "number" },
|
|
21096
|
+
preview_width: { type: "number" },
|
|
21097
|
+
preview_height: { type: "number" }
|
|
21098
|
+
}
|
|
21099
|
+
}
|
|
21087
21100
|
},
|
|
21088
21101
|
description: "Media response (when response_type is audio or video)"
|
|
21089
21102
|
},
|
|
@@ -21113,7 +21126,17 @@ var NODE_TYPES = {
|
|
|
21113
21126
|
type: "object",
|
|
21114
21127
|
properties: {
|
|
21115
21128
|
type: { enum: ["audio", "video"], type: "string" },
|
|
21116
|
-
storage_path: { type: "string" }
|
|
21129
|
+
storage_path: { type: "string" },
|
|
21130
|
+
facing_mode: { enum: ["user", "environment"], type: "string" },
|
|
21131
|
+
preview_crop: {
|
|
21132
|
+
type: "object",
|
|
21133
|
+
properties: {
|
|
21134
|
+
stream_width: { type: "number" },
|
|
21135
|
+
stream_height: { type: "number" },
|
|
21136
|
+
preview_width: { type: "number" },
|
|
21137
|
+
preview_height: { type: "number" }
|
|
21138
|
+
}
|
|
21139
|
+
}
|
|
21117
21140
|
}
|
|
21118
21141
|
},
|
|
21119
21142
|
transcription: {
|
|
@@ -21142,6 +21165,7 @@ var NODE_TYPES = {
|
|
|
21142
21165
|
supports_media: true,
|
|
21143
21166
|
is_system: false,
|
|
21144
21167
|
is_active: false,
|
|
21168
|
+
show_in_results: true,
|
|
21145
21169
|
default_config: null,
|
|
21146
21170
|
config_schema: {
|
|
21147
21171
|
type: "object",
|
|
@@ -21176,6 +21200,7 @@ var NODE_TYPES = {
|
|
|
21176
21200
|
supports_media: false,
|
|
21177
21201
|
is_system: false,
|
|
21178
21202
|
is_active: false,
|
|
21203
|
+
show_in_results: true,
|
|
21179
21204
|
default_config: null,
|
|
21180
21205
|
config_schema: {
|
|
21181
21206
|
type: "object",
|
|
@@ -21250,6 +21275,7 @@ var NODE_TYPES = {
|
|
|
21250
21275
|
supports_media: false,
|
|
21251
21276
|
is_system: false,
|
|
21252
21277
|
is_active: true,
|
|
21278
|
+
show_in_results: false,
|
|
21253
21279
|
default_config: {
|
|
21254
21280
|
contact: {
|
|
21255
21281
|
fields: [
|
|
@@ -21259,7 +21285,7 @@ var NODE_TYPES = {
|
|
|
21259
21285
|
prompt: ""
|
|
21260
21286
|
},
|
|
21261
21287
|
consent_items: [
|
|
21262
|
-
{ id: "default-consent", label: "I agree to the privacy policy and terms of service", order: 0,
|
|
21288
|
+
{ id: "default-consent", name: "Privacy policy", label: "I agree to the privacy policy and terms of service", order: 0, type: "consent" }
|
|
21263
21289
|
]
|
|
21264
21290
|
},
|
|
21265
21291
|
config_schema: {
|
|
@@ -21288,9 +21314,10 @@ var NODE_TYPES = {
|
|
|
21288
21314
|
type: "object",
|
|
21289
21315
|
properties: {
|
|
21290
21316
|
id: { type: "string" },
|
|
21317
|
+
name: { type: "string" },
|
|
21291
21318
|
label: { type: "string" },
|
|
21292
21319
|
order: { type: "number" },
|
|
21293
|
-
|
|
21320
|
+
type: { type: "string", enum: ["consent", "opt_in"] }
|
|
21294
21321
|
}
|
|
21295
21322
|
}
|
|
21296
21323
|
}
|
|
@@ -21318,11 +21345,13 @@ var NODE_TYPES = {
|
|
|
21318
21345
|
type: "array",
|
|
21319
21346
|
items: {
|
|
21320
21347
|
type: "object",
|
|
21321
|
-
required: ["id", "label", "accepted"],
|
|
21348
|
+
required: ["id", "name", "label", "accepted", "type"],
|
|
21322
21349
|
properties: {
|
|
21323
21350
|
id: { type: "string" },
|
|
21351
|
+
name: { type: "string" },
|
|
21324
21352
|
label: { type: "string" },
|
|
21325
|
-
accepted: { type: "boolean" }
|
|
21353
|
+
accepted: { type: "boolean" },
|
|
21354
|
+
type: { type: "string", enum: ["consent", "opt_in"] }
|
|
21326
21355
|
}
|
|
21327
21356
|
},
|
|
21328
21357
|
description: "Consent checkbox entries"
|
|
@@ -21364,6 +21393,7 @@ var NODE_TYPES = {
|
|
|
21364
21393
|
supports_media: false,
|
|
21365
21394
|
is_system: false,
|
|
21366
21395
|
is_active: false,
|
|
21396
|
+
show_in_results: true,
|
|
21367
21397
|
default_config: null,
|
|
21368
21398
|
config_schema: {
|
|
21369
21399
|
type: "object",
|
|
@@ -21427,6 +21457,7 @@ var NODE_TYPES = {
|
|
|
21427
21457
|
supports_media: false,
|
|
21428
21458
|
is_system: false,
|
|
21429
21459
|
is_active: false,
|
|
21460
|
+
show_in_results: true,
|
|
21430
21461
|
default_config: { amount: null, currency: "usd", provider: "stripe" },
|
|
21431
21462
|
config_schema: {
|
|
21432
21463
|
type: "object",
|
|
@@ -21511,6 +21542,7 @@ var NODE_TYPES = {
|
|
|
21511
21542
|
supports_media: true,
|
|
21512
21543
|
is_system: false,
|
|
21513
21544
|
is_active: false,
|
|
21545
|
+
show_in_results: true,
|
|
21514
21546
|
default_config: {
|
|
21515
21547
|
choice: { enable_branching: true },
|
|
21516
21548
|
options: [
|
|
@@ -21573,6 +21605,7 @@ var NODE_TYPES = {
|
|
|
21573
21605
|
supports_media: true,
|
|
21574
21606
|
is_system: false,
|
|
21575
21607
|
is_active: true,
|
|
21608
|
+
show_in_results: false,
|
|
21576
21609
|
default_config: { options: [{ content: "Continue" }] },
|
|
21577
21610
|
config_schema: {
|
|
21578
21611
|
type: "object",
|
|
@@ -21611,6 +21644,7 @@ var NODE_TYPES = {
|
|
|
21611
21644
|
supports_media: false,
|
|
21612
21645
|
is_system: false,
|
|
21613
21646
|
is_active: true,
|
|
21647
|
+
show_in_results: false,
|
|
21614
21648
|
default_config: { url: "", auto_redirect: true },
|
|
21615
21649
|
config_schema: {
|
|
21616
21650
|
type: "object",
|
|
@@ -21641,6 +21675,7 @@ var NODE_TYPES = {
|
|
|
21641
21675
|
supports_media: false,
|
|
21642
21676
|
is_system: false,
|
|
21643
21677
|
is_active: false,
|
|
21678
|
+
show_in_results: false,
|
|
21644
21679
|
default_config: { links: [{ id: "default", url: "", title: "", description: "", order: 0 }], auto_redirect: false },
|
|
21645
21680
|
config_schema: {
|
|
21646
21681
|
type: "object",
|
|
@@ -21686,6 +21721,7 @@ var NODE_TYPES = {
|
|
|
21686
21721
|
supports_media: false,
|
|
21687
21722
|
is_system: false,
|
|
21688
21723
|
is_active: false,
|
|
21724
|
+
show_in_results: true,
|
|
21689
21725
|
default_config: null,
|
|
21690
21726
|
config_schema: {
|
|
21691
21727
|
type: "object",
|
|
@@ -21744,6 +21780,7 @@ var NODE_TYPES = {
|
|
|
21744
21780
|
supports_media: false,
|
|
21745
21781
|
is_system: false,
|
|
21746
21782
|
is_active: false,
|
|
21783
|
+
show_in_results: false,
|
|
21747
21784
|
default_config: { provider: "shopify", cta_mode: "checkout", source_mode: "manual" },
|
|
21748
21785
|
config_schema: {
|
|
21749
21786
|
type: "object",
|
|
@@ -21812,6 +21849,7 @@ var NODE_TYPES = {
|
|
|
21812
21849
|
supports_media: false,
|
|
21813
21850
|
is_system: false,
|
|
21814
21851
|
is_active: true,
|
|
21852
|
+
show_in_results: false,
|
|
21815
21853
|
default_config: null,
|
|
21816
21854
|
config_schema: {
|
|
21817
21855
|
type: "object",
|
|
@@ -21885,6 +21923,7 @@ var NODE_TYPE_METADATA = Object.fromEntries(
|
|
|
21885
21923
|
var TERMINAL_TYPES = Object.entries(NODE_TYPES).filter(([, v]) => v.is_terminal).map(([k]) => k);
|
|
21886
21924
|
var NON_COUNTABLE_TYPES = Object.entries(NODE_TYPES).filter(([, v]) => v.is_system || v.is_terminal).map(([k]) => k);
|
|
21887
21925
|
var NON_COUNTABLE_FILTER = `(${NON_COUNTABLE_TYPES.map((t) => `"${t}"`).join(",")})`;
|
|
21926
|
+
var RESULTS_EXCLUDED_TYPES = Object.entries(NODE_TYPES).filter(([, v]) => !v.show_in_results).map(([k]) => k);
|
|
21888
21927
|
|
|
21889
21928
|
// ../config/integration-catalog.js
|
|
21890
21929
|
var INTEGRATION_CATALOG = {
|
|
@@ -22344,6 +22383,8 @@ ${NODE_TYPES_DESCRIPTION}
|
|
|
22344
22383
|
|
|
22345
22384
|
All type definitions and config schemas are derived from @vid-master/config (answer-types). Refer to the config descriptions above for the correct keys and shapes.
|
|
22346
22385
|
|
|
22386
|
+
Fields marked AI-PROTECTED must only be set when the user explicitly requests them. Do not invent values for font, branding, or embed settings.
|
|
22387
|
+
|
|
22347
22388
|
Example: A form that asks a question, collects contact info, then finishes:
|
|
22348
22389
|
{
|
|
22349
22390
|
title: "Quick Survey",
|
|
@@ -22360,8 +22401,8 @@ Example: A form that asks a question, collects contact info, then finishes:
|
|
|
22360
22401
|
disable_back_navigation: external_exports.boolean().optional().describe("Prevent going back. Set true for quizzes."),
|
|
22361
22402
|
primary_color: external_exports.string().regex(/^#[0-9A-Fa-f]{6}$/).optional().describe("Primary/brand color as 6-digit hex (e.g. '#FF5500'). Used for buttons and accents."),
|
|
22362
22403
|
background_color: external_exports.string().regex(/^#[0-9A-Fa-f]{6}$/).optional().describe("Background color as 6-digit hex (e.g. '#1A1A2E')."),
|
|
22363
|
-
font_family: external_exports.string().optional().describe("
|
|
22364
|
-
embed_autoplay: external_exports.boolean().optional().describe("
|
|
22404
|
+
font_family: external_exports.string().optional().describe("AI-PROTECTED: Only set when the user explicitly requests a specific font."),
|
|
22405
|
+
embed_autoplay: external_exports.boolean().optional().describe("AI-PROTECTED: Only set when the user explicitly requests autoplay. Default: false."),
|
|
22365
22406
|
tags: external_exports.array(external_exports.string()).optional().describe("Tags for indexing (e.g. ['quiz', 'trivia', 'arsenal']). Include format, genre, and topics.")
|
|
22366
22407
|
},
|
|
22367
22408
|
annotations: {
|
|
@@ -22431,7 +22472,7 @@ Example: A form that asks a question, collects contact info, then finishes:
|
|
|
22431
22472
|
}
|
|
22432
22473
|
await callApi(`/forms/${formId}`, {
|
|
22433
22474
|
method: "PATCH",
|
|
22434
|
-
body: {
|
|
22475
|
+
body: { is_live: true }
|
|
22435
22476
|
});
|
|
22436
22477
|
if (tags && tags.length > 0) {
|
|
22437
22478
|
await callApi(`/forms/${formId}/tags`, {
|
|
@@ -22522,7 +22563,7 @@ function registerListFormsTool(server) {
|
|
|
22522
22563
|
const lines = [`Found ${data.forms.length} form(s):
|
|
22523
22564
|
`];
|
|
22524
22565
|
for (const f of data.forms) {
|
|
22525
|
-
const status = f.
|
|
22566
|
+
const status = f.is_live ? "live" : "draft";
|
|
22526
22567
|
const tagStr = f.tags.length > 0 ? ` [${f.tags.map((t) => t.name).join(", ")}]` : "";
|
|
22527
22568
|
lines.push(`- **${f.title || "(untitled)"}** [${status}]${tagStr}`);
|
|
22528
22569
|
lines.push(` ID: ${f.id}`);
|
|
@@ -22546,7 +22587,7 @@ function formatFormState(data) {
|
|
|
22546
22587
|
const lines = [
|
|
22547
22588
|
`Form: ${data.title}`,
|
|
22548
22589
|
`Form ID: ${data.form_id}`,
|
|
22549
|
-
`
|
|
22590
|
+
`Live: ${data.is_live}`,
|
|
22550
22591
|
``,
|
|
22551
22592
|
`Nodes (in order):`
|
|
22552
22593
|
];
|
|
@@ -22605,22 +22646,22 @@ function registerUpdateFormTool(server) {
|
|
|
22605
22646
|
"clipform_update_form",
|
|
22606
22647
|
{
|
|
22607
22648
|
title: "Update Clipform",
|
|
22608
|
-
description: `Update a form's title, publish status, settings, or tags. Use clipform_get_form first to see current values.`,
|
|
22649
|
+
description: `Update a form's title, publish status, settings, or tags. Use clipform_get_form first to see current values. Fields marked AI-PROTECTED must only be set when the user explicitly requests them.`,
|
|
22609
22650
|
inputSchema: {
|
|
22610
22651
|
form_id: external_exports.string().uuid().describe("The form UUID (returned by clipform_create_form, not the short share_id from the URL)"),
|
|
22611
22652
|
title: external_exports.string().optional().describe("New form title"),
|
|
22612
|
-
|
|
22653
|
+
is_live: external_exports.boolean().optional().describe("AI-PROTECTED: Only change live state when the user explicitly asks. Do not auto-publish."),
|
|
22613
22654
|
show_step_counter: external_exports.boolean().optional().describe("Show step counter (e.g. '1/5'). Recommended for quizzes."),
|
|
22614
22655
|
disable_back_navigation: external_exports.boolean().optional().describe("Prevent respondents from going back. Recommended for quizzes."),
|
|
22615
22656
|
total_steps: external_exports.number().nullable().optional().describe("Override the total step count shown in the step counter. Set null to auto-calculate."),
|
|
22616
22657
|
primary_color: external_exports.string().regex(/^#[0-9A-Fa-f]{6}$/).optional().describe("Primary/brand color as 6-digit hex (e.g. '#FF5500'). Used for buttons and accents."),
|
|
22617
22658
|
background_color: external_exports.string().regex(/^#[0-9A-Fa-f]{6}$/).optional().describe("Background color as 6-digit hex (e.g. '#1A1A2E')."),
|
|
22618
|
-
font_family: external_exports.string().optional().describe("
|
|
22619
|
-
embed_autoplay: external_exports.boolean().optional().describe("
|
|
22659
|
+
font_family: external_exports.string().optional().describe("AI-PROTECTED: Only set when the user explicitly requests a specific font."),
|
|
22660
|
+
embed_autoplay: external_exports.boolean().optional().describe("AI-PROTECTED: Only set when the user explicitly requests autoplay. Default: false."),
|
|
22620
22661
|
description: external_exports.string().nullable().optional().describe("SEO description (meta description, og:description). Set null to clear."),
|
|
22621
|
-
author: external_exports.string().nullable().optional().describe("
|
|
22622
|
-
brand_name: external_exports.string().nullable().optional().describe("
|
|
22623
|
-
logo_url: external_exports.string().nullable().optional().describe("
|
|
22662
|
+
author: external_exports.string().nullable().optional().describe("AI-PROTECTED: Only set when the user explicitly provides an author name. Set null to clear."),
|
|
22663
|
+
brand_name: external_exports.string().nullable().optional().describe("AI-PROTECTED: Only set when the user explicitly provides a brand name. Set null to clear."),
|
|
22664
|
+
logo_url: external_exports.string().nullable().optional().describe("AI-PROTECTED: Only set when the user explicitly provides a logo URL. Set null to clear."),
|
|
22624
22665
|
tags: external_exports.array(external_exports.string()).optional().describe("Replace all tags on this form. Pass the full desired set (e.g. ['quiz', 'trivia', 'slug:elephants']). Omit to leave tags unchanged.")
|
|
22625
22666
|
},
|
|
22626
22667
|
annotations: {
|
|
@@ -22630,10 +22671,10 @@ function registerUpdateFormTool(server) {
|
|
|
22630
22671
|
openWorldHint: true
|
|
22631
22672
|
}
|
|
22632
22673
|
},
|
|
22633
|
-
async ({ form_id, title,
|
|
22674
|
+
async ({ form_id, title, is_live, show_step_counter, disable_back_navigation, total_steps, primary_color, background_color, font_family, embed_autoplay, description, author, brand_name, logo_url, tags }) => {
|
|
22634
22675
|
const body = {};
|
|
22635
22676
|
if (title !== void 0) body.title = title;
|
|
22636
|
-
if (
|
|
22677
|
+
if (is_live !== void 0) body.is_live = is_live;
|
|
22637
22678
|
if (show_step_counter !== void 0) body.show_step_counter = show_step_counter;
|
|
22638
22679
|
if (disable_back_navigation !== void 0) body.disable_back_navigation = disable_back_navigation;
|
|
22639
22680
|
if (total_steps !== void 0) body.total_steps = total_steps;
|
|
@@ -22665,8 +22706,8 @@ function registerUpdateFormTool(server) {
|
|
|
22665
22706
|
}
|
|
22666
22707
|
const updates = [];
|
|
22667
22708
|
if (title !== void 0) updates.push(`Title \u2192 "${title}"`);
|
|
22668
|
-
if (
|
|
22669
|
-
updates.push(`
|
|
22709
|
+
if (is_live !== void 0)
|
|
22710
|
+
updates.push(`Live \u2192 ${is_live}`);
|
|
22670
22711
|
if (show_step_counter !== void 0)
|
|
22671
22712
|
updates.push(`Step counter \u2192 ${show_step_counter}`);
|
|
22672
22713
|
if (disable_back_navigation !== void 0)
|
|
@@ -25040,4 +25081,4 @@ export {
|
|
|
25040
25081
|
setApiKey,
|
|
25041
25082
|
createServer
|
|
25042
25083
|
};
|
|
25043
|
-
//# sourceMappingURL=chunk-
|
|
25084
|
+
//# sourceMappingURL=chunk-D64XBDOX.js.map
|