# showtime (npm · @faviovazquez/showtime-mcp)

Local video studio for your coding agent: scenes, voice, music and captions, on your machine.

- Trust score: 72/100 (medium)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-10-23

## Components

- mcpb · `showtime-0.4.6.mcpb`: 50/100, [markdown](https://verifymcp.io/servers/faviovazquez-showtime/showtime.md), [page](https://verifymcp.io/servers/faviovazquez-showtime/showtime)
- npm · `@faviovazquez/showtime-mcp`: 72/100 (this document), [markdown](https://verifymcp.io/servers/faviovazquez-showtime/faviovazquez-showtime-mcp.md), [page](https://verifymcp.io/servers/faviovazquez-showtime/faviovazquez-showtime-mcp)

## Channel facts

- Registry: `npm`
- Package: `@faviovazquez/showtime-mcp`
- Version: `0.4.6`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-10-23.

- **Supply Chain Security**: 100/100
  - No malware found by supply-chain analysis.
  - No known CVEs affecting this package version or its production dependencies.
  - No install/post-install scripts declared.
  - No production dependencies, so there is no dependency health to assess.
- **Provenance & Transparency**: 48/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 6 days ago).
  - Publishes a security disclosure policy (SECURITY.md).
- **Schema Quality & AI Usability**: 62/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 2695 tokens (~269/item across 10 items; 10 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 24/100
  - Stability check failed: the tool surface changed between 0.2.0 and 0.4.6: 10 tool removals, 0 breaking changes, 2 additions.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 10 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 11 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a current MCP spec version (2026-07-28).

## Install

### How do I install the showtime MCP server?

showtime runs locally as an npm package, launched with npx -y @faviovazquez/showtime-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add faviovazquez-showtime -- npx -y @faviovazquez/showtime-mcp
```

### Cursor

```json
{
  "mcpServers": {
    "faviovazquez-showtime": {
      "command": "npx",
      "args": [
        "-y",
        "@faviovazquez/showtime-mcp"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "faviovazquez-showtime": {
      "command": "npx",
      "args": [
        "-y",
        "@faviovazquez/showtime-mcp"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add faviovazquez-showtime -- npx -y @faviovazquez/showtime-mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "faviovazquez-showtime": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@faviovazquez/showtime-mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add faviovazquez-showtime --command npx --arg -y --arg @faviovazquez/showtime-mcp
```

### Hermes

```yaml
mcp_servers:
  faviovazquez-showtime:
    command: "npx"
    args: ["-y", "@faviovazquez/showtime-mcp"]
```

### Netclaw

```json
{
  "McpServers": {
    "faviovazquez-showtime": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "@faviovazquez/showtime-mcp"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add faviovazquez-showtime -t stdio -c npx -a -y @faviovazquez/showtime-mcp
```

### Other

```json
{
  "mcpServers": {
    "faviovazquez-showtime": {
      "command": "npx",
      "args": [
        "-y",
        "@faviovazquez/showtime-mcp"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-10-22 (score 72, +1)

No change was recorded against any check on this day. Stability & Change Management went from 18 to 21.

### 2026-10-20 (score 71, +1)

No change was recorded against any check on this day. Stability & Change Management went from 11 to 14.

### 2026-10-18 (score 70, +1)

No change was recorded against any check on this day. Stability & Change Management went from 4 to 8.

### 2026-10-16 (score 69, 0)

- [functional] Package version: 0.4.5 → 0.4.6

### 2026-10-15 (score 69, 0)

- [security regression] Tool safety: pass → unverified
- [security regression] Stability: fail → unverified
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified
- [functional] Package version: 0.4.4 → 0.4.5

### 2026-10-14 (score 69, +29)

- [security regression] Stability: unverified → fail
- [security improvement] Injection markers: unverified → pass
- [functional regression] Schema quality: 220 → 269
- [functional improvement] MCP protocol: unverified → pass
- [functional improvement] Tool coverage: unverified → 100
- [functional] Package version: 0.4.3 → 0.4.4

### 2026-10-13 (score 40, 0)

- [functional] Package version: 0.3.5 → 0.4.3
- [functional] Package version: 0.3.5 → 0.4.2

### 2026-10-12 (score 40, +1)

- [functional improvement] Security disclosure: unverified → pass
- [functional] Package version: 0.4.1 → 0.4.2

## MCP tools (10)

### `doctor` (~148 tokens)

Check the showtime installation

Check that showtime is installed and working (ffmpeg, Python, Node, browser, models). Returns PASS/WARN/FAIL per item with a one-line fix. Run this first; if setup is missing it says the exact command to run.

Input parameters:

- `background` (boolean): answer at once with a task id and keep working in the background; the status tool with {"task": id} reports progress and the result. Default false: wait for the result (a host with a short tool-call…
- `full` (boolean): also launch a browser and run a test encode (slower, about 30-60 s). Default false.

### `guide` (~169 tokens)

Read the showtime references

The references by the piece: with topic alone, its Essentials (the rules for that step) and its section list; with section, that one section (a number, a name, or a sub-heading such as a component or a command); with find, every line that mentions all the words. No arguments lists the topics. Read what the step needs, not whole files.

Input parameters:

- `all` (boolean): the whole file (large; prefer a section)
- `find` (string): words to find (every word must be on the line)
- `section` (string): a section number or name, e.g. 3, count-up, showtime check
- `topic` (string): a reference: components, render, story, launch (the launch workflow), data-story, manim ...

### `status` (~151 tokens)

Where a job or a task stands

Where the newest job (or the given one) stands: stage, review mode (quality or lean) and critic round, what is verified vs assumed, and the next command. With task (the id a long tool such as render or transcribe answered with when it ran past the call's time limit): whether it still runs and its latest progress; once it has finished, its full result. Each task call waits up to about 20 s.

Input parameters:

- `job` (string): job folder or job name (default: the newest job under showtime-out/)
- `task` (string): a task id from a long tool call, e.g. render-20260928-141500-a1b2

### `receipt` (~105 tokens)

Write the receipt of a job

Write the job's receipt (receipt.md, receipt.json and one line in share.txt): the request as typed, assumptions, review rounds, full and partial renders, the images showtime made for looking, wall time, and tokens and cost when the agent's session log is known. Anything unknown says "not reported by this agent". Call it last, after delivering.

Input parameters:

- `job` (string): job folder or job name (default: the current or newest job under showtime-out/)

### `new_project` (~500 tokens)

Create a video project

Create a new video project folder from a template (showtime.json + index.html + assets). Edit its index.html to make the video, then call render. Templates: dom (HTML motion graphics, 16:9), short (vertical social), data (animated charts), film (canvas), tutorial (app walkthrough), series (episodes), showreel (a dense 15 s motion reel: shader, particles, 3D, kinetic and glitch type). tone: showreel for a showreel, hype reel or "go all out" brief. mode: quality (the default: every finished video gets the full review, and qa says "review pending" until a critic round has a verdict) or lean (a cheaper draft pass, only when the user asks for a quick draft: no critic round unless publish-bound).

Input parameters:

- `aspect` (string): frame shape at 1080p
- `dir` (string, required): new project folder (must not exist or be empty); relative paths are under the project folder
- `duration` (number): length in seconds; every scene, the poster and the music are rescaled
- `look` (string): look signature for dom, launch, short or data: auto (default: picked away from recent looks), template (the template's own look) or an id (`showtime signature`); a brand kit wins
- `mode` (string): review mode: quality (default, full review with a critic round before delivery) or lean (draft pass; only when the user asks for a quick or cheap draft)
- `size` (string): exact frame size WxH, e.g. 1280x720 (overrides aspect)
- `storyboard` (string): a storyboard from another tool: a Markdown table (Shot | Length | Visual | Narration) or a storyboard.json; one scene per shot (DOM templates; not with duration), its narration as narration.md
- `template` (string, required): template name
- `title` (string): video title (default: the folder name)
- `tone` (string): tone preset (showtime.json "tone", references/tones.md). showreel: a showreel, hype reel or "go all out" brief (flash words allowed, 12-14 shots per 15 s, a ~1 s end card, no shot twice, the showreel…

### `render` (~398 tokens)

Render a project to video

Render a project folder to MP4 (frame-exact, H.264, loudness-normalised audio). Use preview=true first for a fast 720p draft, then qa, then a final render. Output goes to a new showtime-out/<title>-<time>/ job folder (or into job); earlier renders are never overwritten. Reports progress while it runs.

Input parameters:

- `alpha` (string): transparent output: prores (.mov ProRes 4444, large), animation (.mov QuickTime Animation, small for flat graphics) or webm (VP9, web)
- `audio` (boolean): include the soundtrack (default true)
- `background` (boolean): answer at once with a task id and keep working in the background; the status tool with {"task": id} reports progress and the result. Default false: wait for the result (a host with a short tool-call…
- `from` (number): start time in seconds (partial render: with job and a full render there, the span is spliced into a new full final; otherwise a span-A-B.mp4 clip, not the video)
- `job` (string): render into this job folder or job name
- `output` (string): output file (.mp4, .mov or .webm) instead of a new job folder
- `page` (string): page inside the project to render (default index.html), e.g. square.html
- `preview` (boolean): fast draft: <= 720p, quick encode. Default false (final quality).
- `project` (string, required): project folder (contains showtime.json)
- `scale` (number): output scale, e.g. 0.5 (default 1)
- `to` (number): end time in seconds (partial render)
- `workers` (integer): parallel browsers 1-3 (default: automatic)

### `check` (~146 tokens)

Check a project before rendering

Pre-render checks of a project: page errors, determinism, text off-canvas or overlapping, contrast, readability, dead air, fonts. Lists problems with timestamps and fixes, plus a contact sheet path.

Input parameters:

- `background` (boolean): answer at once with a task id and keep working in the background; the status tool with {"task": id} reports progress and the result. Default false: wait for the result (a host with a short tool-call…
- `project` (string, required): project folder
- `samples` (integer): evenly spaced sample times (default 9)
- `strict` (boolean): treat warnings as failures

### `qa` (~248 tokens)

Verify a finished video

Check a rendered video (or a job's latest render): codec and color tags, duration, loudness and true peak, silence, black or frozen stretches, captions, credits, and the platform's limits. PASS/WARN/FAIL with timestamps. Do not call a video ready until qa passes. In quality mode (the default) a job's final also needs a critic round: a "review pending" line names the command (showtime review-pack, then a critic sub-agent on its CRITIC.md) until that round has a verdict; lean mode skips it.

Input parameters:

- `background` (boolean): answer at once with a task id and keep working in the background; the status tool with {"task": id} reports progress and the result. Default false: wait for the result (a host with a short tool-call…
- `platform` (string): where it will be posted
- `project` (string): project folder (default: found from the render report)
- `strict` (boolean): treat warnings as failures
- `video` (string): video file, or a job folder/name (default: the current or newest job)

### `export_html` (~277 tokens)

Export an interactive HTML video

Export a project as one self-contained HTML file that plays offline in any browser (player with scrubber, chapters, keyboard controls; frames drawn live by the same runtime as the MP4).

Input parameters:

- `audio` (string): audio mode (default auto)
- `autoplay_muted` (boolean): start playing muted as soon as it loads (for embedding)
- `background` (boolean): answer at once with a task id and keep working in the background; the status tool with {"task": id} reports progress and the result. Default false: wait for the result (a host with a short tool-call…
- `controls` (string): player chrome: full (default), minimal, or none (for embedding)
- `folder` (boolean): write a folder (index.html + assets/) for hosting instead of one file; output is then a folder
- `job` (string): write into this job folder or job name (with output: that file name inside it)
- `loop` (boolean): loop by default
- `output` (string): output .html (default: a new showtime-out/ job folder)
- `project` (string, required): project folder
- `target` (string): file (default) or artifact (one file under 16 MB for sandboxed hosts)

### `deliver_exports` (~361 tokens)

Export for platforms

Turn one master video into platform files (youtube, x, linkedin, reels, tiktok, shorts, square, github, chat, original, or all): aspect conversion, length and size limits, loudness; or silent README/docs loops (webp, gif, webp-small, gif-small; from/to/width/fps apply to these only). Files go to <video folder>/exports/.

Input parameters:

- `background` (boolean): answer at once with a task id and keep working in the background; the status tool with {"task": id} reports progress and the result. Default false: wait for the result (a host with a short tool-call…
- `fit` (string): aspect conversion (default auto)
- `fps` (number): loops: frame rate
- `from` (number): loops: window start in seconds
- `lufs` (number): loudness for every export (default: the job's target, else -14)
- `max_mb` (number): size cap in MB for original/github/chat/web and the loops (for every target when none of those is listed; YouTube and the other platforms keep full quality otherwise)
- `max_mb_per_target` (object): size caps for single targets, e.g. {"shorts": 19, "original": 20}
- `preview` (boolean): fast, lower-quality encodes to check framing
- `targets` (array, required): platforms, e.g. ["youtube", "reels"]
- `to` (number): loops: window end in seconds
- `video` (string, required): master video, or a job folder/name (its latest final)
- `width` (integer): loops: width in px

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/faviovazquez-showtime/faviovazquez-showtime-mcp#diagnostics

## Score history

- 2026-10-23: 72
- 2026-10-22: 72
- 2026-10-21: 71
- 2026-10-20: 71
- 2026-10-19: 70
- 2026-10-18: 70
- 2026-10-17: 69
- 2026-10-16: 69
- 2026-10-15: 69
- 2026-10-14: 69
- 2026-10-13: 40
- 2026-10-12: 40
- 2026-10-11: 39
- 2026-10-06: 73
- 2026-10-04: 72
- 2026-10-03: 71
- 2026-10-02: 56
- 2026-10-01: 71
- 2026-09-30: 55
- 2026-09-29: 54

## Common questions

### What is the showtime MCP server?

showtime is an MCP server listed in the public MCP registry as io.github.FavioVazquez/showtime. Local video studio for your coding agent: scenes, voice, music and captions, on your machine. This page covers its npm package (@faviovazquez/showtime-mcp).

### Is the showtime MCP server safe to use?

showtime scores 72 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 23 October 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the showtime MCP server expose?

showtime exposes 10 tools: doctor, guide, status, receipt, new_project, and 5 more. Their descriptions and schemas cost roughly 2,503 tokens of context every time the server is loaded.

### Is the showtime MCP server still maintained?

showtime is still listed as active in the MCP registry. We last reached this channel on 23 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What licence is the showtime MCP server under?

showtime declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

## Links

- npm package: https://www.npmjs.com/package/@faviovazquez/showtime-mcp
- Socket report: https://socket.dev/npm/package/@faviovazquez/showtime-mcp
- Repository: https://github.com/FavioVazquez/showtime
- Website: https://faviovazquez.github.io/showtime/
- Changelog RSS feed: https://verifymcp.io/servers/faviovazquez-showtime/faviovazquez-showtime-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/faviovazquez-showtime/faviovazquez-showtime-mcp.json
- HTML version of this page: https://verifymcp.io/servers/faviovazquez-showtime/faviovazquez-showtime-mcp
