@clipform/mcp-server 4.0.0 → 4.2.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/dist/index.js CHANGED
@@ -4,11 +4,11 @@ import {
4
4
  createServer,
5
5
  process as process2,
6
6
  serializeMessage
7
- } from "./chunk-MSLK3FRO.js";
8
- import "./chunk-54RZGUSA.js";
9
- import "./chunk-5MJGBBKA.js";
10
- import "./chunk-S6RYUVDM.js";
11
- import "./chunk-JRASOR5T.js";
7
+ } from "./chunk-YKJV5LZQ.js";
8
+ import "./chunk-5RUWQOYD.js";
9
+ import "./chunk-TXUWAYBZ.js";
10
+ import "./chunk-PDI6VJYQ.js";
11
+ import "./chunk-4IAURGG7.js";
12
12
  import "./chunk-VPF6MLKM.js";
13
13
  import {
14
14
  setMcpVersion
package/dist/prompts.d.ts CHANGED
@@ -12,7 +12,6 @@ interface WorkflowArgs {
12
12
  question_count?: number;
13
13
  media_style?: "text" | "images" | "video";
14
14
  categories?: string;
15
- youtube_url?: string;
16
15
  audience?: string;
17
16
  purpose?: string;
18
17
  response_format?: "video" | "audio" | "text" | "all";
@@ -26,9 +25,19 @@ interface WorkflowArgs {
26
25
  event_name?: string;
27
26
  event_type?: string;
28
27
  }
28
+ /**
29
+ * Prompt arguments are free text in every client (MCP cannot advertise allowed
30
+ * values), so prompts/get must never reject a value (#4756): everything is
31
+ * normalized here and anything unrecognized falls back to the default.
32
+ */
33
+ declare function normalizeMediaStyle(v: unknown): "text" | "images" | "video";
34
+ declare function normalizeResponseFormat(v: unknown): "video" | "audio" | "text" | "all" | undefined;
35
+ declare function normalizeQuestionCount(v: unknown): number | undefined;
36
+ declare function normalizeBool(v: unknown): boolean | undefined;
37
+ declare function coercePromptArgs(args: Record<string, string | undefined>): WorkflowArgs;
29
38
  type DiscoveryParam = DiscoveryParam$1;
30
39
  declare function buildDiscovery(params: readonly DiscoveryParam$1[], args: WorkflowArgs, authMode?: AuthMode): string;
31
40
  declare function getWorkflowText(type: WorkflowType, args?: WorkflowArgs, variant?: QuizVariant, caps?: ServerCaps): Promise<string>;
32
41
  declare function registerPrompts(server: McpServer, caps?: ServerCaps): void;
33
42
 
34
- export { type DiscoveryParam, WORKFLOW_TYPES, type WorkflowArgs, type WorkflowType, buildDiscovery, getWorkflowText, registerPrompts };
43
+ export { type DiscoveryParam, WORKFLOW_TYPES, type WorkflowArgs, type WorkflowType, buildDiscovery, coercePromptArgs, getWorkflowText, normalizeBool, normalizeMediaStyle, normalizeQuestionCount, normalizeResponseFormat, registerPrompts };
package/dist/prompts.js CHANGED
@@ -1,18 +1,28 @@
1
1
  import {
2
2
  WORKFLOW_TYPES,
3
3
  buildDiscovery,
4
+ coercePromptArgs,
4
5
  getWorkflowText,
6
+ normalizeBool,
7
+ normalizeMediaStyle,
8
+ normalizeQuestionCount,
9
+ normalizeResponseFormat,
5
10
  registerPrompts
6
- } from "./chunk-54RZGUSA.js";
7
- import "./chunk-S6RYUVDM.js";
8
- import "./chunk-JRASOR5T.js";
11
+ } from "./chunk-5RUWQOYD.js";
12
+ import "./chunk-PDI6VJYQ.js";
13
+ import "./chunk-4IAURGG7.js";
9
14
  import "./chunk-VPF6MLKM.js";
10
15
  import "./chunk-PBQ5BQWD.js";
11
16
  import "./chunk-PZ5AY32C.js";
12
17
  export {
13
18
  WORKFLOW_TYPES,
14
19
  buildDiscovery,
20
+ coercePromptArgs,
15
21
  getWorkflowText,
22
+ normalizeBool,
23
+ normalizeMediaStyle,
24
+ normalizeQuestionCount,
25
+ normalizeResponseFormat,
16
26
  registerPrompts
17
27
  };
18
28
  //# sourceMappingURL=prompts.js.map
package/dist/resources.js CHANGED
@@ -3,9 +3,9 @@ import {
3
3
  QUIZ_VARIANTS,
4
4
  getGuideUri,
5
5
  registerResources
6
- } from "./chunk-5MJGBBKA.js";
7
- import "./chunk-S6RYUVDM.js";
8
- import "./chunk-JRASOR5T.js";
6
+ } from "./chunk-TXUWAYBZ.js";
7
+ import "./chunk-PDI6VJYQ.js";
8
+ import "./chunk-4IAURGG7.js";
9
9
  import "./chunk-VPF6MLKM.js";
