@starreel/mcp 0.1.68 → 0.1.69

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/SKILL.md CHANGED
@@ -509,6 +509,8 @@ cost is lip sync: the picture was acted to the original audio. On shots where
509
509
  the mouth isn't readable (back turned, wide, off-screen) that is invisible; on
510
510
  sustained close-ups, regenerate instead. Reach for `regenerate_shot_video` when
511
511
  the shot is a close-up, or when the picture itself is also wrong.
512
+ `repair_episode_dialogue` runs in the background — poll it with
513
+ `get_dialogue_repair_status`.
512
514
  Either way, `compose_episode` afterwards — the final cut still holds the old audio until you do.
513
515
 
514
516
  Four distinct causes; they need **opposite** fixes, so identify the family first.
@@ -1043,6 +1043,11 @@ export function registerProduceTools(server, client) {
1043
1043
  ...(only_flagged === undefined ? {} : { only_flagged }),
1044
1044
  ...(force ? { force: true } : {}),
1045
1045
  })));
1046
+ server.tool('get_dialogue_repair_status', '查台词修复的进度(免费)。repair_episode_dialogue 是后台异步串行跑的,用这个轮询。'
1047
+ + '\n★这个工具此前**不存在**,而 repair_episode_dialogue 的描述里却写着「进度用 '
1048
+ + 'dialogue-repair-status 查」——第三方照着找会扑空(2026-09-21 由 MCP 覆盖闸抓出)。', { episode_id: z.number().int().positive() }, async ({ episode_id }) => jsonResult(await client.produceGet(`/episodes/${episode_id}/dialogue-repair-status`)));
1049
+ server.tool('get_shot_name_card', '读这一镜的**人物名片**现值(免费):名字、头衔、显示位置那些。'
1050
+ + '\n★改之前先读一遍——set_shot_name_card 是**整体覆盖**,不读就改会把没打算动的字段清掉。', { storyboard_id: z.number().int().positive() }, async ({ storyboard_id }) => jsonResult(await client.produceGet(`/storyboards/${storyboard_id}/name-card`)));
1046
1051
  server.tool('generate_bgm', '给整集生成/更换 AI 配乐(按情绪弧线)。后台异步,按用量后付不欠费。返回情绪弧线段数与预估耗时;' +
1047
1052
  '用 get_bgm_status 轮询生成进度。★配乐生成/改动**不会自动进已有成片**——完成后必须重新 ' +
1048
1053
  'compose_episode(免费)才能听到;get_final_cut 的 bgm_stale=true 就是在提示这一步。别用 re-render(吃旧时间线,不含新配乐)。\n' +
package/openapi.json CHANGED
@@ -2,8 +2,8 @@
2
2
  "openapi": "3.1.0",
3
3
  "info": {
4
4
  "title": "StarReel Production API",
5
- "version": "0.1.68",
6
- "description": "Turn a script into a finished, downloadable short-drama episode over REST.\n\nPipeline: script → AI rewrite → cast/scenes/props extraction → portraits & sheets → storyboards → keyframes → video shots → TTS → final cut (.mp4).\n\n**Billing is prepaid and agent-safe**: big-ticket stages are quote-then-generate (`quote_*` returns a `quote_id`; for video, quote == actual charge). Insufficient balance returns 402 — nothing half-runs and the account never goes negative.\n\nAuth: exchange your API key at `POST /v1/agent/token` for a 15-minute bearer token.\n\nGenerated from the @starreel/mcp v0.1.68 tool surface (operationIds match MCP tool names 1:1)."
5
+ "version": "0.1.69",
6
+ "description": "Turn a script into a finished, downloadable short-drama episode over REST.\n\nPipeline: script → AI rewrite → cast/scenes/props extraction → portraits & sheets → storyboards → keyframes → video shots → TTS → final cut (.mp4).\n\n**Billing is prepaid and agent-safe**: big-ticket stages are quote-then-generate (`quote_*` returns a `quote_id`; for video, quote == actual charge). Insufficient balance returns 402 — nothing half-runs and the account never goes negative.\n\nAuth: exchange your API key at `POST /v1/agent/token` for a 15-minute bearer token.\n\nGenerated from the @starreel/mcp v0.1.69 tool surface (operationIds match MCP tool names 1:1)."
7
7
  },
8
8
  "servers": [
9
9
  {
@@ -3364,6 +3364,53 @@
3364
3364
  }
3365
3365
  }
3366
3366
  },
