@clipform/mcp-server 4.2.5 → 4.2.6

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 CHANGED
@@ -75,7 +75,7 @@ Your MCP client lists these automatically on connect (via `tools/list`). Full re
75
75
  | `clipform_complete_media_upload` | Confirm a signed-PUT still image upload finished, after PUTting the bytes to the upload_url returned by clipform_upload_media_asset. |
76
76
  | `clipform_attach_node_media` | Attach an existing workspace media asset (from clipform_upload_media_asset) to one or more nodes (max 10). |
77
77
  | `clipform_get_node_media` | Get the media attached to a node, including processing status. |
78
- | `clipform_delete_node_media` | Remove media from a node. |
78
+ | `clipform_delete_node_media` | Remove media from a node by unlinking it; the media asset and its files stay in the workspace library and keep working on any other node or live form that uses them. |
79
79
  | `clipform_set_logic` | Set the next node for one or more nodes, wiring a linear route (A to B to C). |
80
80
  | `clipform_log_generation` | Internal audit step run by a form-generation workflow. |
81
81
  | `clipform_search_news` | Search recent news articles from NewsAPI and The Guardian and return them as structured results. |
@@ -6,7 +6,7 @@ import {
6
6
  recoveryHint,
7
7
  structuredResult,
8
8
  textResult
9
- } from "./chunk-GY5QLQOU.js";
9
+ } from "./chunk-Z33U4XX7.js";
10
10
  import "./chunk-VPF6MLKM.js";
11
11
  import "./chunk-PBQ5BQWD.js";
12
12
  import "./chunk-PZ5AY32C.js";
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  FULL_CAPS,
3
3
  getSessionContextWithAuth
4
- } from "./chunk-ECG7HBWZ.js";
4
+ } from "./chunk-X2BSOY4P.js";
5
5
  import {
6
6
  WORKFLOW_TYPES,
7
7
  getDiscoveryParams
8
- } from "./chunk-GY5QLQOU.js";
8
+ } from "./chunk-Z33U4XX7.js";
9
9
  import {
10
10
  __export
11
11
  } from "./chunk-PZ5AY32C.js";
@@ -15224,4 +15224,4 @@ export {
15224
15224
  getWorkflowText,
15225
15225
  registerPrompts
15226
15226
  };
