@clipwright/mcp-server 0.39.0 → 0.41.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/README.md +36 -4
- package/SKILL.md +11 -5
- package/dist/advertised-schema.d.ts +12 -9
- package/dist/advertised-schema.js +77 -36
- package/dist/advertised-schema.js.map +1 -1
- package/dist/format.d.ts +6 -1
- package/dist/format.js +15 -4
- package/dist/format.js.map +1 -1
- package/dist/listed-texts.d.ts +4 -0
- package/dist/listed-texts.js +188 -0
- package/dist/listed-texts.js.map +1 -0
- package/dist/run-display.js +21 -3
- package/dist/run-display.js.map +1 -1
- package/dist/server.d.ts +26 -0
- package/dist/server.js +165 -63
- package/dist/server.js.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -159,7 +159,7 @@ rate. [Watch it](https://clipwright.io/mcp#examples).
|
|
|
159
159
|
- `list_workflows` — read workflow methods and current availability. Free.
|
|
160
160
|
- `get_workflow` — read one method's required inputs, script rules, evidence and limitations. Free.
|
|
161
161
|
- `prepare_workflow_plan` — create with a complete document, or save with both `plan_id` and `base_version`. Free; starts no run.
|
|
162
|
-
- `plan_reference_remake` — the server compiles a reference ad's profile and your exact script into a new plan; its warnings name what the plan does not reproduce. Free; starts no run and generates nothing.
|
|
162
|
+
- `plan_reference_remake` — the server compiles a reference ad's analysis (`analysis_id`, or the profile itself) and your exact script into a new plan; its warnings name what the plan does not reproduce. Free; starts no run and generates nothing.
|
|
163
163
|
- `get_workflow_plan` — read the current owned plan, revision and readiness. Free.
|
|
164
164
|
- `approve_workflow_plan` — explicitly approve a chosen revision and content digest. Free; starts no run.
|
|
165
165
|
- `quote_workflow_plan` — quote the approved revision without spending credits.
|
|
@@ -172,6 +172,9 @@ rate. [Watch it](https://clipwright.io/mcp#examples).
|
|
|
172
172
|
credits.
|
|
173
173
|
- `list_template_sounds` — the sounds `make_ugc` templates play, by beat: where
|
|
174
174
|
each beat plays, its default and every name `template_sounds` takes. Free.
|
|
175
|
+
- `list_moves` — the catalogue of moves, motion and graphics to put on lines of
|
|
176
|
+
a script as `moves` of `make_ugc`, `make_faceless` and `plan_reference_remake`:
|
|
177
|
+
what each does for the viewer, the lines it suits and its credits. Free.
|
|
175
178
|
- `list_actors` — ready-made faces with stable ids and verified formats. Free.
|
|
176
179
|
- `quote_ugc` — estimated duration and price, plus a warning when `make_ugc`
|
|
177
180
|
with the same input would be refused for money or access. Free.
|
|
@@ -181,12 +184,17 @@ rate. [Watch it](https://clipwright.io/mcp#examples).
|
|
|
181
184
|
Free.
|
|
182
185
|
- `send_feedback` — tell Clipwright what is missing, confusing, wrong or slow,
|
|
183
186
|
optionally about a run; we read every one. Free.
|
|
187
|
+
- `describe_tool` — the full guidance of a tool, or of one of its fields, which
|
|
188
|
+
the tool list gives in short. Free.
|
|
184
189
|
- `make_ugc` — **renders a clip; this is the call that costs money.** Returns a
|
|
185
190
|
`run_id` immediately instead of blocking, because a render takes minutes.
|
|
186
191
|
- `get_run` — status of a run. Free; poll it every few seconds.
|
|
187
192
|
- `get_run_shots` — the shots of a finished video: the span, kind, description
|
|
188
193
|
and preview link of each, with the narration words and their timing. Free and
|
|
189
194
|
read-only. A run with no shots to show answers with the reason instead.
|
|
195
|
+
- `delete_run_media` — delete the files of a finished run: they stop opening at
|
|
196
|
+
once and are erased from storage after 7 days; the run and its charge stay.
|
|
197
|
+
Refused while another unfinished run uses them. Free.
|
|
190
198
|
- `quote_revision` — price of a revision of a faceless video: what it would
|
|
191
199
|
change and what it costs. Free.
|
|
192
200
|
- `revise_run` — **starts a revision: a new run that renders the video again
|
|
@@ -218,6 +226,9 @@ rate. [Watch it](https://clipwright.io/mcp#examples).
|
|
|
218
226
|
remote: PUT the file with curl, then use the `upload_id`. Free.
|
|
219
227
|
- `get_upload` — one upload with a fresh url, its size and `usable_until`;
|
|
220
228
|
after `create_upload` it confirms the PUT. Free.
|
|
229
|
+
- `delete_upload` — delete an upload: no tool takes it from then on, and its
|
|
230
|
+
file is erased from storage after 7 days. Refused while an unfinished run uses
|
|
231
|
+
it. Free.
|
|
221
232
|
- `create_asset` — save a picture or an MP4 clip as an account asset, kept
|
|
222
233
|
until you delete it: from a `run_id`, an `upload_id`, a public `url` (a clip
|
|
223
234
|
with `kind: "video"`), `base64`, a presigned `put`, and a local `path` on
|
|
@@ -237,8 +248,10 @@ rate. [Watch it](https://clipwright.io/mcp#examples).
|
|
|
237
248
|
pacing and what we cannot draw. Returns at once; poll
|
|
238
249
|
`get_reference_analysis`. 70 credits held and charged once it succeeds; a
|
|
239
250
|
failed analysis costs nothing. 10 new analyses per hour.
|
|
240
|
-
- `get_reference_analysis` — the state of an analysis, with
|
|
241
|
-
warnings once it succeeded
|
|
251
|
+
- `get_reference_analysis` — the state of an analysis, with its breakdown and
|
|
252
|
+
warnings once it succeeded, and `next`: `plan_reference_remake` with its
|
|
253
|
+
`analysis_id`, for a video like the reference. The profile and the frame
|
|
254
|
+
links come with `include: ["profile", "frames"]`. Free.
|
|
242
255
|
- `quote_creator_profile` — price of a creator profile for a link: 20 credits,
|
|
243
256
|
or 0 when a profile of the same creator from the last hour would answer. Free.
|
|
244
257
|
- `analyze_creator` — profile the creator behind an Instagram or TikTok profile
|
|
@@ -249,9 +262,23 @@ rate. [Watch it](https://clipwright.io/mcp#examples).
|
|
|
249
262
|
nothing. 30 new profiles per hour.
|
|
250
263
|
- `get_creator_profile` — the state of a creator profile, with its videos and
|
|
251
264
|
warnings once it succeeded. Free.
|
|
265
|
+
- `delete_creator_profile` — delete a finished creator profile at once; the run
|
|
266
|
+
that made it and its charge stay. Free.
|
|
267
|
+
- `quote_trends` — price of a trend search: 20 credits, or 0 when a search of
|
|
268
|
+
the same query from the last hour would answer. Free.
|
|
269
|
+
- `find_trends` — reels that took off on a topic: keywords on TikTok and
|
|
270
|
+
Instagram in one ranking by default (`platform: mix`), or on one of them, up
|
|
271
|
+
to 10 reels per platform posted within `posted_within_days`, one per creator,
|
|
272
|
+
ranked by the reel's views over its creator's median views. `language`
|
|
273
|
+
filters the TikTok reels only. Waits for the result; an unfinished one is read
|
|
274
|
+
by repeating the call, free. 20 credits held and charged once it succeeds,
|
|
275
|
+
also when a mix reaches only one platform (`warnings[]` names the other); a
|
|
276
|
+
search that finds no reel costs nothing. 10 new searches per hour.
|
|
252
277
|
- `quote_actor` — price of a personal actor before creating one. Free.
|
|
253
278
|
- `create_actor` — **creates a personal actor from a description; this costs
|
|
254
|
-
money.** Each requested format is a separate charged image.
|
|
279
|
+
money.** Each requested format is a separate charged image. With `portrait`
|
|
280
|
+
(your own 9:16 image asset) that image becomes the actor's portrait at no
|
|
281
|
+
charge, and only the other formats are charged. Returns a `run_id`
|
|
255
282
|
immediately; poll `get_run` until `succeeded`, then pass `created_actor.actor_id`
|
|
256
283
|
to `make_ugc` as `actor_id`.
|
|
257
284
|
- `quote_faceless` — price of a faceless video before making one. Free.
|
|
@@ -266,6 +293,11 @@ rate. [Watch it](https://clipwright.io/mcp#examples).
|
|
|
266
293
|
with it stay as they are. Free.
|
|
267
294
|
- `get_actor_defaults`, `set_actor_defaults` — read and save an actor's B-roll
|
|
268
295
|
default. It is stored only: today's talking-actor videos do not use it. Free.
|
|
296
|
+
- `extract_brand` — reads a public site's colours, fonts, logo and corners into
|
|
297
|
+
a proposed `design` with readable text, for you to confirm. Free.
|
|
298
|
+
- `brand_kit` — without `design`, reads the account's saved design and the looks
|
|
299
|
+
and faces to pick from; with `design`, saves it so a series keeps one look.
|
|
300
|
+
A video that names no `design` or `template_theme` draws in the kit. Free.
|
|
269
301
|
|
|
270
302
|
Call `quote_ugc` before `make_ugc`: the quote is where the contract tells you
|
|
271
303
|
what it will and will not honor. Anything the API cannot deliver comes back in
|
package/SKILL.md
CHANGED
|
@@ -114,13 +114,18 @@ For a source build, the command is `node` with the absolute path to
|
|
|
114
114
|
| `CLIPWRIGHT_API_URL` | no | Defaults to `https://api.clipwright.io`; set it only for another environment. |
|
|
115
115
|
|
|
116
116
|
After a restart, confirm that `tools/list`
|
|
117
|
-
returns
|
|
117
|
+
returns 57 tools: `make_ugc`, `get_run`, `get_run_shots`, `delete_run_media`, `quote_revision`, `revise_run`, `quote_candidate`, `create_candidate`,
|
|
118
118
|
`list_generation_models`, `quote_image`, `generate_image`, `quote_video`, `generate_video`, `quote_ugc`, `list_actors`,
|
|
119
|
-
`list_voices`, `list_template_sounds`, `upload_image`, `create_upload`, `get_upload`, `create_asset`, `list_assets`, `get_asset`, `update_asset`,
|
|
119
|
+
`list_voices`, `list_template_sounds`, `list_moves`, `upload_image`, `create_upload`, `get_upload`, `delete_upload`, `create_asset`, `list_assets`, `get_asset`, `update_asset`,
|
|
120
120
|
`delete_asset`, `quote_analysis`, `analyze_reference`, `get_reference_analysis`, `quote_creator_profile`, `analyze_creator`,
|
|
121
|
-
`get_creator_profile`, `get_account`, `list_prices`, `create_actor`, `quote_actor`, `delete_actor`, `get_actor_defaults`,
|
|
122
|
-
`set_actor_defaults`, `quote_faceless`, `make_faceless`, `list_workflows`, `get_workflow`, `prepare_workflow_plan`,
|
|
123
|
-
`plan_reference_remake`, `get_workflow_plan`, `approve_workflow_plan`, `quote_workflow_plan`, `run_workflow_plan`, `send_feedback
|
|
121
|
+
`get_creator_profile`, `delete_creator_profile`, `quote_trends`, `find_trends`, `get_account`, `list_prices`, `create_actor`, `quote_actor`, `delete_actor`, `get_actor_defaults`,
|
|
122
|
+
`set_actor_defaults`, `extract_brand`, `brand_kit`, `quote_faceless`, `make_faceless`, `list_workflows`, `get_workflow`, `prepare_workflow_plan`,
|
|
123
|
+
`plan_reference_remake`, `get_workflow_plan`, `approve_workflow_plan`, `quote_workflow_plan`, `run_workflow_plan`, `send_feedback`,
|
|
124
|
+
`describe_tool`.
|
|
125
|
+
|
|
126
|
+
The tool list gives each tool and field in short. Before the first use of a
|
|
127
|
+
tool or field, read its full guidance with `describe_tool` (free), for example
|
|
128
|
+
`describe_tool({tool: "quote_ugc", field: "templates"})`.
|
|
124
129
|
|
|
125
130
|
When no tool does the job, or an answer is confusing or wrong, file it with
|
|
126
131
|
`send_feedback` (free) instead of rephrasing the request and giving up.
|
|
@@ -225,6 +230,7 @@ quote or `list_prices`, never from memory or this page: they change.
|
|
|
225
230
|
| A personal actor | `quote_actor` | `create_actor` | `get_run` | `created_actor.actor_id` |
|
|
226
231
|
| A reading of a reference reel | `quote_analysis` | `analyze_reference` | `get_reference_analysis` | `reference_profile` or `data` |
|
|
227
232
|
| A creator's latest 12 videos with x to their median | `quote_creator_profile` | `analyze_creator` | `get_creator_profile` | `profile` |
|
|
233
|
+
| Reels that took off on a topic | `quote_trends` | `find_trends` | `find_trends` again | `result.reels` |
|
|
228
234
|
| A revision of a faceless video | `quote_revision` | `revise_run` | `get_run` | `video_url` |
|
|
229
235
|
| A new picture or clip for one shot | `quote_candidate` | `create_candidate` | `get_run` | `candidate.preview_url` |
|
|
230
236
|
| A plan from a workflow method | `quote_workflow_plan` | `run_workflow_plan` | `get_run` | `workflow` |
|
|
@@ -5,11 +5,6 @@ type Schema = {
|
|
|
5
5
|
};
|
|
6
6
|
/** Fields an agent copies from another answer or tool, advertised by pointer instead of by schema. */
|
|
7
7
|
export declare const COPIED_FIELDS: Record<string, Record<string, string>>;
|
|
8
|
-
/** Field descriptions keep their first sentences up to this many characters; deeper ones keep fewer. */
|
|
9
|
-
export declare const FIELD_DESCRIPTION_CHARS = 160;
|
|
10
|
-
export declare const NESTED_DESCRIPTION_CHARS = 60;
|
|
11
|
-
/** Tools whose field descriptions stay whole: quote_ugc's carry the templates catalog, the snap rule and the script limits. */
|
|
12
|
-
export declare const WHOLE_FIELD_DESCRIPTIONS: Set<string>;
|
|
13
8
|
/** The paid tools whose input is their free quote's plus a few fields; the quote, read first, keeps the field descriptions. */
|
|
14
9
|
export declare const PAID_TWINS: Record<string, string>;
|
|
15
10
|
/** The paid tool's fields its quote lacks, or undefined when the quote's fields differ from the paid tool's. */
|
|
@@ -19,14 +14,22 @@ export declare function findTwins(tools: readonly Tool[]): Map<string, {
|
|
|
19
14
|
of: string;
|
|
20
15
|
plus: string[];
|
|
21
16
|
}>;
|
|
22
|
-
/** A description cut after its last whole sentence that fits, or after a whole word. */
|
|
23
|
-
export declare function shorten(text: string, limit: number): string;
|
|
24
17
|
/** Repeated subschemas move to `$defs` once, largest saving first; each copy becomes a `$ref`. Nodes in `keep` stay in place. */
|
|
25
18
|
export declare function hoistRepeats(schema: Schema, keep?: ReadonlySet<Schema>): Schema;
|
|
26
19
|
/** A twin's field as its types only, so a client building the call sends the right types; the quote describes it and lists its values. */
|
|
27
20
|
export declare function typeShape(field: unknown): unknown;
|
|
21
|
+
/** A tool's listed text: its short text and the price line its full text ends with, or the full text when it has none. */
|
|
22
|
+
export declare function listedDescription(tool: Pick<Tool, "name" | "description">): string | undefined;
|
|
23
|
+
/** Every description a tool's schema holds, by field path (`a.b`, `a[]` for items), for describe_tool. */
|
|
24
|
+
export declare function fieldTexts(node: Schema, path?: string, into?: Record<string, string>): Record<string, string>;
|
|
25
|
+
/** describe_tool's answer: a tool's full description and field guidance as the server registered them, or one field's (with its subfields). */
|
|
26
|
+
export declare function describeTool(tools: readonly Tool[], name: string, field?: string): {
|
|
27
|
+
tool: string;
|
|
28
|
+
description: string;
|
|
29
|
+
fields: Record<string, string>;
|
|
30
|
+
} | undefined;
|
|
28
31
|
/** The advertised list for the tools the SDK lists; the hosted server builds a server per request, so the last answer is kept. */
|
|
29
32
|
export declare function advertisedTools(tools: readonly Tool[]): Tool[];
|
|
30
|
-
/** Wraps the SDK's tools/list answer; call after every tool is registered. */
|
|
31
|
-
export declare function advertiseSlimTools(server: McpServer):
|
|
33
|
+
/** Wraps the SDK's tools/list answer; call after every tool is registered. Answers the SDK's own list, which describe_tool reads. */
|
|
34
|
+
export declare function advertiseSlimTools(server: McpServer): () => Promise<Tool[]>;
|
|
32
35
|
export {};
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { priceLine } from "@clipwright/core";
|
|
2
|
+
import { LISTED_DESCRIPTIONS, LISTED_FIELDS } from "./listed-texts.js";
|
|
1
3
|
/** Fields an agent copies from another answer or tool, advertised by pointer instead of by schema. */
|
|
2
4
|
export const COPIED_FIELDS = {
|
|
3
5
|
prepare_workflow_plan: {
|
|
@@ -7,13 +9,16 @@ export const COPIED_FIELDS = {
|
|
|
7
9
|
},
|
|
8
10
|
plan_reference_remake: {
|
|
9
11
|
"/properties/reference_profile": "The reference_profile field of a succeeded get_reference_analysis answer, passed unchanged.",
|
|
12
|
+
"/properties/moves": "The moves array of quote_ugc input.",
|
|
13
|
+
"/properties/motion_style": "The motion_style object of quote_ugc input.",
|
|
10
14
|
},
|
|
15
|
+
brand_kit: { "/properties/design": "The design object of quote_ugc input." },
|
|
16
|
+
// The style list and when to use each are describe_tool's: listed whole they cost the bytes tools/list lacks (#1123).
|
|
17
|
+
quote_ugc: { "/properties/motion_style": "Free drawing style of captions, templates and scenes; describe_tool quote_ugc motion_style " +
|
|
18
|
+
"lists the styles and spans." },
|
|
11
19
|
};
|
|
12
|
-
/**
|
|
13
|
-
|
|
14
|
-
export const NESTED_DESCRIPTION_CHARS = 60;
|
|
15
|
-
/** Tools whose field descriptions stay whole: quote_ugc's carry the templates catalog, the snap rule and the script limits. */
|
|
16
|
-
export const WHOLE_FIELD_DESCRIPTIONS = new Set(["quote_ugc"]);
|
|
20
|
+
/** A field text that starts by marking the field unusable stays listed whole: the renderer ignores it, or the server refuses it. */
|
|
21
|
+
const MARKED_FIELD = /^(NOT HONORED YET|REJECTED for now):/;
|
|
17
22
|
const MAP_KEYWORDS = ["properties", "patternProperties", "$defs", "definitions", "dependentSchemas"];
|
|
18
23
|
const ONE_KEYWORDS = ["items", "additionalProperties", "not", "if", "then", "else", "contains", "propertyNames", "unevaluatedProperties", "unevaluatedItems"];
|
|
19
24
|
const LIST_KEYWORDS = ["anyOf", "oneOf", "allOf", "prefixItems"];
|
|
@@ -50,6 +55,7 @@ const withoutDescriptions = (schema) => JSON.stringify(schema, (key, value) => (
|
|
|
50
55
|
export const PAID_TWINS = {
|
|
51
56
|
make_ugc: "quote_ugc", revise_run: "quote_revision", generate_video: "quote_video", generate_image: "quote_image",
|
|
52
57
|
create_actor: "quote_actor", make_faceless: "quote_faceless", create_candidate: "quote_candidate", analyze_reference: "quote_analysis",
|
|
58
|
+
find_trends: "quote_trends",
|
|
53
59
|
};
|
|
54
60
|
/** The paid tool's fields its quote lacks, or undefined when the quote's fields differ from the paid tool's. */
|
|
55
61
|
export function twinExtras(paid, quote) {
|
|
@@ -73,14 +79,6 @@ export function findTwins(tools) {
|
|
|
73
79
|
}
|
|
74
80
|
return twins;
|
|
75
81
|
}
|
|
76
|
-
/** A description cut after its last whole sentence that fits, or after a whole word. */
|
|
77
|
-
export function shorten(text, limit) {
|
|
78
|
-
if (text.length <= limit)
|
|
79
|
-
return text;
|
|
80
|
-
const head = text.slice(0, limit);
|
|
81
|
-
const end = Math.max(head.lastIndexOf(". "), head.lastIndexOf(".\n"), head.lastIndexOf("; "));
|
|
82
|
-
return end >= limit / 3 ? head.slice(0, end + 1) : `${head.replace(/\s+\S*$/, "")}…`;
|
|
83
|
-
}
|
|
84
82
|
/** Repeated subschemas move to `$defs` once, largest saving first; each copy becomes a `$ref`. Nodes in `keep` stay in place. */
|
|
85
83
|
export function hoistRepeats(schema, keep = new Set()) {
|
|
86
84
|
const { $defs: existing, ...root } = schema;
|
|
@@ -162,59 +160,99 @@ function pointer(root, path) {
|
|
|
162
160
|
}
|
|
163
161
|
function advertise(tools) {
|
|
164
162
|
const twins = findTwins(tools);
|
|
165
|
-
const described = new Set();
|
|
166
|
-
// A text a whole-described tool gives a field is said there and nowhere else, whatever the order of the list.
|
|
167
|
-
const kept = new Set();
|
|
168
|
-
for (const tool of tools.filter(entry => WHOLE_FIELD_DESCRIPTIONS.has(entry.name))) {
|
|
169
|
-
walk(tool.inputSchema, 0, (node, depth) => { if (depth === 1 && typeof node.description === "string")
|
|
170
|
-
kept.add(node.description); });
|
|
171
|
-
}
|
|
172
163
|
return tools.map(tool => {
|
|
173
164
|
const twin = twins.get(tool.name);
|
|
174
165
|
const schema = structuredClone(tool.inputSchema);
|
|
175
|
-
// A pointer is the field's only description, so no
|
|
166
|
+
// A pointer or a listed text is the field's only description, so no cut or $defs move touches it.
|
|
176
167
|
const pointers = new Set();
|
|
177
168
|
for (const [path, description] of Object.entries(COPIED_FIELDS[tool.name] ?? {})) {
|
|
178
169
|
const [container, key] = pointer(schema, path);
|
|
179
|
-
|
|
170
|
+
// The field's types stay, so a client still sends an array as an array.
|
|
171
|
+
const node = { ...typeShape(child(container, key)), description };
|
|
180
172
|
pointers.add(node);
|
|
181
173
|
put(container, key, node);
|
|
182
174
|
}
|
|
175
|
+
const listed = new Set();
|
|
176
|
+
for (const [key, description] of Object.entries(LISTED_FIELDS[tool.name] ?? {})) {
|
|
177
|
+
const [container, at] = pointer(schema, `/properties/${key}`);
|
|
178
|
+
const node = child(container, at);
|
|
179
|
+
node.description = description;
|
|
180
|
+
listed.add(node);
|
|
181
|
+
}
|
|
183
182
|
if (twin !== undefined && isSchema(schema.properties)) {
|
|
184
183
|
schema.properties = Object.fromEntries(Object.entries(schema.properties).map(([key, field]) => [key, typeShape(field)]));
|
|
185
184
|
// Open at the root to save bytes: the server parses the call against the full schema and names an unknown field.
|
|
186
185
|
delete schema.additionalProperties;
|
|
187
186
|
}
|
|
188
187
|
delete schema.$schema;
|
|
189
|
-
const own = new Set();
|
|
190
|
-
const keepFields = WHOLE_FIELD_DESCRIPTIONS.has(tool.name);
|
|
191
188
|
walk(schema, 0, (node, depth) => {
|
|
192
189
|
if (node.maximum === Number.MAX_SAFE_INTEGER)
|
|
193
190
|
delete node.maximum;
|
|
194
191
|
if (node.minimum === -Number.MAX_SAFE_INTEGER)
|
|
195
192
|
delete node.minimum;
|
|
193
|
+
// Constraints any JSON object meets, a format no JSON Schema defines (its pattern stays), and a pattern a date-time format states (#1045).
|
|
194
|
+
if (node.format === "starts_with" && typeof node.pattern === "string")
|
|
195
|
+
delete node.format;
|
|
196
|
+
if (isSchema(node.propertyNames) && Object.keys(node.propertyNames).join() === "type" && node.propertyNames.type === "string")
|
|
197
|
+
delete node.propertyNames;
|
|
198
|
+
if (isSchema(node.additionalProperties) && Object.keys(node.additionalProperties).length === 0)
|
|
199
|
+
delete node.additionalProperties;
|
|
200
|
+
if (node.format === "date-time" && typeof node.pattern === "string")
|
|
201
|
+
delete node.pattern;
|
|
196
202
|
// The root still refuses unknown fields; a nested one is refused by the server, which names it.
|
|
197
203
|
if (depth > 0 && node.additionalProperties === false)
|
|
198
204
|
delete node.additionalProperties;
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
if ((keepFields && depth === 1) || pointers.has(node))
|
|
205
|
+
// Any other field text is describe_tool's (#1142): names, types and values are listed, guidance is read on demand.
|
|
206
|
+
if (depth === 0 || typeof node.description !== "string" || pointers.has(node) || listed.has(node))
|
|
202
207
|
return;
|
|
203
|
-
if (
|
|
208
|
+
if (depth > 1 || !MARKED_FIELD.test(node.description))
|
|
204
209
|
delete node.description;
|
|
205
|
-
return;
|
|
206
|
-
}
|
|
207
|
-
own.add(node.description);
|
|
208
|
-
node.description = shorten(node.description, depth === 1 ? FIELD_DESCRIPTION_CHARS : NESTED_DESCRIPTION_CHARS);
|
|
209
210
|
});
|
|
210
|
-
for (const text of own)
|
|
211
|
-
described.add(text);
|
|
212
211
|
const { execution, ...rest } = tool;
|
|
213
|
-
const
|
|
212
|
+
const body = listedDescription(tool);
|
|
213
|
+
const description = twin === undefined ? body : withTwinNote(body ?? "", twin);
|
|
214
214
|
return { ...rest, ...(execution === undefined || execution.taskSupport === "forbidden" ? {} : { execution }),
|
|
215
215
|
...(description === undefined ? {} : { description }), inputSchema: hoistRepeats(schema, pointers) };
|
|
216
216
|
});
|
|
217
217
|
}
|
|
218
|
+
/** A tool's listed text: its short text and the price line its full text ends with, or the full text when it has none. */
|
|
219
|
+
export function listedDescription(tool) {
|
|
220
|
+
const short = LISTED_DESCRIPTIONS[tool.name];
|
|
221
|
+
if (short === undefined)
|
|
222
|
+
return tool.description;
|
|
223
|
+
const price = priceLine(tool.name);
|
|
224
|
+
return price !== null && tool.description?.endsWith(price) ? `${short} ${price}` : short;
|
|
225
|
+
}
|
|
226
|
+
/** Every description a tool's schema holds, by field path (`a.b`, `a[]` for items), for describe_tool. */
|
|
227
|
+
export function fieldTexts(node, path = "", into = {}) {
|
|
228
|
+
if (path !== "" && typeof node.description === "string" && !(into[path]?.split("\n").includes(node.description) ?? false)) {
|
|
229
|
+
into[path] = into[path] === undefined ? node.description : `${into[path]}\n${node.description}`;
|
|
230
|
+
}
|
|
231
|
+
for (const [keyword, value] of Object.entries(node)) {
|
|
232
|
+
if (MAP_KEYWORDS.includes(keyword) && isSchema(value)) {
|
|
233
|
+
for (const [key, sub] of Object.entries(value)) {
|
|
234
|
+
if (isSchema(sub))
|
|
235
|
+
fieldTexts(sub, keyword === "properties" ? (path === "" ? key : `${path}.${key}`) : `${keyword}.${key}`, into);
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
else if (ONE_KEYWORDS.includes(keyword) && isSchema(value))
|
|
239
|
+
fieldTexts(value, keyword === "items" ? `${path}[]` : path, into);
|
|
240
|
+
else if (LIST_KEYWORDS.includes(keyword) && Array.isArray(value))
|
|
241
|
+
for (const branch of value)
|
|
242
|
+
if (isSchema(branch))
|
|
243
|
+
fieldTexts(branch, path, into);
|
|
244
|
+
}
|
|
245
|
+
return into;
|
|
246
|
+
}
|
|
247
|
+
/** describe_tool's answer: a tool's full description and field guidance as the server registered them, or one field's (with its subfields). */
|
|
248
|
+
export function describeTool(tools, name, field) {
|
|
249
|
+
const tool = tools.find(entry => entry.name === name);
|
|
250
|
+
if (tool === undefined)
|
|
251
|
+
return undefined;
|
|
252
|
+
const fields = Object.entries(fieldTexts(tool.inputSchema))
|
|
253
|
+
.filter(([path]) => field === undefined || path === field || path.startsWith(`${field}.`) || path.startsWith(`${field}[]`));
|
|
254
|
+
return { tool: name, description: tool.description ?? "", fields: Object.fromEntries(fields) };
|
|
255
|
+
}
|
|
218
256
|
let cached;
|
|
219
257
|
/** The advertised list for the tools the SDK lists; the hosted server builds a server per request, so the last answer is kept. */
|
|
220
258
|
export function advertisedTools(tools) {
|
|
@@ -223,7 +261,7 @@ export function advertisedTools(tools) {
|
|
|
223
261
|
cached = { key, tools: advertise(tools) };
|
|
224
262
|
return structuredClone(cached.tools);
|
|
225
263
|
}
|
|
226
|
-
/** Wraps the SDK's tools/list answer; call after every tool is registered. */
|
|
264
|
+
/** Wraps the SDK's tools/list answer; call after every tool is registered. Answers the SDK's own list, which describe_tool reads. */
|
|
227
265
|
export function advertiseSlimTools(server) {
|
|
228
266
|
// The SDK offers no hook into its tools/list answer, so the registered handler is wrapped in its private map.
|
|
229
267
|
const handlers = server.server._requestHandlers;
|
|
@@ -234,5 +272,8 @@ export function advertiseSlimTools(server) {
|
|
|
234
272
|
const answer = await list(request, extra);
|
|
235
273
|
return { ...answer, tools: advertisedTools(answer.tools) };
|
|
236
274
|
});
|
|
275
|
+
// Every tool is registered by now, so one server's list never changes: built once, on the first read.
|
|
276
|
+
let full;
|
|
277
|
+
return () => (full ??= list({ method: "tools/list", params: {} }, {}).then(answer => answer.tools));
|
|
237
278
|
}
|
|
238
279
|
//# sourceMappingURL=advertised-schema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"advertised-schema.js","sourceRoot":"","sources":["../src/advertised-schema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"advertised-schema.js","sourceRoot":"","sources":["../src/advertised-schema.ts"],"names":[],"mappings":"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"}
|
package/dist/format.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { RUN_WAIT_MAX_SECONDS } from "@clipwright/core";
|
|
1
|
+
import { RUN_WAIT_MAX_SECONDS, type Skill } from "@clipwright/core";
|
|
2
2
|
import type { WorkflowRunRead, WorkflowLaunchRead } from '@clipwright/core/workflows';
|
|
3
3
|
/** The longest a `get_run` holds its answer; the API holds it (#1036). */
|
|
4
4
|
export { RUN_WAIT_MAX_SECONDS };
|
|
@@ -19,6 +19,11 @@ export declare function formatFailure(error: unknown): McpToolResponse;
|
|
|
19
19
|
/** Tool body with API refusals expanded for the agent; shared by every tool so */
|
|
20
20
|
/** no tool can forget the `try`. */
|
|
21
21
|
export declare function withFailureReport(body: () => Promise<McpToolResponse>): Promise<McpToolResponse>;
|
|
22
|
+
/** What each run kind delivers and where a succeeded read names it: a picture's run is never "the video". */
|
|
23
|
+
export declare const PENDING_RESULTS: Readonly<Record<Skill, {
|
|
24
|
+
noun: string;
|
|
25
|
+
field: string;
|
|
26
|
+
}>>;
|
|
22
27
|
/** Pure `get_run` formatter. Terminal answers carry both `status` and `state`; */
|
|
23
28
|
/** an unknown terminal state falls into IN_PROGRESS by design. */
|
|
24
29
|
export declare function formatGetRun(run: WorkflowRunRead, receipt?: WorkflowLaunchRead['receipt']): McpToolResponse;
|
package/dist/format.js
CHANGED
|
@@ -25,6 +25,16 @@ export async function withFailureReport(body) {
|
|
|
25
25
|
return formatFailure(error);
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
|
+
/** What each run kind delivers and where a succeeded read names it: a picture's run is never "the video". */
|
|
29
|
+
export const PENDING_RESULTS = {
|
|
30
|
+
make_ugc: { noun: "video", field: "video_url" },
|
|
31
|
+
make_faceless: { noun: "video", field: "video_url" },
|
|
32
|
+
revise_long_form: { noun: "video", field: "video_url" },
|
|
33
|
+
generate_image: { noun: "image", field: "generation.url" },
|
|
34
|
+
generate_video: { noun: "clip", field: "generation.url" },
|
|
35
|
+
edit_shot: { noun: "shot candidate", field: "candidate" },
|
|
36
|
+
create_actor: { noun: "actor", field: "created_actor.actor_id" },
|
|
37
|
+
};
|
|
28
38
|
/** Pure `get_run` formatter. Terminal answers carry both `status` and `state`; */
|
|
29
39
|
/** an unknown terminal state falls into IN_PROGRESS by design. */
|
|
30
40
|
export function formatGetRun(run, receipt) {
|
|
@@ -85,7 +95,8 @@ export function formatGetRun(run, receipt) {
|
|
|
85
95
|
],
|
|
86
96
|
};
|
|
87
97
|
}
|
|
88
|
-
// Non-terminal (or unknown terminal) state: the same imperative format
|
|
98
|
+
// Non-terminal (or unknown terminal) state: the same imperative format for every run, naming what this run delivers (#1172).
|
|
99
|
+
const pending = PENDING_RESULTS[run.skill] ?? { noun: "result", field: "a succeeded state" };
|
|
89
100
|
return {
|
|
90
101
|
content: [
|
|
91
102
|
{
|
|
@@ -96,12 +107,12 @@ export function formatGetRun(run, receipt) {
|
|
|
96
107
|
run_id: run.run_id,
|
|
97
108
|
state: run.state,
|
|
98
109
|
...runMoney(run),
|
|
99
|
-
video_url: null,
|
|
110
|
+
...(pending.field === "video_url" ? { video_url: null } : {}),
|
|
100
111
|
warnings: run.warnings,
|
|
101
|
-
next_action:
|
|
112
|
+
next_action: `The ${pending.noun} is NOT ready. Call get_run with poll.arguments (run_id=` +
|
|
102
113
|
run.run_id +
|
|
103
114
|
`, wait_seconds=${RUN_WAIT_MAX_SECONDS}): it waits up to ${RUN_WAIT_MAX_SECONDS} s for the run to end. Repeat until state is 'succeeded' or 'failed'. ` +
|
|
104
|
-
|
|
115
|
+
`Do NOT tell the user the ${pending.noun} is done until you have ${pending.field}.`,
|
|
105
116
|
poll: { tool: "get_run", arguments: { run_id: run.run_id, wait_seconds: RUN_WAIT_MAX_SECONDS }, retry_after_seconds: RUN_RETRY_AFTER_SECONDS },
|
|
106
117
|
}),
|
|
107
118
|
},
|
package/dist/format.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,oBAAoB,EAAE,QAAQ,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/** A tool's text in tools/list, before its price line; a tool not named lists its full text. */
|
|
2
|
+
export declare const LISTED_DESCRIPTIONS: Record<string, string>;
|
|
3
|
+
/** A top field's text in tools/list; a field not named keeps its first words. */
|
|
4
|
+
export declare const LISTED_FIELDS: Record<string, Record<string, string>>;
|