@runapi.ai/seedance-mcp 0.1.7 → 0.1.9
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 +1 -1
- package/data/contract.json +31 -10
- package/dist/src/meta.d.ts +1 -1
- package/dist/src/meta.js +1 -1
- package/dist/src/server.js +74 -19
- package/dist/src/server.js.map +1 -1
- package/package.json +2 -2
- package/server.json +2 -2
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<h1 align="center">RunAPI Seedance MCP Server</h1>
|
|
2
2
|
|
|
3
3
|
<p align="center">
|
|
4
|
-
<strong>Seedance API access for AI agents:
|
|
4
|
+
<strong>Seedance API access for AI agents: run video generation operations, poll asynchronous results, and check pricing through one focused MCP server.</strong>
|
|
5
5
|
</p>
|
|
6
6
|
|
|
7
7
|
<p align="center">
|
package/data/contract.json
CHANGED
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"seedance/text-to-video": {
|
|
13
13
|
"model": "Seedance",
|
|
14
14
|
"endpoint": "text_to_video",
|
|
15
|
+
"task_type": "asynchronous",
|
|
15
16
|
"models": [
|
|
16
17
|
"seedance-1.5-pro",
|
|
17
18
|
"seedance-2-mini",
|
|
@@ -64,10 +65,16 @@
|
|
|
64
65
|
"type": "boolean"
|
|
65
66
|
},
|
|
66
67
|
"source_image_urls": {
|
|
67
|
-
"type": "array"
|
|
68
|
+
"type": "array",
|
|
69
|
+
"max_items": 2
|
|
68
70
|
},
|
|
69
71
|
"lock_camera": {
|
|
70
72
|
"type": "boolean"
|
|
73
|
+
},
|
|
74
|
+
"seed": {
|
|
75
|
+
"type": "integer",
|
|
76
|
+
"max": 2147483647,
|
|
77
|
+
"min": -1
|
|
71
78
|
}
|
|
72
79
|
},
|
|
73
80
|
"seedance-2-mini": {
|
|
@@ -114,13 +121,16 @@
|
|
|
114
121
|
"type": "string"
|
|
115
122
|
},
|
|
116
123
|
"reference_image_urls": {
|
|
117
|
-
"type": "array"
|
|
124
|
+
"type": "array",
|
|
125
|
+
"max_items": 9
|
|
118
126
|
},
|
|
119
127
|
"reference_video_urls": {
|
|
120
|
-
"type": "array"
|
|
128
|
+
"type": "array",
|
|
129
|
+
"max_items": 3
|
|
121
130
|
},
|
|
122
131
|
"reference_audio_urls": {
|
|
123
|
-
"type": "array"
|
|
132
|
+
"type": "array",
|
|
133
|
+
"max_items": 3
|
|
124
134
|
},
|
|
125
135
|
"web_search": {
|
|
126
136
|
"type": "boolean"
|
|
@@ -175,13 +185,16 @@
|
|
|
175
185
|
"type": "string"
|
|
176
186
|
},
|
|
177
187
|
"reference_image_urls": {
|
|
178
|
-
"type": "array"
|
|
188
|
+
"type": "array",
|
|
189
|
+
"max_items": 9
|
|
179
190
|
},
|
|
180
191
|
"reference_video_urls": {
|
|
181
|
-
"type": "array"
|
|
192
|
+
"type": "array",
|
|
193
|
+
"max_items": 3
|
|
182
194
|
},
|
|
183
195
|
"reference_audio_urls": {
|
|
184
|
-
"type": "array"
|
|
196
|
+
"type": "array",
|
|
197
|
+
"max_items": 3
|
|
185
198
|
},
|
|
186
199
|
"web_search": {
|
|
187
200
|
"type": "boolean"
|
|
@@ -234,13 +247,16 @@
|
|
|
234
247
|
"type": "string"
|
|
235
248
|
},
|
|
236
249
|
"reference_image_urls": {
|
|
237
|
-
"type": "array"
|
|
250
|
+
"type": "array",
|
|
251
|
+
"max_items": 9
|
|
238
252
|
},
|
|
239
253
|
"reference_video_urls": {
|
|
240
|
-
"type": "array"
|
|
254
|
+
"type": "array",
|
|
255
|
+
"max_items": 3
|
|
241
256
|
},
|
|
242
257
|
"reference_audio_urls": {
|
|
243
|
-
"type": "array"
|
|
258
|
+
"type": "array",
|
|
259
|
+
"max_items": 3
|
|
244
260
|
},
|
|
245
261
|
"web_search": {
|
|
246
262
|
"type": "boolean"
|
|
@@ -380,6 +396,11 @@
|
|
|
380
396
|
"first_frame_image_url": {
|
|
381
397
|
"type": "string",
|
|
382
398
|
"required": true
|
|
399
|
+
},
|
|
400
|
+
"seed": {
|
|
401
|
+
"type": "integer",
|
|
402
|
+
"max": 2147483647,
|
|
403
|
+
"min": -1
|
|
383
404
|
}
|
|
384
405
|
}
|
|
385
406
|
}
|
package/dist/src/meta.d.ts
CHANGED
package/dist/src/meta.js
CHANGED
package/dist/src/server.js
CHANGED
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
import { createModelServer, findModelForAction, findModels, friendlyError, jsonText, priceForModel, RunApiClient, taskStatus } from "@runapi.ai/mcp-core";
|
|
2
|
+
import { createModelServer, declaredFieldsForAction, findModelForAction, findModels, friendlyError, jsonText, priceForModel, RunApiClient, taskStatus, validateInputRules, validateParams, zodShapeForFields } from "@runapi.ai/mcp-core";
|
|
3
3
|
import { readContract, readPricing } from "./data.js";
|
|
4
4
|
import { META } from "./meta.js";
|
|
5
|
+
function taskType(action) {
|
|
6
|
+
return action.task_type ?? "asynchronous";
|
|
7
|
+
}
|
|
5
8
|
function lineService(contract) {
|
|
6
9
|
return Object.keys(contract.actions)[0]?.split("/")[0] ?? META.lineSlug;
|
|
7
10
|
}
|
|
8
|
-
function lineEndpoints(contract) {
|
|
11
|
+
function lineEndpoints(contract, filter) {
|
|
9
12
|
const seen = new Set();
|
|
10
13
|
for (const action of Object.values(contract.actions)) {
|
|
14
|
+
if (filter && taskType(action) !== filter) {
|
|
15
|
+
continue;
|
|
16
|
+
}
|
|
11
17
|
seen.add(action.endpoint);
|
|
12
18
|
}
|
|
13
19
|
return [...seen];
|
|
@@ -28,6 +34,9 @@ function buildTools(contract) {
|
|
|
28
34
|
const tools = [];
|
|
29
35
|
const inputRules = {};
|
|
30
36
|
for (const [key, action] of Object.entries(contract.actions)) {
|
|
37
|
+
if (taskType(action) === "synchronous") {
|
|
38
|
+
continue;
|
|
39
|
+
}
|
|
31
40
|
const service = key.split("/")[0];
|
|
32
41
|
const endpoint = action.endpoint;
|
|
33
42
|
tools.push({
|
|
@@ -41,29 +50,74 @@ function buildTools(contract) {
|
|
|
41
50
|
}
|
|
42
51
|
return { tools, inputRules };
|
|
43
52
|
}
|
|
53
|
+
function registerSynchronousTools(server, contract, pricing, client) {
|
|
54
|
+
for (const [key, action] of Object.entries(contract.actions)) {
|
|
55
|
+
if (taskType(action) !== "synchronous") {
|
|
56
|
+
continue;
|
|
57
|
+
}
|
|
58
|
+
const service = key.split("/")[0];
|
|
59
|
+
const endpoint = action.endpoint;
|
|
60
|
+
const shape = zodShapeForFields(declaredFieldsForAction(action));
|
|
61
|
+
if (action.models.length > 0) {
|
|
62
|
+
shape.model = z.enum(action.models).optional().describe("RunAPI model slug for this model line.");
|
|
63
|
+
}
|
|
64
|
+
server.tool(endpoint, `Run a synchronous ${action.model} operation on RunAPI (${endpoint.replace(/_/g, " ")}). Returns the operation result and pricing snapshot.`, shape, async (args) => {
|
|
65
|
+
const { model, ...params } = args;
|
|
66
|
+
try {
|
|
67
|
+
const info = findModelForAction(service, endpoint, model, contract);
|
|
68
|
+
if (!info) {
|
|
69
|
+
return jsonText({
|
|
70
|
+
error: "Unsupported RunAPI service/action/model combination.",
|
|
71
|
+
hint: "This model server was generated for a specific model line; verify the requested model."
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
const body = validateParams(info.fields, {
|
|
75
|
+
...params,
|
|
76
|
+
...(info.model ? { model: info.model } : {})
|
|
77
|
+
});
|
|
78
|
+
const ruleError = validateInputRules(action.rules ?? [], body);
|
|
79
|
+
if (ruleError) {
|
|
80
|
+
return jsonText({
|
|
81
|
+
error: `Invalid RunAPI parameters: ${ruleError}`,
|
|
82
|
+
hint: "Adjust the parameters to satisfy the endpoint input rules before retrying."
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
const result = await client.createTask(service, endpoint, body);
|
|
86
|
+
return jsonText({ result, price: priceForModel(info, pricing) });
|
|
87
|
+
}
|
|
88
|
+
catch (error) {
|
|
89
|
+
return jsonText({ error: friendlyError(error) });
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
}
|
|
44
94
|
function registerLineTools(server, contract, pricing, client) {
|
|
45
95
|
const service = lineService(contract);
|
|
46
96
|
const endpoints = lineEndpoints(contract);
|
|
97
|
+
const asynchronousEndpoints = lineEndpoints(contract, "asynchronous");
|
|
47
98
|
const models = lineModels(contract);
|
|
48
99
|
const endpointEnum = endpoints.length > 0 ? z.enum(endpoints) : z.string();
|
|
49
100
|
const modelEnum = models.length > 0 ? z.enum(models) : z.string();
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
101
|
+
if (asynchronousEndpoints.length > 0) {
|
|
102
|
+
const asynchronousEndpointEnum = z.enum(asynchronousEndpoints);
|
|
103
|
+
// With one endpoint, action defaults safely. With several, a wrong default
|
|
104
|
+
// would query the wrong task route, so the caller must name the endpoint.
|
|
105
|
+
const getTaskAction = asynchronousEndpoints.length > 1
|
|
106
|
+
? asynchronousEndpointEnum.describe("Asynchronous endpoint the task was created on.")
|
|
107
|
+
: asynchronousEndpointEnum.optional().describe("Asynchronous endpoint the task was created on. Defaults to the line's only asynchronous endpoint.");
|
|
108
|
+
server.tool("get_task", `Fetch the current status and latest result payload for a ${META.lineSlug} task.`, {
|
|
109
|
+
task_id: z.string().describe("Task id returned when the task was created."),
|
|
110
|
+
action: getTaskAction
|
|
111
|
+
}, async ({ task_id, action }) => {
|
|
112
|
+
try {
|
|
113
|
+
const task = await client.getTask(service, task_id, action ?? asynchronousEndpoints[0]);
|
|
114
|
+
return jsonText({ task_id, status: taskStatus(task), task });
|
|
115
|
+
}
|
|
116
|
+
catch (error) {
|
|
117
|
+
return jsonText({ error: friendlyError(error) });
|
|
118
|
+
}
|
|
119
|
+
});
|
|
120
|
+
}
|
|
67
121
|
server.tool("check_pricing", `Look up RunAPI pricing for the ${META.lineSlug} model line.`, {
|
|
68
122
|
model: modelEnum.optional().describe("Model slug. Defaults to the line's primary model."),
|
|
69
123
|
action: endpointEnum.optional().describe("Endpoint name. Defaults to the endpoint that offers the model.")
|
|
@@ -117,6 +171,7 @@ export function createServer() {
|
|
|
117
171
|
tools,
|
|
118
172
|
client
|
|
119
173
|
});
|
|
174
|
+
registerSynchronousTools(server, contract, pricing, client);
|
|
120
175
|
registerLineTools(server, contract, pricing, client);
|
|
121
176
|
return server;
|
|
122
177
|
}
|
package/dist/src/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,UAAU,EACV,aAAa,EACb,QAAQ,EACR,aAAa,EACb,YAAY,EACZ,UAAU,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@runapi.ai/seedance-mcp",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.9",
|
|
4
4
|
"description": "RunAPI Seedance MCP server for video generation: create tasks, poll results, and check pricing across 7 model variants from Claude Code, Codex, Cursor, and VS Code.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/src/index.js",
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
},
|
|
56
56
|
"dependencies": {
|
|
57
57
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
58
|
-
"@runapi.ai/mcp-core": "0.1.
|
|
58
|
+
"@runapi.ai/mcp-core": "0.1.7",
|
|
59
59
|
"zod": "^3.25.76"
|
|
60
60
|
},
|
|
61
61
|
"devDependencies": {
|
package/server.json
CHANGED
|
@@ -6,12 +6,12 @@
|
|
|
6
6
|
"url": "https://github.com/runapi-ai/seedance-mcp",
|
|
7
7
|
"source": "github"
|
|
8
8
|
},
|
|
9
|
-
"version": "0.1.
|
|
9
|
+
"version": "0.1.9",
|
|
10
10
|
"packages": [
|
|
11
11
|
{
|
|
12
12
|
"registryType": "npm",
|
|
13
13
|
"identifier": "@runapi.ai/seedance-mcp",
|
|
14
|
-
"version": "0.1.
|
|
14
|
+
"version": "0.1.9",
|
|
15
15
|
"transport": {
|
|
16
16
|
"type": "stdio"
|
|
17
17
|
},
|