10
10
  import "./chunk-PBQ5BQWD.js";
11
11
  import "./chunk-PZ5AY32C.js";
package/dist/server.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { McpServer } from '@modelcontextprotocol/server';
2
+ export { SUPPORTED_PROTOCOL_VERSIONS, createMcpHandler, isLegacyRequest } from '@modelcontextprotocol/server';
2
3
  import { McpToolset } from '@vid-master/config';
3
4
  import { S as ServerCaps } from './caps-DBnfcEyJ.js';
4
5
 
@@ -19,9 +20,29 @@ declare const RENDER_TIMING: {
19
20
  * in one week (#3681: 2.10.0 vs 2.10.2, then 2.10.2 vs 2.10.3).
20
21
  */
21
22
  declare const MCP_SERVER_IDENTITY: Readonly<{
22
- name: "clipform-mcp-server";
23
+ name: string;
23
24
  version: string;
24
25
  }>;
26
+ /**
27
+ * Registry-facing identity for the public MCP Server Card (SEP-2127, #4776), read
28
+ * from server.json so the card and the registry entry cannot drift. Distinct from
29
+ * MCP_SERVER_IDENTITY (the runtime `serverInfo`).
30
+ */
31
+ declare const MCP_SERVER_CARD_IDENTITY: {
32
+ readonly name: string;
33
+ readonly title: string;
34
+ readonly description: string;
35
+ readonly websiteUrl: string;
36
+ readonly icons: ReadonlyArray<{
37
+ src: string;
38
+ mimeType?: string;
39
+ sizes?: string[];
40
+ }>;
41
+ readonly repository: {
42
+ url: string;
43
+ source: string;
44
+ };
45
+ };
25
46
 
26
47
  interface CreateServerOptions {
27
48
  onToolError?: (toolName: string, error: Error) => void;
@@ -64,4 +85,4 @@ interface CreateServerOptions {
64
85
  declare function buildInstructions(caps: ServerCaps): string;
65
86
  declare function createServer(options?: CreateServerOptions): McpServer;
66
87
 
67
- export { type CreateServerOptions, MCP_SERVER_IDENTITY, RENDER_TIMING, buildInstructions, createServer };
88
+ export { type CreateServerOptions, MCP_SERVER_CARD_IDENTITY, MCP_SERVER_IDENTITY, RENDER_TIMING, buildInstructions, createServer };
package/dist/server.js CHANGED
@@ -1,20 +1,28 @@
1
1
  import {
2
+ MCP_SERVER_CARD_IDENTITY,
2
3
  MCP_SERVER_IDENTITY,
3
4
  RENDER_TIMING,
5
+ SUPPORTED_PROTOCOL_VERSIONS,
4
6
  buildInstructions,
5
- createServer
6
- } from "./chunk-MSLK3FRO.js";
7
- import "./chunk-54RZGUSA.js";
8
- import "./chunk-5MJGBBKA.js";
9
- import "./chunk-S6RYUVDM.js";
10
- import "./chunk-JRASOR5T.js";
7
+ createMcpHandler,
8
+ createServer,
9
+ isLegacyRequest
10
+ } from "./chunk-YKJV5LZQ.js";
11
+ import "./chunk-5RUWQOYD.js";
12
+ import "./chunk-TXUWAYBZ.js";
13
+ import "./chunk-PDI6VJYQ.js";
14
+ import "./chunk-4IAURGG7.js";
11
15
  import "./chunk-VPF6MLKM.js";
12
16
  import "./chunk-PBQ5BQWD.js";
13
17
  import "./chunk-PZ5AY32C.js";
14
18
  export {
19
+ MCP_SERVER_CARD_IDENTITY,
15
20
  MCP_SERVER_IDENTITY,
16
21
  RENDER_TIMING,
22
+ SUPPORTED_PROTOCOL_VERSIONS,
17
23
  buildInstructions,
18
- createServer
24
+ createMcpHandler,
25
+ createServer,
26
+ isLegacyRequest
19
27
  };
20
28
  //# sourceMappingURL=server.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clipform/mcp-server",
3
- "version": "4.0.0",
3
+ "version": "4.2.0",
4
4
  "mcpName": "io.github.Clipform/mcp-server",
5
5
  "description": "MCP server for building and managing Clipform video forms",
6
6
  "license": "MIT",
@@ -49,7 +49,8 @@
49
49
  "mcp-server-clipform": "dist/index.js"
50
50
  },
51
51
  "files": [
52
- "dist"
52
+ "dist",
53
+ "server.json"
53
54
  ],
54
55
  "devDependencies": {
55
56
  "@modelcontextprotocol/client": "^2.3.1",
package/server.json ADDED
@@ -0,0 +1,53 @@
1
+ {
2
+ "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
3
+ "name": "io.github.Clipform/mcp-server",
4
+ "title": "Clipform",
5
+ "description": "Interactive video forms that capture authentic responses. Build engaging forms in minutes.",
6
+ "version": "4.2.0",
7
+ "websiteUrl": "https://www.clipform.io",
8
+ "icons": [
9
+ {
10
+ "src": "https://www.clipform.io/apple-touch-icon.png",
11
+ "mimeType": "image/png",
12
+ "sizes": [
13
+ "180x180"
14
+ ]
15
+ }
16
+ ],
17
+ "repository": {
18
+ "url": "https://github.com/clipform/mcp-server",
19
+ "source": "github"
20
+ },
21
+ "packages": [
22
+ {
23
+ "registryType": "npm",
24
+ "registryBaseUrl": "https://registry.npmjs.org",
25
+ "identifier": "@clipform/mcp-server",
26
+ "version": "4.2.0",
27
+ "runtimeHint": "npx",
28
+ "transport": {
29
+ "type": "stdio"
30
+ },
31
+ "environmentVariables": [
32
+ {
33
+ "name": "CLIPFORM_API_KEY",
34
+ "description": "API key that scopes tool calls to your workspace (create one in the dashboard under Settings, API keys). Not needed to list tools, only to call them.",
35
+ "isRequired": true,
36
+ "isSecret": true
37
+ },
38
+ {
39
+ "name": "API_URL",
40
+ "description": "Clipform API base URL.",
41
+ "isRequired": true,
42
+ "default": "https://api.clipform.io"
43
+ }
44
+ ]
45
+ }
46
+ ],
47
+ "remotes": [
48
+ {
49
+ "type": "streamable-http",
50
+ "url": "https://mcp.clipform.io"
51
+ }
52
+ ]
53
+ }