Fleet demo video pipeline — narrated walkthroughs synced to true speech length, with real background music, sound effects, and page transitions (Playwright, speech-mcp, songgeneration-mcp, sfx-mcp, vfx-mcp, FFmpeg)
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio · http counts 8 tools · 0 res
· 0 prompts
permission surface via code analysis
tools
-
demo_vid_generate
-
demo_vid_help
-
demo_vid_list
-
demo_vid_list_pages
-
demo_vid_refine
-
demo_vid_script_draft
-
demo_vid_script_validate
-
demo_vid_shutdown
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 0b6da17 · analyzer v33 · 2d ago
skills & prompt files 6
- agent-rules sandraschi-demo-vid-mcp-0b6da17/.cursorrules
- agent-rules sandraschi-demo-vid-mcp-0b6da17/.github/copilot-instructions.md
- skill sandraschi-demo-vid-mcp-0b6da17/.opencode/skills/session-context/SKILL.md
- agent-rules sandraschi-demo-vid-mcp-0b6da17/.windsurfrules
- agent-rules sandraschi-demo-vid-mcp-0b6da17/AGENTS.md
- agent-rules sandraschi-demo-vid-mcp-0b6da17/CLAUDE.md
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 62
filesystem 15
- fs (weak) sandraschi-demo-vid-mcp-0b6da17/scripts/cua-smoke.py :49
with open(p) as f: - fs sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/app.py :10
from pathlib import Path - fs sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/config.py :3
from pathlib import Path - fs sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/pipeline/composer.py :7
import shutil - fs sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/pipeline/music.py :12
import shutil - fs sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/pipeline/queue.py :10
from pathlib import Path - fs sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/pipeline/recorder.py :11
from pathlib import Path - fs sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/pipeline/script.py :4
from pathlib import Path - fs sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/pipeline/sfx.py :11
from pathlib import Path - fs sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/pipeline/vfx.py :13
from pathlib import Path - fs sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/pipeline/voiceover.py :6
from pathlib import Path - fs sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/tools/generate.py :8
from pathlib import Path
show 3 more
- fs sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/tools/list.py :5
from pathlib import Path - fs sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/tools/refine.py :6
from pathlib import Path - fs (weak) sandraschi-demo-vid-mcp-0b6da17/tests/test_pipeline.py :6
from pathlib import Path
shell / exec 6
- shell (weak) sandraschi-demo-vid-mcp-0b6da17/scripts/cua-smoke.py :31
import subprocess - shell sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/pipeline/composer.py :8
import subprocess - shell sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/pipeline/recorder.py :9
import subprocess - shell sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/pipeline/vfx.py :12
import subprocess - shell sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/tools/generate.py :7
import subprocess - shell (weak) sandraschi-demo-vid-mcp-0b6da17/tests/test_pipeline.py :5
import subprocess
network 6
- net (weak) sandraschi-demo-vid-mcp-0b6da17/scripts/cua-smoke.py :34
import urllib.error - net sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/app.py :12
import httpx - net sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/pipeline/music.py :15
import httpx - net sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/pipeline/voiceover.py :8
import httpx - net sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/tools/generate.py :10
from urllib.parse import urlparse - net (weak) sandraschi-demo-vid-mcp-0b6da17/tests/test_e2e.py :3
import socket
tool registrations 8
- demo_vid_generate sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/tools/generate.py :175
- demo_vid_help sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/tools/help.py :6
- demo_vid_list sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/tools/list.py :14
- demo_vid_refine sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/tools/refine.py :16
- demo_vid_script_draft sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/tools/script_tools.py :13
- demo_vid_list_pages sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/tools/script_tools.py :43
- demo_vid_script_validate sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/tools/script_tools.py :68
- demo_vid_shutdown sandraschi-demo-vid-mcp-0b6da17/src/demo_vid_mcp/tools/shutdown.py :12
declared dependencies 17
- fastmcp@>=3.4.4,<4
- prefab-ui@>=0.14.0
- httpx@>=0.27.0
- pyyaml@>=6.0
- fastapi@>=0.115.0
- starlette@>=1.0.1
- uvicorn@>=0.29.0
- pydub@>=0.25.1
- audioop-lts@>=0.2.1
- python-dotenv@>=1.0.1
- tauri-build@2
- tauri@2
show 5 more
- tauri-plugin-shell@2
- tauri-plugin-fs@2
- tauri-plugin-process@2
- serde@1
- serde_json@1