15227
- //# sourceMappingURL=chunk-BL7T3UBS.js.map
15227
+ //# sourceMappingURL=chunk-CWTZNXI6.js.map
@@ -29,7 +29,7 @@ import {
29
29
  union,
30
30
  unknown,
31
31
  url
32
- } from "./chunk-BL7T3UBS.js";
32
+ } from "./chunk-CWTZNXI6.js";
33
33
  import {
34
34
  GUIDE_TYPES,
35
35
  QUIZ_VARIANTS,
@@ -38,7 +38,7 @@ import {
38
38
  getGuideUri,
39
39
  guideFallbackText,
40
40
  registerResources
41
- } from "./chunk-63PX3SVJ.js";
41
+ } from "./chunk-LLSUTEEN.js";
42
42
  import {
43
43
  ANON_PREVIEW_LINK_LABEL,
44
44
  ANON_PREVIEW_NOTICE,
@@ -49,7 +49,7 @@ import {
49
49
  anonPreviewNotice,
50
50
  capsFromToolsets,
51
51
  isPreviewViewerUrl
52
- } from "./chunk-ECG7HBWZ.js";
52
+ } from "./chunk-X2BSOY4P.js";
53
53
  import {
54
54
  ACTIVE_NODE_TYPES,
55
55
  CONTACT_FIELDS,
@@ -71,7 +71,7 @@ import {
71
71
  resolveFormType,
72
72
  structuredResult,
73
73
  textResult
74
- } from "./chunk-GY5QLQOU.js";
74
+ } from "./chunk-Z33U4XX7.js";
75
75
  import {
76
76
  getMcpAuth,
77
77
  runWithMcpAuth,
@@ -18348,7 +18348,7 @@ function registerDeleteNodeMediaTool(server) {
18348
18348
  "clipform_delete_node_media",
18349
18349
  {
18350
18350
  title: "Delete Node Media",
18351
- description: `Remove media from a node. Deletes the media record and the stored media asset (including any copy held by a third-party video provider). Requires user confirmation before it runs.`,
18351
+ description: `Remove media from a node by unlinking it; the media asset and its files stay in the workspace library and keep working on any other node or live form that uses them. Requires user confirmation before it runs.`,
18352
18352
  inputSchema: external_exports.object({
18353
18353
  form_id: external_exports.string().uuid().describe("The form UUID (returned by clipform_create_form, not the short share_id from the URL)"),
18354
18354
  node_id: external_exports.string().describe("The node ID"),
@@ -18360,16 +18360,15 @@ function registerDeleteNodeMediaTool(server) {
18360
18360
  // Deleting already-removed media has no further effect - textbook
18361
18361
  // idempotent delete (#2976).
18362
18362
  idempotentHint: true,
18363
- // Open-world: also deletes any copy held by a third-party video
18364
- // provider (#4434).
18365
- openWorldHint: true
18363
+ // Unlink only (#5070): no files or third-party copies are deleted.
18364
+ openWorldHint: false
18366
18365
  }
18367
18366
  },
18368
18367
  async ({ form_id, node_id, confirm }, ctx) => {
18369
18368
  const decision = await confirmDestructive(server, ctx, {
18370
18369
  alreadyConfirmed: confirm,
18371
- message: `Remove the media attached to node ${node_id}? This deletes the underlying video/file and cannot be undone.`,
18372
- relay: `Confirmation required: removing media from node ${node_id} deletes the underlying video/file and cannot be undone. Ask the user to confirm, then call clipform_delete_node_media again with confirm: true.`
18370
+ message: `Remove the media attached to node ${node_id}? The media asset stays in the library.`,
18371
+ relay: `Confirmation required: removing media from node ${node_id} unlinks it from the node (the media asset stays in the library). Ask the user to confirm, then call clipform_delete_node_media again with confirm: true.`
18373
18372
  });
18374
18373
  if (!decision.proceed) {
18375
18374
  return decision.result ?? textResult(decision.message);
@@ -20040,7 +20039,7 @@ function buildInstructions(caps) {
20040
20039
  "At the start of a build, call clipform_get_workflow to load the recipe for the form type, and clipform_get_guide for craft detail.",
20041
20040
  "Every *_id argument is a UUID returned by the tools - not the short share_id from a form URL.",
20042
20041
  "For an account-scoped request, call clipform_whoami first to confirm the active workspace and plan.",
20043
- caps.media ? "Deleting a form moves it to the trash (restorable from the dashboard); deleting a node or media cannot be undone (a node deleted on a live form stays on the live form until you publish). Those tools ask the user to confirm before running." : "Deleting a form moves it to the trash (restorable from the dashboard); deleting a node cannot be undone (on a live form it stays on the live form until you publish). Those tools ask the user to confirm before running."
20042
+ caps.media ? "Deleting a form moves it to the trash (restorable from the dashboard); deleting a node cannot be undone (a node deleted on a live form stays on the live form until you publish); removing media from a node only unlinks it, and the media asset stays in the library. Those tools ask the user to confirm before running." : "Deleting a form moves it to the trash (restorable from the dashboard); deleting a node cannot be undone (on a live form it stays on the live form until you publish). Those tools ask the user to confirm before running."
20044
20043
  ].filter((line) => typeof line === "string").join(" ");
20045
20044
  }
20046
20045
  function pinDraft07(schema) {
@@ -20212,4 +20211,4 @@ export {
20212
20211
  * MIT Licensed
20213
20212
  *)
20214
20213
  */
20215
- //# sourceMappingURL=chunk-EN5TEETY.js.map
20214
+ //# sourceMappingURL=chunk-F54BUSBA.js.map