@clipwright/mcp-server 0.34.0 → 0.35.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/CHANGELOG.md +107 -0
- package/README.md +15 -2
- package/SKILL.md +69 -25
- package/dist/format.js +1 -0
- package/dist/format.js.map +1 -1
- package/dist/server.d.ts +1 -0
- package/dist/server.js +62 -20
- package/dist/server.js.map +1 -1
- package/dist/workflow-tools.js +4 -1
- package/dist/workflow-tools.js.map +1 -1
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -18,6 +18,113 @@ listed under.
|
|
|
18
18
|
|
|
19
19
|
## [Unreleased]
|
|
20
20
|
|
|
21
|
+
## [0.35.0] - 2026-10-30
|
|
22
|
+
|
|
23
|
+
### Changed
|
|
24
|
+
|
|
25
|
+
- The texts an agent reads describe the `parts-v1` tariff (#933). The `call` field says the call adds production
|
|
26
|
+
seconds and that a live-avatar still has its own price; the templates description and the remake plan's tariff
|
|
27
|
+
note drop the retired per-second rate. The MCP server's SKILL.md and the CLI README point to `list_prices` and the
|
|
28
|
+
quotes instead of fixed faceless prices, and the `quote_ugc` example shows `price_lines` for 12 s.
|
|
29
|
+
- *Dashboard:* /pricing lists only the presenter a request can get, and prints single images and clips as price
|
|
30
|
+
ranges per resolution without model names (#800). Two comparison pages are rewritten from the other products'
|
|
31
|
+
sites as read on 2026-10-30.
|
|
32
|
+
|
|
33
|
+
- *Server-side:* `make_ugc` is priced by its parts, one tariff `parts-v1` for short and long videos (#800): 12 credits
|
|
34
|
+
for every second a presenter take fills on HeyGen (22 on OmniHuman), plus 1 for every second of the finished video,
|
|
35
|
+
plus 400 for each live-avatar still of a call, at least 50 for a delivered video. A plain 35 s video costs 455
|
|
36
|
+
instead of 1 050. The quote itemizes it in `price_lines` and names `minimum_credits`; the terms are frozen at
|
|
37
|
+
admission, so a run admitted before keeps its own.
|
|
38
|
+
- *Server-side:* `analyze_reference` costs 70 credits (#927): held at the start and charged once the analysis
|
|
39
|
+
succeeds; a failed analysis costs nothing, and starting it again on the same asset answers the same analysis for
|
|
40
|
+
free. The analysis carries `credits_reserved`, `credits_charged` and `balance_after_credits`.
|
|
41
|
+
- *Server-side:* single generations are priced at ×2.5 of their cheapest route instead of ×2: an image from 6 credits,
|
|
42
|
+
a clip from 6 credits a second. `seedance-2.0-mini` is rendered by one route only.
|
|
43
|
+
- *Server-side:* `make_faceless` is priced by its parts, tariff `faceless-parts-v1` (#800): 7 credits for each picture
|
|
44
|
+
we generate, the opening clip's still included, 49 for the opening clip and 1 for every second of the delivered
|
|
45
|
+
video, at least 50. Your own pictures are not charged. The quote is the most a selection is charged: 212 at 30 s,
|
|
46
|
+
356 at 90 s, instead of 350 and 420. `faceless_billing` names `images` and `imageCredits`; a run admitted before
|
|
47
|
+
keeps its tariff.
|
|
48
|
+
- *Server-side:* edits and personal actors are repriced at ×2.5 of their cost (#800): a revision's new picture 7, clip
|
|
49
|
+
49, clip with a new picture 56, render 13, and a shot candidate the same unit prices; an actor's portrait 4 and each
|
|
50
|
+
other format 8 at `medium`, 12 and 18 at `high`. Runs admitted before keep their snapshot.
|
|
51
|
+
|
|
52
|
+
### Added
|
|
53
|
+
|
|
54
|
+
- *Server-side:* `POST /v1/reference-analyses/quote`, the `quote_analysis` tool and `ClipwrightClient.quoteAnalysis()`
|
|
55
|
+
price an analysis before it starts (#927).
|
|
56
|
+
- *Server-side:* every settled run carries `balance_after_credits`, the account's balance read in the transaction
|
|
57
|
+
that settled it (#927).
|
|
58
|
+
|
|
59
|
+
- *Server-side:* `GET /v1/public/prices` lists the price of every action in credits, without a key: one entry per tool
|
|
60
|
+
and variant, its price as lines of credits per unit plus a minimum, or a formula; free tools are listed at 0. No price
|
|
61
|
+
changed (#927).
|
|
62
|
+
- The `list_prices` tool and `ClipwrightClient.listPrices()` read that list, and the description of every paid tool
|
|
63
|
+
ends with its price line, built from the same list.
|
|
64
|
+
- `@clipwright/core` exports `PRICE_LIST`, `priceLine` and `pricesResponse`, with the constants the list reads:
|
|
65
|
+
`CREDITS_PER_SECOND`, `ACTOR_UNIT_CREDITS`, `EDIT_UNIT_PRICES`, `EDIT_RENDER_PRICE`, `EDIT_ZERO_UNIT_PRICE` and the
|
|
66
|
+
numbers of the faceless tariff.
|
|
67
|
+
|
|
68
|
+
- *Server-side:* `GET /openapi.json` serves an OpenAPI 3.1 description of the REST API without a key: every public
|
|
69
|
+
route with its request and response schemas, the error envelope and `warnings[]`. The API's own tests check
|
|
70
|
+
their real responses against it.
|
|
71
|
+
- `@clipwright/core/openapi` exports `buildOpenApiDocument()` and the route marking `OPENAPI_ROUTES`;
|
|
72
|
+
`@clipwright/core` exports `ENDPOINT_NOTES`, `healthResponse` and `publicSkillsResponse`.
|
|
73
|
+
- `make_ugc` takes `voice_pace` (0.7–1.2): `eleven_flash_v2_5` and `eleven_turbo_v2_5` get it as their speed,
|
|
74
|
+
`gemini-3.8-flash-tts` as a "speaking rapidly" or "speaking slowly" style with a warning. `eleven_v4` has no speed
|
|
75
|
+
setting: it gets no speed, and a `voice_pace` other than 1 is named in `warnings[]` (#890).
|
|
76
|
+
- `list_voices` gives each English voice on `eleven_v4` its measured pace, `words_per_second`. On that model the voice
|
|
77
|
+
sets the pace, so pick the voice nearest a reference presenter's pace (#890).
|
|
78
|
+
- *Server-side:* all ElevenLabs speech goes to `eleven_v4`, now the model of every preset, catalog voice and raw
|
|
79
|
+
`voice_id`. `tts_model: "eleven_v3"` is still accepted: the run speaks `eleven_v4` and `warnings[]` says so.
|
|
80
|
+
`eleven_v4` gives no pause for a `<break>` tag, so the tag is cut with a warning on the default path too.
|
|
81
|
+
- `make_ugc` takes `pause_trim`, targets in seconds per gap class: after synthesis a pause longer than its target is cut
|
|
82
|
+
down to it inside silence only, with a crossfade, and word timings move with the audio. A joint that would click is
|
|
83
|
+
kept and named in `warnings[]`.
|
|
84
|
+
- *Server-side:* a reference analysis measures the presenter's voice from the words it already transcribes: pace,
|
|
85
|
+
pauses in three layers, hinge pauses, pitch and loudness range, in the profile's new `voice` section.
|
|
86
|
+
`plan_reference_remake` sets `voice_pace` from it on a model with a speed. On `eleven_v4` it sets none and, when
|
|
87
|
+
the voice is more than 5% off the presenter, names the measured voices nearer the presenter's pace (#890).
|
|
88
|
+
- `@clipwright/core` exports `referenceVoice`, the schema of that section, and `narrationPaceFromVoice`.
|
|
89
|
+
|
|
90
|
+
- *Dashboard:* a public `/captions` page plays every caption style on the same presenter and the same words, each
|
|
91
|
+
with the description `tools/list` gives it; the `caption_style` description links to the page.
|
|
92
|
+
- `SKILL.md` names every caption style and tells the agent to ask whether the user wants captions, to offer three
|
|
93
|
+
or four fitting styles with the gallery link, and to take the style closest to a reference video's captions.
|
|
94
|
+
- *Server-side:* `hormozi` now matches the canonical look: Montserrat Black uppercase, white with a thick black outline,
|
|
95
|
+
one yellow (`#FFD93D`) keyword per cue, up to three words. The previous look (condensed Oswald, orange keyword, no
|
|
96
|
+
outline) is the new style `accent`. `hormozi` stays the default; there are 24 styles.
|
|
97
|
+
- *Server-side:* `make_ugc` takes `edit_sounds: true` on a run with `inserts` or `layout_windows`: a low sound plays on
|
|
98
|
+
every cut, to or from an insert, at a full-frame template's cut in or out and at a layout window's in and out, with
|
|
99
|
+
its peak on the cut. `template_sounds.edit` picks it from `swell_hit` (default), `whoosh_deep`, `whoosh_low`,
|
|
100
|
+
`boom_low`, `sub_drop`, `riser_boom` and `riser_hit`. A cut that already plays a template's whoosh or flash gets no
|
|
101
|
+
second sound. Without the field a run plays no edit sounds, as before; `edit_sounds` with nothing to cut, with
|
|
102
|
+
`template_sounds: false`, or `template_sounds.edit` without `edit_sounds`, is refused 400 by its path before any
|
|
103
|
+
hold. The price does not change.
|
|
104
|
+
- *Server-side:* new template sounds: a `pop` (`plop`) when a `tag` or a `callout` pops in, a `hangup` (`phone`) just
|
|
105
|
+
before an answered `phone_call` leaves, and `money` (`cash_register`, `coins`) when a `stat` with a currency sign in
|
|
106
|
+
its prefix or suffix counts up. `answer` adds `pickup`, `whoosh` adds `slide_quick` and `flash` adds `swish`.
|
|
107
|
+
`list_template_sounds` lists them. A run frozen before them keeps its sounds.
|
|
108
|
+
- *Server-side:* `make_ugc` takes `framing`, presenter sizes on their words: `close` (1.18 times larger about the face)
|
|
109
|
+
or `medium`, each a hard cut that settles over 8 frames, or with `transition: "flash"` a warm light leak over the cut.
|
|
110
|
+
It needs long-form qualification, works without captions, refuses overlap with inserts, layout windows and other framing,
|
|
111
|
+
and names in `warnings[]` a framing wholly under full-frame templates. With `edit_sounds`, each framing cut plays the
|
|
112
|
+
edit sound. `plan_reference_remake` turns a `punch_in` camera into a close framing and a flash into a speaking beat
|
|
113
|
+
into a flashed one.
|
|
114
|
+
- `create_actor` takes `from_actor_id` with `framing: "wide"`, `holding` (one or two objects, each with words, an
|
|
115
|
+
optional image asset of the object and a hand) or `setting`: it derives a new personal actor from a library actor or
|
|
116
|
+
your own, with the same face checked against the source. A face that does not match costs nothing. The price is the
|
|
117
|
+
usual per-image units. *Server-side:* the fields are open only where `CLIPWRIGHT_ACTOR_VIEWS` is on; elsewhere they
|
|
118
|
+
are refused 400 `rejected_field`. A wide derived actor's 9:16 is listed with `framing: "wide"`, and `make_ugc`
|
|
119
|
+
renders it as a wide view. `@clipwright/core` exports `storedActorSource`, `storedHoldingItem`,
|
|
120
|
+
`createActorDispositions`, `createActorRejectedFields` and `isActorViewsEnabled`.
|
|
121
|
+
|
|
122
|
+
### Changed
|
|
123
|
+
|
|
124
|
+
- *Server-side:* the template sound library is re-recorded from CC0 sounds the owner chose by ear: 25 of the 31 files
|
|
125
|
+
play a new recording under the same name; the rings, `glitch`, `switch_heavy` and `paper_swipe` stay as they were.
|
|
126
|
+
Every source is named in `THIRD_PARTY_NOTICES`.
|
|
127
|
+
|
|
21
128
|
## [0.34.0] - 2026-10-24
|
|
22
129
|
|
|
23
130
|
### Added
|
package/README.md
CHANGED
|
@@ -151,14 +151,15 @@ switch and ring sounds come with the templates by default. We checked the prompt
|
|
|
151
151
|
with a fresh agent on this server on 2026-10-24; the video was rendered from the
|
|
152
152
|
same call.
|
|
153
153
|
|
|
154
|
-
|
|
155
|
-
|
|
154
|
+
The quote named the price before anything was spent; list_prices names every
|
|
155
|
+
rate. [Watch it](https://clipwright.io/mcp#examples).
|
|
156
156
|
|
|
157
157
|
## Tools
|
|
158
158
|
|
|
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
163
|
- `get_workflow_plan` — read the current owned plan, revision and readiness. Free.
|
|
163
164
|
- `approve_workflow_plan` — explicitly approve a chosen revision and content digest. Free; starts no run.
|
|
164
165
|
- `quote_workflow_plan` — quote the approved revision without spending credits.
|
|
@@ -175,6 +176,9 @@ anything was spent. [Watch it](https://clipwright.io/mcp#examples).
|
|
|
175
176
|
- `quote_ugc` — estimated duration and price, plus a warning when `make_ugc`
|
|
176
177
|
with the same input would be refused for money or access. Free.
|
|
177
178
|
- `get_account` — balance, debt and holds of the account. Free.
|
|
179
|
+
- `list_prices` — what every tool costs in credits: a number per unit, or a
|
|
180
|
+
formula where the price depends on the input; free tools are listed at 0.
|
|
181
|
+
Free.
|
|
178
182
|
- `make_ugc` — **renders a clip; this is the call that costs money.** Returns a
|
|
179
183
|
`run_id` immediately instead of blocking, because a render takes minutes.
|
|
180
184
|
- `get_run` — status of a run. Free; poll it every few seconds.
|
|
@@ -224,6 +228,15 @@ anything was spent. [Watch it](https://clipwright.io/mcp#examples).
|
|
|
224
228
|
- `update_asset` — rename an asset or change its role. Free.
|
|
225
229
|
- `delete_asset` — delete an asset; a daily cleanup removes its file once 7 days
|
|
226
230
|
have passed. Free.
|
|
231
|
+
- `quote_analysis` — price of a reference analysis of an asset: 70 credits, or 0
|
|
232
|
+
when the asset's analysis would answer. Free.
|
|
233
|
+
- `analyze_reference` — read a reference ad (an MP4 asset, up to 120 s) into a
|
|
234
|
+
`reference_profile`: beats, graphics in our template vocabulary, captions,
|
|
235
|
+
pacing and what we cannot draw. Returns at once; poll
|
|
236
|
+
`get_reference_analysis`. 70 credits held and charged once it succeeds; a
|
|
237
|
+
failed analysis costs nothing. 10 new analyses per hour.
|
|
238
|
+
- `get_reference_analysis` — the state of an analysis, with the profile and its
|
|
239
|
+
warnings once it succeeded. Free.
|
|
227
240
|
- `quote_actor` — price of a personal actor before creating one. Free.
|
|
228
241
|
- `create_actor` — **creates a personal actor from a description; this costs
|
|
229
242
|
money.** Each requested format is a separate charged image. Returns a `run_id`
|
package/SKILL.md
CHANGED
|
@@ -185,12 +185,12 @@ Environment variables:
|
|
|
185
185
|
| `CLIPWRIGHT_CLIENT_ID` | YES (see section 2) | Unique identifier of this INSTALLATION. |
|
|
186
186
|
|
|
187
187
|
After connecting, restart or reopen the MCP host and confirm that `tools/list`
|
|
188
|
-
returns
|
|
188
|
+
returns 44 tools: `make_ugc`, `get_run`, `get_run_shots`, `quote_revision`, `revise_run`, `quote_candidate`, `create_candidate`,
|
|
189
189
|
`list_generation_models`, `quote_image`, `generate_image`, `quote_video`, `generate_video`, `quote_ugc`, `list_actors`,
|
|
190
190
|
`list_voices`, `list_template_sounds`, `upload_image`, `create_upload`, `get_upload`, `create_asset`, `list_assets`, `get_asset`, `update_asset`,
|
|
191
|
-
`delete_asset`, `get_account`, `create_actor`, `quote_actor`, `delete_actor`, `get_actor_defaults`,
|
|
191
|
+
`delete_asset`, `quote_analysis`, `analyze_reference`, `get_reference_analysis`, `get_account`, `list_prices`, `create_actor`, `quote_actor`, `delete_actor`, `get_actor_defaults`,
|
|
192
192
|
`set_actor_defaults`, `quote_faceless`, `make_faceless`, `list_workflows`, `get_workflow`, `prepare_workflow_plan`,
|
|
193
|
-
`get_workflow_plan`, `approve_workflow_plan`, `quote_workflow_plan`, `run_workflow_plan`.
|
|
193
|
+
`plan_reference_remake`, `get_workflow_plan`, `approve_workflow_plan`, `quote_workflow_plan`, `run_workflow_plan`.
|
|
194
194
|
|
|
195
195
|
Workflow calls are explicit steps: list/read a method, prepare its complete
|
|
196
196
|
document, read all readiness issues and warnings, approve the chosen revision,
|
|
@@ -448,34 +448,32 @@ is, the contract MINUS the rejected fields: they simply are not there, and listi
|
|
|
448
448
|
them here would mean offering what the server punishes you for (section 3).
|
|
449
449
|
|
|
450
450
|
`script` (required while `segments` is rejected; length is limited by the resolved
|
|
451
|
-
TTS model, as reported by `tools/list`: `
|
|
451
|
+
TTS model, as reported by `tools/list`: `eleven_v4` and `gemini-3.8-flash-tts`
|
|
452
452
|
allow 5000 characters, `eleven_flash_v2_5` and `eleven_turbo_v2_5` allow 10000. Spaces, audio tags and stress
|
|
453
453
|
marks count; emoji may count as two characters. There is no word-count limit or fixed
|
|
454
|
-
duration implied by it), `tts_model` (omit it and the voice decides:
|
|
455
|
-
`
|
|
456
|
-
`
|
|
457
|
-
|
|
458
|
-
speaks `eleven_v4` when at least 60% of the script's Cyrillic and Latin letters are
|
|
459
|
-
Cyrillic, and `eleven_v3` otherwise; an explicit `tts_model` always wins;
|
|
454
|
+
duration implied by it), `tts_model` (omit it and the voice decides: a voice of kind
|
|
455
|
+
`model_voice` speaks its own model `gemini-3.8-flash-tts`, every preset, catalog voice and
|
|
456
|
+
raw `voice_id` speaks `eleven_v4`; an explicit `tts_model` wins, except `eleven_v3`,
|
|
457
|
+
which is no longer spoken: a run naming it speaks `eleven_v4` and says so in `warnings[]`;
|
|
460
458
|
`eleven_flash_v2_5` and `eleven_turbo_v2_5` cost less and suit
|
|
461
459
|
languages other than Russian), optionally `person` OR
|
|
462
460
|
`image` (a public `https` URL) with `actor_gender` (`female`/`male`, only next to
|
|
463
461
|
`image`), plus `name`, `captions` (defaults to `false` —
|
|
464
|
-
**captions are opt-in, ASK THE USER FIRST**), `caption_style`
|
|
465
|
-
(`
|
|
462
|
+
**captions are opt-in, ASK THE USER FIRST**), `caption_style` and
|
|
463
|
+
`caption_emphasis` (see *Captions* under `make_ugc`), `look` (`natural`/`commercial`/`raw_iphone`),
|
|
466
464
|
`aspect_ratio` (`9:16`/`1:1`, with NO default — silence and an explicit choice
|
|
467
465
|
differ), `resolution` (`720p`/`1080p`/`4k`), `voice`/`voice_id`.
|
|
468
466
|
|
|
469
467
|
**Russian stress marks.** Tell a user who writes in Russian that they can fix stress:
|
|
470
468
|
write the stressed vowel as a capital inside a lowercase word — `потОм`, `зАмок` — and
|
|
471
|
-
Clipwright sends `eleven_v4
|
|
469
|
+
Clipwright sends `eleven_v4` and `gemini-3.8-flash-tts` the stress mark U+0301
|
|
472
470
|
(`пото́м`). A capital that starts a
|
|
473
471
|
word stays a capital, a word with a second capital or an inner capital consonant
|
|
474
472
|
(`ВУЗы`, all caps) stays as written, and a U+0301 typed directly is kept. A single
|
|
475
473
|
inner capital vowel always reads as stress, so `ЯндексЕда` needs a space. Keep Russian
|
|
476
|
-
scripts on one of those
|
|
474
|
+
scripts on one of those two models: the 2.5 models misread the mark, so a script
|
|
477
475
|
carrying it draws a warning there, and so does any Cyrillic script. With a preset, a
|
|
478
|
-
catalog voice or `voice_id` the choice is `eleven_v4
|
|
476
|
+
catalog voice or `voice_id` the choice is `eleven_v4`, because
|
|
479
477
|
`gemini-3.8-flash-tts` speaks only its own voices. Retrying never
|
|
480
478
|
fixes stress; only the text does.
|
|
481
479
|
|
|
@@ -490,19 +488,30 @@ The exact list is always available from the tool schema itself: `tools/list` is
|
|
|
490
488
|
generated from the same shape, and fields that are not honoured carry
|
|
491
489
|
`NOT HONORED YET` right in their own `description`.
|
|
492
490
|
|
|
493
|
-
Spends no credits. The response is the raw `quote
|
|
491
|
+
Spends no credits. The response is the raw `quote`; its price fields for a
|
|
492
|
+
12-second script read:
|
|
494
493
|
|
|
495
494
|
```json
|
|
496
495
|
{
|
|
497
496
|
"skill": "make_ugc",
|
|
498
|
-
"credits_estimate":
|
|
497
|
+
"credits_estimate": 156,
|
|
499
498
|
"duration_estimate_sec": 12,
|
|
499
|
+
"tariff": "parts-v1",
|
|
500
|
+
"price_lines": [
|
|
501
|
+
{ "label": "presenter, HeyGen Avatar IV", "unit": "face_second", "quantity": 12, "unit_credits": 12, "credits": 144 },
|
|
502
|
+
{ "label": "production (voice and render)", "unit": "second", "quantity": 12, "unit_credits": 1, "credits": 12 }
|
|
503
|
+
],
|
|
504
|
+
"minimum_credits": 50,
|
|
500
505
|
"warnings": []
|
|
501
506
|
}
|
|
502
507
|
```
|
|
503
508
|
|
|
509
|
+
Show the user `credits_estimate` and the lines; prices change, so never repeat
|
|
510
|
+
them from this page.
|
|
511
|
+
|
|
504
512
|
`warnings[]` IS present here (passed through unfiltered) — read it: parameters
|
|
505
|
-
that will not be honoured (for example, `
|
|
513
|
+
that will not be honoured (for example, a `caption_emphasis` quote spoken entirely
|
|
514
|
+
under a full-frame insert, where no captions are drawn) are
|
|
506
515
|
declared there rather than dropped silently.
|
|
507
516
|
|
|
508
517
|
**Always call `quote_ugc` first and show the user the price before `make_ugc`**
|
|
@@ -535,6 +544,32 @@ After that you MUST poll `get_run` with that `run_id` every ~5–10 seconds unti
|
|
|
535
544
|
reaches a terminal state. Do not tell the user the video is ready until you have a
|
|
536
545
|
`video_url`.
|
|
537
546
|
|
|
547
|
+
#### Captions (`captions`, `caption_style`, `caption_emphasis`)
|
|
548
|
+
|
|
549
|
+
`make_ugc` burns word-timed captions into the video when `captions: true`. They
|
|
550
|
+
are off by default and do not change the price. Whether a video has them is the
|
|
551
|
+
user's call:
|
|
552
|
+
|
|
553
|
+
1. **Ask whether they want captions** before the quote. Never turn them on
|
|
554
|
+
unprompted.
|
|
555
|
+
2. **If yes, pick a style with them.** When the user gave a reference video, take
|
|
556
|
+
its look: bold uppercase cues with one coloured keyword is `hormozi`, one or
|
|
557
|
+
two words popping in colour is `tiktok`, a sentence on a dark box is `youtube`
|
|
558
|
+
or `lecture`. Otherwise offer three or four styles that fit the video, one line
|
|
559
|
+
each, and link the gallery, which shows every style on the same clip:
|
|
560
|
+
https://clipwright.io/captions. Without a choice the server draws `hormozi`.
|
|
561
|
+
3. **Mark key words with `caption_emphasis`**: quotes from `script` drawn larger or
|
|
562
|
+
in the style's accent colour. `caption_mode: "highlights"` captions only the
|
|
563
|
+
lines around those quotes.
|
|
564
|
+
|
|
565
|
+
The styles: `hormozi` (the default), `accent`, `tiktok`, `youtube`, `instagram`,
|
|
566
|
+
`minimalist`, `neon`, `genz`, `campfire`, `midnight`, `plottwist`, `headline`,
|
|
567
|
+
`promo`, `lecture`, `highlighter`, `studio`, `broadcast`, `arcade`, `clutch`,
|
|
568
|
+
`bubblegum`, `crayon`, `lyrics`, `bassdrop`, `punch`; `minimal` is an older name
|
|
569
|
+
for `minimalist`. Each style's description is in `caption_style` of `tools/list`:
|
|
570
|
+
quote that, not your memory of it. Captions are refused with `segments` and with
|
|
571
|
+
`gemini-3.8-flash-tts`, which returns no word timings.
|
|
572
|
+
|
|
538
573
|
#### Choosing a voice (`voice` / `voice_id`)
|
|
539
574
|
|
|
540
575
|
Two mutually exclusive optional fields in the `make_ugc` input:
|
|
@@ -585,8 +620,8 @@ Two mutually exclusive optional fields in the `make_ugc` input:
|
|
|
585
620
|
When the user sends a photo and asks for no particular voice, pass the gender of
|
|
586
621
|
the person in it as `actor_gender`. Ask the user only when you cannot tell.
|
|
587
622
|
|
|
588
|
-
For a Russian script, leave `tts_model` out or name `eleven_v4`
|
|
589
|
-
|
|
623
|
+
For a Russian script, leave `tts_model` out or name `eleven_v4` — it reads stress
|
|
624
|
+
marks — and mark stress with a capital vowel (see **Russian stress marks**
|
|
590
625
|
above). A Russian voice speaks `eleven_v4` on its own. A `model_voice` voice reads
|
|
591
626
|
stress marks too, on its own model `gemini-3.8-flash-tts`.
|
|
592
627
|
|
|
@@ -641,8 +676,8 @@ different sentences. Pass it to the user as written when they ask how to label t
|
|
|
641
676
|
`SUCCEEDED`, `FAILED`) carries the run's `warnings` — parameters that were not
|
|
642
677
|
honoured are always declared, never dropped silently. `make_ugc` shares the
|
|
643
678
|
formatter, so its first response carries them too. Read it on the terminal
|
|
644
|
-
response without fail: for instance,
|
|
645
|
-
announced exactly there.
|
|
679
|
+
response without fail: for instance, captions laid out evenly because the speech
|
|
680
|
+
model returned no word timings are announced exactly there.
|
|
646
681
|
|
|
647
682
|
**An unknown terminal status on the server** (say a hypothetical `"canceled"` that
|
|
648
683
|
is not in `TERMINAL_STATES`) is a deliberate degradation: `isTerminal` returns
|
|
@@ -841,6 +876,15 @@ would be refused for money or access, so a render rarely needs this call first.
|
|
|
841
876
|
Call it when the user asks how many credits are left, or to show the numbers
|
|
842
877
|
behind such a warning.
|
|
843
878
|
|
|
879
|
+
### `list_prices` — free, no input
|
|
880
|
+
|
|
881
|
+
Returns the body of `GET /v1/public/prices`: one entry per tool and variant with
|
|
882
|
+
its price as `lines` of `credits` per `unit`, added up, and `minimum_credits`
|
|
883
|
+
when there is one; where the price depends on the input, `lines` is empty and
|
|
884
|
+
`formula` states the rule. Free tools are listed at 0. Each paid tool's description ends with
|
|
885
|
+
the same price line. For the exact number of one call, use the quote tool the
|
|
886
|
+
entry names in `quote_tool`.
|
|
887
|
+
|
|
844
888
|
### `quote_faceless` — free, and `make_faceless` — paid, creates a run
|
|
845
889
|
|
|
846
890
|
A faceless video is narration over an opening animated clip and image scenes,
|
|
@@ -856,7 +900,7 @@ Give the narration one of two ways, and name which with `input_mode`:
|
|
|
856
900
|
`duration_seconds` by up to a quarter, never beyond 90 seconds; a video more
|
|
857
901
|
than 5 seconds longer says so in `warnings[]`. A script is accepted when its
|
|
858
902
|
estimated length is 21 seconds to `duration_seconds` plus 5, at most 90. The charge follows the delivered duration and never
|
|
859
|
-
exceeds the quote;
|
|
903
|
+
exceeds the quote; `list_prices` gives the rates and the minimum.
|
|
860
904
|
- `input_mode: "brief"` with `brief` — a short description; the narration is
|
|
861
905
|
written from it.
|
|
862
906
|
|
|
@@ -1104,8 +1148,8 @@ run as often as you like without making a new paid call.
|
|
|
1104
1148
|
exists.
|
|
1105
1149
|
2. Generate a unique `CLIPWRIGHT_CLIENT_ID` (section 2) and put it, together with
|
|
1106
1150
|
`CLIPWRIGHT_API_KEY`, into the MCP host config (section 1.3).
|
|
1107
|
-
3. Restart the host and confirm `tools/list` returns
|
|
1108
|
-
|
|
1151
|
+
3. Restart the host and confirm `tools/list` returns every tool named in
|
|
1152
|
+
section 1.3.
|
|
1109
1153
|
4. `quote_ugc` with a script → show the price AND read `source`,
|
|
1110
1154
|
`resolved_aspect_ratio`, `warnings[]` (section 3).
|
|
1111
1155
|
5. `make_ugc` → get a `run_id` immediately.
|
package/dist/format.js
CHANGED
|
@@ -64,6 +64,7 @@ export function formatGetRun(run, receipt) {
|
|
|
64
64
|
} : { url_check: VIDEO_URL_CHECK }),
|
|
65
65
|
...(run.final_output?.ai_disclosure === undefined ? {} : { ai_disclosure: run.final_output.ai_disclosure }),
|
|
66
66
|
...(run.final_output?.long_form_billing === undefined ? {} : { long_form_billing: run.final_output.long_form_billing }),
|
|
67
|
+
...(run.final_output?.parts_billing === undefined ? {} : { parts_billing: run.final_output.parts_billing }),
|
|
67
68
|
...(run.final_output?.speech_timing_gaps === undefined ? {} : { speech_timing_gaps: run.final_output.speech_timing_gaps }),
|
|
68
69
|
...(run.generation === undefined ? {} : { generation: run.generation }),
|
|
69
70
|
// A succeeded create_actor names the actor_id an agent passes to make_ugc (#778).
|
package/dist/format.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts
CHANGED
|
@@ -14,6 +14,7 @@ export declare const REMOTE_ASSET_PATH_REFUSAL: string;
|
|
|
14
14
|
export declare function putLocalClip(client: ClipwrightClient, bytes: Uint8Array<ArrayBuffer>, path: string, meta: {
|
|
15
15
|
role: z.infer<typeof createAssetRequest>["role"];
|
|
16
16
|
name: string;
|
|
17
|
+
analysis_only?: true;
|
|
17
18
|
}, put?: typeof fetch): Promise<unknown>;
|
|
18
19
|
/** Builds the MCP server with its tools registered but NO transport connected, */
|
|
19
20
|
/** so tool registration is testable without a stdio process. */
|
package/dist/server.js
CHANGED
|
@@ -5,7 +5,7 @@ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
|
5
5
|
import { z } from "zod";
|
|
6
6
|
// `mcpUgcInputShape`, not the full shape: fields the server rejects must not
|
|
7
7
|
// be offered to a caller who would get a 400 for using them.
|
|
8
|
-
import { mcpUgcInputShape, actorDefaultsInput, BROLL_POLICY_DESCRIPTION, CANDIDATE_CHARGE_TEXT, candidateRequest, CATALOG_LANGUAGES, CREATE_ACTOR_DESCRIPTION, createActorInputShape, DEFAULT_FACELESS_VOICE, FACELESS_VOICE_NAMES, generateImageRequest, generateVideoRequest, MODEL_VOICE_MODEL, MODEL_VOICE_NAMES, SCRIPT_LENGTH_DESCRIPTION, voicesQueryShape, agentRetryShape, runId, MAKE_UGC_DESCRIPTION, MAKE_UGC_AGENT_PROTOCOL, MAKE_FACELESS_DESCRIPTION, MAKE_FACELESS_AGENT_PROTOCOL, makeFacelessInput, offeredFacelessInput, REVISION_CHARGE_TEXT, revisionRequest, UPLOAD_IMAGE_DESCRIPTION, UPLOAD_MAX_BYTES, UPLOAD_MEDIA_TYPES, CREATE_UPLOAD_DESCRIPTION, GET_UPLOAD_DESCRIPTION, uploadId, sniffUploadMediaType, ASSET_KINDS, ASSET_LIST_MAX_LIMIT, ASSET_VIDEO_MAX_BYTES, pendingAssetRead, ASSET_ROLES, assetId, assetSource, CREATE_ASSET_DESCRIPTION, createAssetRequest, DELETE_ASSET_DESCRIPTION, GET_ASSET_DESCRIPTION, LIST_ASSETS_DESCRIPTION, UPDATE_ASSET_DESCRIPTION, } from "@clipwright/core";
|
|
8
|
+
import { mcpUgcInputShape, actorDefaultsInput, BROLL_POLICY_DESCRIPTION, CANDIDATE_CHARGE_TEXT, candidateRequest, CATALOG_LANGUAGES, CREATE_ACTOR_DESCRIPTION, createActorInputShape, DEFAULT_FACELESS_VOICE, FACELESS_VOICE_NAMES, generateImageRequest, generateVideoRequest, MODEL_VOICE_MODEL, MODEL_VOICE_NAMES, SCRIPT_LENGTH_DESCRIPTION, voicesQueryShape, agentRetryShape, runId, MAKE_UGC_DESCRIPTION, MAKE_UGC_AGENT_PROTOCOL, MAKE_FACELESS_DESCRIPTION, MAKE_FACELESS_AGENT_PROTOCOL, makeFacelessInput, offeredFacelessInput, REVISION_CHARGE_TEXT, revisionRequest, UPLOAD_IMAGE_DESCRIPTION, UPLOAD_MAX_BYTES, UPLOAD_MEDIA_TYPES, CREATE_UPLOAD_DESCRIPTION, GET_UPLOAD_DESCRIPTION, uploadId, sniffUploadMediaType, ASSET_KINDS, ASSET_LIST_MAX_LIMIT, ASSET_VIDEO_MAX_BYTES, pendingAssetRead, ASSET_ROLES, assetId, assetSource, CREATE_ASSET_DESCRIPTION, createAssetRequest, DELETE_ASSET_DESCRIPTION, GET_ASSET_DESCRIPTION, LIST_ASSETS_DESCRIPTION, UPDATE_ASSET_DESCRIPTION, ANALYZE_REFERENCE_DESCRIPTION, QUOTE_ANALYSIS_DESCRIPTION, analyzeReferenceRequest, GET_REFERENCE_ANALYSIS_DESCRIPTION, referenceAnalysisId, withPriceLine, } from "@clipwright/core";
|
|
9
9
|
import { formatGetRun, withFailureReport } from "./format.js";
|
|
10
10
|
import { registerWorkflowTools } from './workflow-tools.js';
|
|
11
11
|
// Version from the manifest: a literal drifts, and a JSON import breaks `rootDir`.
|
|
@@ -24,7 +24,7 @@ export async function putLocalClip(client, bytes, path, meta, put = fetch) {
|
|
|
24
24
|
throw new Error(`${path} is ${bytes.byteLength} bytes; a clip may be ${ASSET_VIDEO_MAX_BYTES}`);
|
|
25
25
|
const sha256 = createHash("sha256").update(bytes).digest("hex");
|
|
26
26
|
const created = await client.createAsset({ source: { put: { media_type: "video/mp4", bytes: bytes.byteLength, sha256 } },
|
|
27
|
-
role: meta.role, name: meta.name, rights_confirmed: true });
|
|
27
|
+
role: meta.role, name: meta.name, ...(meta.analysis_only ? { analysis_only: true } : { rights_confirmed: true }) });
|
|
28
28
|
const pending = pendingAssetRead.safeParse(created);
|
|
29
29
|
const upload = pending.success ? pending.data.upload : undefined;
|
|
30
30
|
if (upload === undefined)
|
|
@@ -51,7 +51,7 @@ export function createServer(client, options = { fileAccess: "local" }) {
|
|
|
51
51
|
server.registerTool("make_ugc", {
|
|
52
52
|
title: "Make a talking-actor video",
|
|
53
53
|
annotations: { readOnlyHint: false, destructiveHint: false },
|
|
54
|
-
description: `${MAKE_UGC_DESCRIPTION} ${MAKE_UGC_AGENT_PROTOCOL}
|
|
54
|
+
description: withPriceLine("make_ugc", `${MAKE_UGC_DESCRIPTION} ${MAKE_UGC_AGENT_PROTOCOL}`),
|
|
55
55
|
// Flat schema: offered render input plus agent retry. The description must agree
|
|
56
56
|
// with it, since an LLM reads the description before the schema.
|
|
57
57
|
inputSchema: { ...mcpUgcInputShape, ...agentRetryShape },
|
|
@@ -119,7 +119,7 @@ export function createServer(client, options = { fileAccess: "local" }) {
|
|
|
119
119
|
server.registerTool("revise_run", {
|
|
120
120
|
title: "Revise a run",
|
|
121
121
|
annotations: { readOnlyHint: false, destructiveHint: false },
|
|
122
|
-
description: "Start a revision of a run made by make_faceless (paid): a NEW run that renders the video again with the " +
|
|
122
|
+
description: withPriceLine("revise_run", "Start a revision of a run made by make_faceless (paid): a NEW run that renders the video again with the " +
|
|
123
123
|
"shots you change, by changes (a shot and what to generate for it) or by document (the whole edited " +
|
|
124
124
|
"document); pass exactly one. Call quote_revision first and show the user the price. An identical request " +
|
|
125
125
|
"returns the same run it started before, so a call repeated after a lost answer starts nothing new; to " +
|
|
@@ -127,7 +127,7 @@ export function createServer(client, options = { fileAccess: "local" }) {
|
|
|
127
127
|
"original has a limit on revisions running at once and on revisions failed or unfinished, and paid edits " +
|
|
128
128
|
"of it close some days after it finished; a refusal names which. While paid edits are closed it answers " +
|
|
129
129
|
"editing_disabled and charges nothing. The result is a new run: poll it with get_run; once it succeeded " +
|
|
130
|
-
"it is editable under its own run_id.",
|
|
130
|
+
"it is editable under its own run_id."),
|
|
131
131
|
inputSchema: { ...revisionShape, ...agentRetryShape },
|
|
132
132
|
}, async ({ run_id, attempt, ...request }) => withFailureReport(async () => formatGetRun(await client.startRevision(run_id, revisionOf(request), { attempt }))));
|
|
133
133
|
// The candidate pair; the list stays on REST, the SDK and the CLI, since an agent polls its own candidate with get_run.
|
|
@@ -155,14 +155,14 @@ export function createServer(client, options = { fileAccess: "local" }) {
|
|
|
155
155
|
server.registerTool("create_candidate", {
|
|
156
156
|
title: "Make a shot candidate",
|
|
157
157
|
annotations: { readOnlyHint: false, destructiveHint: false },
|
|
158
|
-
description: "Make a shot candidate of a run made by make_faceless (paid): a NEW run of skill edit_shot that generates one " +
|
|
158
|
+
description: withPriceLine("create_candidate", "Make a shot candidate of a run made by make_faceless (paid): a NEW run of skill edit_shot that generates one " +
|
|
159
159
|
"picture or clip for one shot, to keep or discard in a later revision. Call quote_candidate first and show the " +
|
|
160
160
|
`user the price. ${CANDIDATE_CHARGE_TEXT} An identical request returns the same run it started before, so a ` +
|
|
161
161
|
"call repeated after a lost answer starts nothing new; to make another candidate with the same request on " +
|
|
162
162
|
"purpose, pass take 2. An original has a limit on candidates running at once and on candidates failed or " +
|
|
163
163
|
"unfinished, apart from its revisions; a refusal names which. While shot candidates are closed it answers " +
|
|
164
164
|
"editing_disabled and charges nothing. The result is a new run: poll it with get_run; once it succeeded, its " +
|
|
165
|
-
"candidate.preview_url shows what was made.",
|
|
165
|
+
"candidate.preview_url shows what was made."),
|
|
166
166
|
inputSchema: candidateShape,
|
|
167
167
|
}, async ({ run_id, ...request }) => withFailureReport(async () => formatGetRun(await client.createCandidate(run_id, candidateOf(request)))));
|
|
168
168
|
// Single generations (clipwright#724): the tools are listed while the feature is closed and relay the API's refusal.
|
|
@@ -199,9 +199,9 @@ export function createServer(client, options = { fileAccess: "local" }) {
|
|
|
199
199
|
server.registerTool("generate_image", {
|
|
200
200
|
title: "Generate an image",
|
|
201
201
|
annotations: { readOnlyHint: false, destructiveHint: false },
|
|
202
|
-
description: "Generate one image from a prompt (paid): a NEW run of skill generate_image, charged the quoted credits per image " +
|
|
202
|
+
description: withPriceLine("generate_image", "Generate one image from a prompt (paid): a NEW run of skill generate_image, charged the quoted credits per image " +
|
|
203
203
|
"once it is delivered. Call quote_image first and show the user the price. Poll the run with get_run; once it " +
|
|
204
|
-
"succeeded, generation.url is the image and its run_id can be a reference of a later generation. " + generationTerms,
|
|
204
|
+
"succeeded, generation.url is the image and its run_id can be a reference of a later generation. " + generationTerms),
|
|
205
205
|
inputSchema: imageRunTool,
|
|
206
206
|
}, async ({ attempt, ...request }) => withFailureReport(async () => formatGetRun(await client.generateImage(request, { attempt }))));
|
|
207
207
|
server.registerTool("quote_video", {
|
|
@@ -217,10 +217,10 @@ export function createServer(client, options = { fileAccess: "local" }) {
|
|
|
217
217
|
server.registerTool("generate_video", {
|
|
218
218
|
title: "Generate a clip",
|
|
219
219
|
annotations: { readOnlyHint: false, destructiveHint: false },
|
|
220
|
-
description: "Generate one silent clip (paid): a NEW run of skill generate_video, charged unit_credits per second of duration_s " +
|
|
220
|
+
description: withPriceLine("generate_video", "Generate one silent clip (paid): a NEW run of skill generate_video, charged unit_credits per second of duration_s " +
|
|
221
221
|
"once it is delivered. Modes: text; first_frame (first_frame, optional last_frame, of the requested aspect ratio " +
|
|
222
222
|
"within 2%); reference (1 to 4 references). Call quote_video first and show the user the price. Poll the run with " +
|
|
223
|
-
"get_run; once it succeeded, generation.url is the clip. " + generationTerms,
|
|
223
|
+
"get_run; once it succeeded, generation.url is the clip. " + generationTerms),
|
|
224
224
|
inputSchema: videoRunTool,
|
|
225
225
|
}, async ({ attempt, ...request }) => withFailureReport(async () => formatGetRun(await client.generateVideo(generateVideoRequest.parse(request), { attempt }))));
|
|
226
226
|
server.registerTool("quote_ugc", {
|
|
@@ -297,19 +297,23 @@ export function createServer(client, options = { fileAccess: "local" }) {
|
|
|
297
297
|
role: createAssetRequest.shape.role,
|
|
298
298
|
name: createAssetRequest.shape.name,
|
|
299
299
|
rights_confirmed: createAssetRequest.shape.rights_confirmed,
|
|
300
|
+
analysis_only: createAssetRequest.shape.analysis_only,
|
|
300
301
|
},
|
|
301
|
-
}, async ({ source, role, name, rights_confirmed }) => withFailureReport(async () => {
|
|
302
|
+
}, async ({ source, role, name, rights_confirmed, analysis_only }) => withFailureReport(async () => {
|
|
302
303
|
if (!("path" in source)) {
|
|
303
|
-
return assetText(client.createAsset({ source, role, name, ...(rights_confirmed === undefined ? {} : { rights_confirmed })
|
|
304
|
+
return assetText(client.createAsset({ source, role, name, ...(rights_confirmed === undefined ? {} : { rights_confirmed }),
|
|
305
|
+
...(analysis_only === undefined ? {} : { analysis_only }) }));
|
|
304
306
|
}
|
|
305
307
|
if (options.fileAccess !== "local")
|
|
306
308
|
throw new Error(REMOTE_ASSET_PATH_REFUSAL);
|
|
307
|
-
if (rights_confirmed
|
|
308
|
-
throw new Error("A local file is your own material: pass rights_confirmed: true");
|
|
309
|
+
if (rights_confirmed === analysis_only) {
|
|
310
|
+
throw new Error("A local file is your own material: pass rights_confirmed: true, or analysis_only: true to keep it for analyze_reference alone");
|
|
311
|
+
}
|
|
309
312
|
const bytes = new Uint8Array(await readFile(source.path));
|
|
313
|
+
const claim = analysis_only ? { analysis_only } : { rights_confirmed: true };
|
|
310
314
|
// A clip goes by PUT (up to 100 MB), then one read hands it to processing; a picture goes as the body.
|
|
311
315
|
if (Buffer.from(bytes.subarray(4, 8)).toString("latin1") === "ftyp") {
|
|
312
|
-
return assetText(putLocalClip(client, bytes, source.path, { role, name }));
|
|
316
|
+
return assetText(putLocalClip(client, bytes, source.path, { role, name, ...(analysis_only ? { analysis_only } : {}) }));
|
|
313
317
|
}
|
|
314
318
|
const mediaType = sniffUploadMediaType(bytes);
|
|
315
319
|
if (mediaType === null || bytes.byteLength > UPLOAD_MAX_BYTES) {
|
|
@@ -317,7 +321,7 @@ export function createServer(client, options = { fileAccess: "local" }) {
|
|
|
317
321
|
? `${source.path} is not a PNG or JPEG file (checked by signature, not by extension)`
|
|
318
322
|
: `${source.path} is ${bytes.byteLength} bytes; the ceiling is ${UPLOAD_MAX_BYTES}`);
|
|
319
323
|
}
|
|
320
|
-
return assetText(client.createAssetFromBytes(bytes, mediaType, { role, name,
|
|
324
|
+
return assetText(client.createAssetFromBytes(bytes, mediaType, { role, name, ...claim }));
|
|
321
325
|
}));
|
|
322
326
|
server.registerTool("list_assets", {
|
|
323
327
|
title: "List assets",
|
|
@@ -351,6 +355,31 @@ export function createServer(client, options = { fileAccess: "local" }) {
|
|
|
351
355
|
await client.deleteAsset(asset_id);
|
|
352
356
|
return { content: [{ type: "text", text: JSON.stringify({ deleted: asset_id }) }] };
|
|
353
357
|
}));
|
|
358
|
+
// Reference analysis (reference-to-video S1c): paid since #927; the profile is read with get_reference_analysis once it is ready.
|
|
359
|
+
server.registerTool("quote_analysis", {
|
|
360
|
+
title: "Quote a reference analysis",
|
|
361
|
+
annotations: { readOnlyHint: true, destructiveHint: false },
|
|
362
|
+
description: QUOTE_ANALYSIS_DESCRIPTION,
|
|
363
|
+
inputSchema: analyzeReferenceRequest.shape,
|
|
364
|
+
}, async (request) => withFailureReport(async () => ({
|
|
365
|
+
content: [{ type: "text", text: JSON.stringify(await client.quoteAnalysis(request)) }],
|
|
366
|
+
})));
|
|
367
|
+
server.registerTool("analyze_reference", {
|
|
368
|
+
title: "Analyse a reference ad",
|
|
369
|
+
annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true },
|
|
370
|
+
description: withPriceLine("analyze_reference", ANALYZE_REFERENCE_DESCRIPTION),
|
|
371
|
+
inputSchema: analyzeReferenceRequest.shape,
|
|
372
|
+
}, async (request) => withFailureReport(async () => ({
|
|
373
|
+
content: [{ type: "text", text: JSON.stringify(await client.analyzeReference(request)) }],
|
|
374
|
+
})));
|
|
375
|
+
server.registerTool("get_reference_analysis", {
|
|
376
|
+
title: "Get a reference analysis",
|
|
377
|
+
annotations: { readOnlyHint: true, destructiveHint: false },
|
|
378
|
+
description: GET_REFERENCE_ANALYSIS_DESCRIPTION,
|
|
379
|
+
inputSchema: { analysis_id: referenceAnalysisId },
|
|
380
|
+
}, async ({ analysis_id }) => withFailureReport(async () => ({
|
|
381
|
+
content: [{ type: "text", text: JSON.stringify(await client.getReferenceAnalysis(analysis_id)) }],
|
|
382
|
+
})));
|
|
354
383
|
server.registerTool("list_voices", {
|
|
355
384
|
title: "List voices",
|
|
356
385
|
annotations: { readOnlyHint: true, destructiveHint: false },
|
|
@@ -374,7 +403,8 @@ export function createServer(client, options = { fileAccess: "local" }) {
|
|
|
374
403
|
"spoken by that voice with that model; play it to the user before a paid render instead of judging a " +
|
|
375
404
|
"voice by its description. A model_voice sample is in English, or in the language you filter by. " +
|
|
376
405
|
"It expires at `preview_expires_at`: call this tool again for a fresh link, " +
|
|
377
|
-
"never store it. A voice without `preview_url` has no sample yet.
|
|
406
|
+
"never store it. A voice without `preview_url` has no sample yet. `words_per_second` is an English voice's measured pace; " +
|
|
407
|
+
"eleven_v4 has no speed setting, so to match a reference presenter pick the voice nearest its pace. Free. " + SCRIPT_LENGTH_DESCRIPTION,
|
|
378
408
|
inputSchema: voicesQueryShape,
|
|
379
409
|
}, async (filters) => withFailureReport(async () => {
|
|
380
410
|
// Relays /v1/voices: no vendor call and no vendor key on this surface.
|
|
@@ -386,6 +416,7 @@ export function createServer(client, options = { fileAccess: "local" }) {
|
|
|
386
416
|
annotations: { readOnlyHint: true, destructiveHint: false },
|
|
387
417
|
description: "List the sounds make_ugc templates play, by beat: where each beat plays, its default and every name it takes. " +
|
|
388
418
|
"A run plays the defaults; template_sounds { beat: name } swaps a beat's sound, and template_sounds=false plays none. " +
|
|
419
|
+
"The edit beat plays on every cut only with make_ugc edit_sounds=true. " +
|
|
389
420
|
"Sounds never change the price. Free.",
|
|
390
421
|
inputSchema: {},
|
|
391
422
|
}, async () => withFailureReport(async () => ({
|
|
@@ -420,7 +451,7 @@ export function createServer(client, options = { fileAccess: "local" }) {
|
|
|
420
451
|
server.registerTool("create_actor", {
|
|
421
452
|
title: "Create a personal actor",
|
|
422
453
|
annotations: { readOnlyHint: false, destructiveHint: false },
|
|
423
|
-
description: CREATE_ACTOR_DESCRIPTION,
|
|
454
|
+
description: withPriceLine("create_actor", CREATE_ACTOR_DESCRIPTION),
|
|
424
455
|
inputSchema: { ...createActorInputShape, ...agentRetryShape },
|
|
425
456
|
}, async (args) => withFailureReport(async () => {
|
|
426
457
|
// `attempt` goes in SDK opts: inside `input` the schema would strip it,
|
|
@@ -442,7 +473,7 @@ export function createServer(client, options = { fileAccess: "local" }) {
|
|
|
442
473
|
server.registerTool("make_faceless", {
|
|
443
474
|
title: "Make a faceless video",
|
|
444
475
|
annotations: { readOnlyHint: false, destructiveHint: false },
|
|
445
|
-
description: `${MAKE_FACELESS_DESCRIPTION} ${MAKE_FACELESS_AGENT_PROTOCOL}
|
|
476
|
+
description: withPriceLine("make_faceless", `${MAKE_FACELESS_DESCRIPTION} ${MAKE_FACELESS_AGENT_PROTOCOL}`),
|
|
446
477
|
inputSchema: offeredFacelessInput.extend(agentRetryShape),
|
|
447
478
|
}, async (args) => withFailureReport(async () => {
|
|
448
479
|
const { attempt, ...input } = args;
|
|
@@ -482,6 +513,17 @@ export function createServer(client, options = { fileAccess: "local" }) {
|
|
|
482
513
|
}, async () => withFailureReport(async () => ({
|
|
483
514
|
content: [{ type: "text", text: JSON.stringify(await client.getAccount()) }],
|
|
484
515
|
})));
|
|
516
|
+
server.registerTool("list_prices", {
|
|
517
|
+
title: "List prices",
|
|
518
|
+
annotations: { readOnlyHint: true, destructiveHint: false },
|
|
519
|
+
description: "List what every Clipwright tool costs in credits. Free, spends nothing. Each entry names the tool, its REST route " +
|
|
520
|
+
"and its price: lines of credits per unit (call, second of video, second the presenter is in the video, image, clip, second of " +
|
|
521
|
+
"clip), added up, with minimum_credits when there is one; or, where the price depends on the input, a formula. " +
|
|
522
|
+
"Free tools cost 0. For the exact number of a paid call, use the quote tool the entry names.",
|
|
523
|
+
inputSchema: {},
|
|
524
|
+
}, async () => withFailureReport(async () => ({
|
|
525
|
+
content: [{ type: "text", text: JSON.stringify(await client.listPrices()) }],
|
|
526
|
+
})));
|
|
485
527
|
return server;
|
|
486
528
|
}
|
|
487
529
|
//# sourceMappingURL=server.js.map
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/dist/workflow-tools.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import { priceLine } from '@clipwright/core';
|
|
1
2
|
import { workflowToolInputs, WORKFLOW_TOOL_DESCRIPTIONS } from '@clipwright/core/workflows';
|
|
2
3
|
import { formatGetRun, withFailureReport } from './format.js';
|
|
3
4
|
const json = (value) => ({ content: [{ type: 'text', text: JSON.stringify(value) }] });
|
|
4
5
|
const config = (name, title, readOnlyHint) => ({
|
|
5
|
-
title, description: WORKFLOW_TOOL_DESCRIPTIONS[name],
|
|
6
|
+
title, description: [WORKFLOW_TOOL_DESCRIPTIONS[name], priceLine(name)].filter((part) => part !== null).join(' '),
|
|
7
|
+
inputSchema: workflowToolInputs[name],
|
|
6
8
|
annotations: { readOnlyHint, destructiveHint: false },
|
|
7
9
|
});
|
|
8
10
|
export function registerWorkflowTools(server, client) {
|
|
@@ -11,6 +13,7 @@ export function registerWorkflowTools(server, client) {
|
|
|
11
13
|
server.registerTool('prepare_workflow_plan', config('prepare_workflow_plan', 'Create or save a workflow plan', false), async ({ document, plan_id, base_version }) => withFailureReport(async () => json(plan_id === undefined
|
|
12
14
|
? await client.createWorkflowPlan({ document })
|
|
13
15
|
: await client.saveWorkflowPlan(plan_id, { document, base_version: base_version }))));
|
|
16
|
+
server.registerTool('plan_reference_remake', config('plan_reference_remake', 'Compile a reference remake plan', false), async (request) => withFailureReport(async () => json(await client.planReferenceRemake(request))));
|
|
14
17
|
server.registerTool('get_workflow_plan', config('get_workflow_plan', 'Read a workflow plan', true), async ({ plan_id }) => withFailureReport(async () => json(await client.getWorkflowPlan(plan_id))));
|
|
15
18
|
server.registerTool('approve_workflow_plan', config('approve_workflow_plan', 'Approve a workflow revision', false), async ({ plan_id, ...approval }) => withFailureReport(async () => json(await client.approveWorkflowPlan(plan_id, approval))));
|
|
16
19
|
server.registerTool('quote_workflow_plan', config('quote_workflow_plan', 'Quote a workflow run', true), async ({ plan_id }) => withFailureReport(async () => json(await client.quoteWorkflowPlan(plan_id))));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-tools.js","sourceRoot":"","sources":["../src/workflow-tools.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAwB,MAAM,aAAa,CAAC;AAEpF,MAAM,IAAI,GAAG,CAAC,KAAc,EAAmB,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACjH,MAAM,MAAM,GAAG,CAA+C,IAAU,EAAE,KAAa,EAAE,YAAqB,EAAE,EAAE,CAAC,CAAC;IAChH,KAAK,EAAE,WAAW,EAAE,0BAA0B,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,kBAAkB,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"workflow-tools.js","sourceRoot":"","sources":["../src/workflow-tools.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@clipwright/mcp-server",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.35.0",
|
|
4
4
|
"description": "MCP server for Clipwright: generate UGC videos from your coding agent",
|
|
5
5
|
"mcpName": "io.clipwright/mcp",
|
|
6
6
|
"repository": {
|
|
@@ -53,8 +53,8 @@
|
|
|
53
53
|
"dependencies": {
|
|
54
54
|
"@modelcontextprotocol/sdk": "^1.31.0",
|
|
55
55
|
"zod": "^4.6.7",
|
|
56
|
-
"@clipwright/core": "0.
|
|
57
|
-
"@clipwright/sdk": "0.
|
|
56
|
+
"@clipwright/core": "0.35.0",
|
|
57
|
+
"@clipwright/sdk": "0.35.0"
|
|
58
58
|
},
|
|
59
59
|
"devDependencies": {
|
|
60
60
|
"@types/node": "^26.1.1"
|