@writepanda/mcp 1.99.0 → 1.100.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/bin/server.mjs +42 -6
- package/package.json +1 -1
package/bin/server.mjs
CHANGED
|
@@ -229,6 +229,40 @@ const TOOLS = [
|
|
|
229
229
|
inputSchema: { type: "object", properties: {} },
|
|
230
230
|
command: "system.isWhisperModelDownloaded",
|
|
231
231
|
},
|
|
232
|
+
{
|
|
233
|
+
name: "system_get_narration_engine",
|
|
234
|
+
description:
|
|
235
|
+
"Read the active narration (TTS) engine for the current workspace. Returns { engine } — 'local-kokoro' (default; Kokoro-82M on-device, English, no key/cloud) or 'replicate' (cloud TTS, needs the user's Replicate key). Use before recommending a switch or when disclosing which engine narration uses.",
|
|
236
|
+
inputSchema: { type: "object", properties: {} },
|
|
237
|
+
command: "system.getNarrationEngine",
|
|
238
|
+
},
|
|
239
|
+
{
|
|
240
|
+
name: "system_set_narration_engine",
|
|
241
|
+
description:
|
|
242
|
+
"Set the DEFAULT narration engine for the current workspace. Pass `engine` = 'local-kokoro' (on-device English, no key) or 'replicate' (cloud, needs the user's Replicate key). Individual media_generate_narration calls can still override this via their `model` arg. Switching to local triggers a one-time ~330 MB model download on first use — call system_is_kokoro_model_downloaded to check.",
|
|
243
|
+
inputSchema: {
|
|
244
|
+
type: "object",
|
|
245
|
+
properties: {
|
|
246
|
+
engine: { type: "string", description: "'local-kokoro' | 'replicate'." },
|
|
247
|
+
},
|
|
248
|
+
required: ["engine"],
|
|
249
|
+
},
|
|
250
|
+
command: "system.setNarrationEngine",
|
|
251
|
+
},
|
|
252
|
+
{
|
|
253
|
+
name: "system_is_kokoro_model_downloaded",
|
|
254
|
+
description:
|
|
255
|
+
"Check whether the local Kokoro-82M TTS model (English on-device narration) has been downloaded. Returns { downloaded: boolean }. The model (~330 MB) auto-downloads on first local narration; calling this first lets you surface the download instead of a long first-run wait.",
|
|
256
|
+
inputSchema: { type: "object", properties: {} },
|
|
257
|
+
command: "system.isKokoroModelDownloaded",
|
|
258
|
+
},
|
|
259
|
+
{
|
|
260
|
+
name: "system_download_kokoro_model",
|
|
261
|
+
description:
|
|
262
|
+
"Pre-download the local Kokoro-82M TTS model + voices (~330 MB) now so the first narration doesn't pay the wait. Idempotent; returns { downloaded: true }. Optional — narration also auto-downloads on first use.",
|
|
263
|
+
inputSchema: { type: "object", properties: {} },
|
|
264
|
+
command: "system.downloadKokoroModel",
|
|
265
|
+
},
|
|
232
266
|
|
|
233
267
|
// ── workspaces (v1.19) ──────────────────────────────────────────
|
|
234
268
|
// Multi-workspace isolation: each workspace has its own projects,
|
|
@@ -2432,27 +2466,29 @@ const TOOLS = [
|
|
|
2432
2466
|
{
|
|
2433
2467
|
name: "media_generate_narration",
|
|
2434
2468
|
description:
|
|
2435
|
-
"Generate a voiceover / narration audio clip
|
|
2469
|
+
"Generate a voiceover / narration audio clip. Project-agnostic; writes audio to <userData>/narration/ and returns { audioPath, durationMs, model, voice, predictionId }. Canonical workflow: media_generate_narration → project_add_audio (place at startMs, pass the returned durationMs so the overlay is sized to the speech). DEFAULT is the LOCAL, on-device Kokoro engine (English) — no API key, no cloud, runs on the user's machine; the model auto-downloads (~330 MB) on first use. Kokoro voices (pass in `voice`): af_heart (default), af_bella, am_michael, bf_emma, bm_george, etc. (a*=American, b*=British; f=female, m=male). To use CLOUD TTS instead (more voices/languages, needs the user's Replicate key), set `model` to a Replicate model: 'elevenlabs-v3' (most expressive — embed inline tags like [excited]/[whispers]) | 'gemini-flash-tts' (30 voices, multilingual, 'style' sets tone) | 'minimax-turbo' (fast, 'style' maps to an emotion, 'speed' 0.5-2). Cloud voices — gemini Kore/Puck/Charon; minimax Friendly_Person/Wise_Woman. Omit `model` to honour the workspace default (system_get_narration_engine).",
|
|
2436
2470
|
inputSchema: {
|
|
2437
2471
|
type: "object",
|
|
2438
2472
|
properties: {
|
|
2439
2473
|
text: {
|
|
2440
2474
|
type: "string",
|
|
2441
2475
|
description:
|
|
2442
|
-
"The script to speak. For elevenlabs-v3 you can embed delivery tags inline, e.g. 'Welcome [excited] to the future of editing.'",
|
|
2476
|
+
"The script to speak. For the cloud elevenlabs-v3 model you can embed delivery tags inline, e.g. 'Welcome [excited] to the future of editing.' (Local Kokoro ignores such tags.)",
|
|
2443
2477
|
},
|
|
2444
2478
|
model: {
|
|
2445
2479
|
type: "string",
|
|
2446
|
-
description:
|
|
2480
|
+
description:
|
|
2481
|
+
"Engine/model selector. Omit for the workspace default (local Kokoro). 'kokoro-local' forces on-device English. Cloud (needs Replicate key): 'elevenlabs-v3' | 'gemini-flash-tts' | 'minimax-turbo'.",
|
|
2447
2482
|
},
|
|
2448
2483
|
voice: {
|
|
2449
2484
|
type: "string",
|
|
2450
2485
|
description:
|
|
2451
|
-
"Voice
|
|
2486
|
+
"Voice for the chosen engine. Local Kokoro: af_heart/af_bella/am_michael/bf_emma/bm_george/... Cloud: gemini Kore/Puck/...; minimax Friendly_Person/... Omit for the engine's default voice.",
|
|
2452
2487
|
},
|
|
2453
2488
|
language: {
|
|
2454
2489
|
type: "string",
|
|
2455
|
-
description:
|
|
2490
|
+
description:
|
|
2491
|
+
"Optional BCP-47 language hint for the cloud models, e.g. 'en-US', 'es-ES'. Local Kokoro is English-only and ignores this.",
|
|
2456
2492
|
},
|
|
2457
2493
|
style: {
|
|
2458
2494
|
type: "string",
|
|
@@ -3054,7 +3090,7 @@ const TOOLS = [
|
|
|
3054
3090
|
const server = new Server(
|
|
3055
3091
|
{
|
|
3056
3092
|
name: "pandastudio",
|
|
3057
|
-
version: "1.
|
|
3093
|
+
version: "1.73.0",
|
|
3058
3094
|
},
|
|
3059
3095
|
{
|
|
3060
3096
|
capabilities: {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@writepanda/mcp",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.100.0",
|
|
4
4
|
"description": "Model Context Protocol server for PandaStudio. Exposes the desktop video editor's automation surface to Cursor, Continue, Cline, Claude Desktop, and any MCP-compliant client.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"pandastudio",
|