3367
+ "/episodes/{episode_id}/dialogue-repair-status": {
3368
+ "get": {
3369
+ "operationId": "get_dialogue_repair_status",
3370
+ "summary": "查台词修复的进度(免费)",
3371
+ "description": "查台词修复的进度(免费)。repair_episode_dialogue 是后台异步串行跑的,用这个轮询。\n★这个工具此前**不存在**,而 repair_episode_dialogue 的描述里却写着「进度用 dialogue-repair-status 查」——第三方照着找会扑空(2026-09-21 由 MCP 覆盖闸抓出)。",
3372
+ "tags": [
3373
+ "episodes"
3374
+ ],
3375
+ "parameters": [
3376
+ {
3377
+ "name": "episode_id",
3378
+ "in": "path",
3379
+ "required": true,
3380
+ "schema": {
3381
+ "type": "integer",
3382
+ "exclusiveMinimum": 0
3383
+ }
3384
+ }
3385
+ ],
3386
+ "responses": {
3387
+ "200": {
3388
+ "description": "StarReel envelope",
3389
+ "content": {
3390
+ "application/json": {
3391
+ "schema": {
3392
+ "type": "object",
3393
+ "properties": {
3394
+ "code": {
3395
+ "type": "integer"
3396
+ },
3397
+ "message": {
3398
+ "type": "string"
3399
+ },
3400
+ "data": {
3401
+ "description": "Operation result payload"
3402
+ }
3403
+ }
3404
+ }
3405
+ }
3406
+ }
3407
+ },
3408
+ "402": {
3409
+ "description": "Insufficient prepaid balance (never overdrafts); response carries `needed` points"
3410
+ }
3411
+ }
3412
+ }
3413
+ },
3367
3414
  "/episodes/{episode_id}/effects": {
3368
3415
  "post": {
3369
3416
  "operationId": "generate_effects",
@@ -8595,6 +8642,51 @@
8595
8642
  }
8596
8643
  },
8597
8644
  "/storyboards/{storyboard_id}/name-card": {
8645
+ "get": {
8646
+ "operationId": "get_shot_name_card",
8647
+ "summary": "读这一镜的**人物名片**现值(免费):名字、头衔、显示位置那些",
8648
+ "description": "读这一镜的**人物名片**现值(免费):名字、头衔、显示位置那些。\n★改之前先读一遍——set_shot_name_card 是**整体覆盖**,不读就改会把没打算动的字段清掉。",
8649
+ "tags": [
8650
+ "storyboards"
8651
+ ],
8652
+ "parameters": [
8653
+ {
8654
+ "name": "storyboard_id",
8655
+ "in": "path",
8656
+ "required": true,
8657
+ "schema": {
8658
+ "type": "integer",
8659
+ "exclusiveMinimum": 0
8660
+ }
8661
+ }
8662
+ ],
8663
+ "responses": {
8664
+ "200": {
8665
+ "description": "StarReel envelope",
8666
+ "content": {
8667
+ "application/json": {
8668
+ "schema": {
8669
+ "type": "object",
8670
+ "properties": {
8671
+ "code": {
8672
+ "type": "integer"
8673
+ },
8674
+ "message": {
8675
+ "type": "string"
8676
+ },
8677
+ "data": {
8678
+ "description": "Operation result payload"
8679
+ }
8680
+ }
8681
+ }
8682
+ }
8683
+ }
8684
+ },
8685
+ "402": {
8686
+ "description": "Insufficient prepaid balance (never overdrafts); response carries `needed` points"
8687
+ }
8688
+ }
8689
+ },
8598
8690
  "put": {
8599
8691
  "operationId": "set_shot_name_card",
8600
8692
  "summary": "给某一镜加/改/清「版式字卡」(终拼时烧进成片,含预览一致的书法字体与朱红印章)",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@starreel/mcp",
3
- "version": "0.1.68",
3
+ "version": "0.1.69",
4
4
  "mcpName": "ai.starreel/starreel",
5
5
  "description": "StarReel MCP server — drive the AI short-drama production pipeline (script → storyboards → frames → video → final cut) from Claude, Cursor, or any MCP client",
6
6
  "license": "MIT",
package/server.json CHANGED
@@ -2,13 +2,13 @@
2
2
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-09-29/server.schema.json",
3
3
  "name": "ai.starreel/starreel",
4
4
  "description": "Turn a script into a finished, downloadable short-drama episode — via MCP or REST.",
5
- "version": "0.1.68",
5
+ "version": "0.1.69",
6
6
  "websiteUrl": "https://starreel.ai",
7
7
  "packages": [
8
8
  {
9
9
  "registryType": "npm",
10
10
  "identifier": "@starreel/mcp",
11
- "version": "0.1.68",
11
+ "version": "0.1.69",
12
12
  "transport": {
13
13
  "type": "stdio"
14
14
  },