@writepanda/mcp 1.249.0 → 1.251.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.
Files changed (2) hide show
  1. package/bin/server.mjs +38 -1
  2. package/package.json +1 -1
package/bin/server.mjs CHANGED
@@ -3770,7 +3770,7 @@ const TOOLS = [
3770
3770
  {
3771
3771
  name: "audio_describe",
3772
3772
  description:
3773
- "Numeric audio evidence for a local audio/video path OR project id/range: loudness, true peak, clipping, silence, speech/music estimate, tempo/beats, attacks, spectral brightness and summary. No song/sound identification. Async: job.wait; first 10 minutes maximum.",
3773
+ "Numeric audio evidence for a local audio/video path OR project id/range: loudness, true peak, clipping, silence, speech/music estimate, tempo/beats, attacks, spectral brightness and summary. A file with no audio track returns hasAudio:false (silent), not an error. No song/sound identification. Async: job.wait; first 10 minutes maximum.",
3774
3774
  inputSchema: {
3775
3775
  type: "object",
3776
3776
  properties: {
@@ -4022,6 +4022,43 @@ const TOOLS = [
4022
4022
  },
4023
4023
  command: "project.close-gap",
4024
4024
  },
4025
+ {
4026
+ name: "project_set_overlay_lane",
4027
+ description:
4028
+ 'Pin media overlays (B-roll, graphics, transitions) or audio tracks to a row of their timeline lane so each keeps its own row, like one track per asset. Without a pin the timeline packs items that do not overlap into the fewest rows. Rows are zero based, top first. Shapes: overlayId + lane; ids + lane (one row for all, or "separate": ids[i] -> row i, in order); or assignments [{id, lane}]. lane null or "auto" unpins. Layout only: nothing moves in time, picture stacking stays zIndex / layer, main-track clips are one sequential track (not lanes). A pin onto a row another PINNED item holds at the same time is rejected; unpinned items make room. Returns timelineLanes {media, audio}: ids per row, the numbering project_close_gap uses ("media:1"); project_read reports the same. One undo step.',
4029
+ inputSchema: {
4030
+ type: "object",
4031
+ properties: {
4032
+ id: { type: "string", description: "Project id (or pass path)." },
4033
+ path: { type: "string", description: "Project file path (or pass id)." },
4034
+ overlayId: { type: "string", description: "One media overlay or audio track id." },
4035
+ ids: {
4036
+ type: "array",
4037
+ items: { type: "string" },
4038
+ description: "Several media overlay / audio track ids, with lane.",
4039
+ },
4040
+ lane: {
4041
+ type: ["number", "string", "null"],
4042
+ description:
4043
+ 'Row 0-31 (top first); null or "auto" unpins; "separate" with ids puts ids[i] on row i.',
4044
+ },
4045
+ assignments: {
4046
+ type: "array",
4047
+ items: {
4048
+ type: "object",
4049
+ properties: {
4050
+ id: { type: "string" },
4051
+ lane: { type: ["number", "string", "null"] },
4052
+ },
4053
+ required: ["id", "lane"],
4054
+ },
4055
+ description: 'Per-item rows, e.g. [{"id": "a", "lane": 0}, {"id": "b", "lane": "auto"}].',
4056
+ },
4057
+ expectedRevision: { type: "number" },
4058
+ },
4059
+ },
4060
+ command: "project.set-overlay-lane",
4061
+ },
4025
4062
 
4026
4063
  {
4027
4064
  name: "project_remove_pause",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@writepanda/mcp",
3
- "version": "1.249.0",
3
+ "version": "1.251.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",