Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
demo_vid_generateA

Generate a demo video for a fleet repo.

Runs the full pipeline: validate script → voiceover (speech-mcp) → record (Playwright) → compose (FFmpeg). Stages run in parallel where possible. Output saved to data/videos/. theme="light" records the target webapp with its light-mode toggle forced on (bright demo); default "dark" matches fleet identity.

Return Format

{"success": bool, "message": str, "video_path": str | None, "stages": {...}}

Examples

await demo_vid_generate(repo="chitchat") await demo_vid_generate(repo="chitchat", theme="light") await demo_vid_generate(repo="chitchat", base_url="http://127.0.0.1:10975")

demo_vid_helpA

List all available demo-vid-mcp tools and their purpose.

Return Format

{"success": bool, "tools": [{"name": str, "description": str}], "message": str}

demo_vid_listB

List produced demo videos with metadata.

Scans the local data/videos/ directory for .mp4 files and returns file name, size, and creation date for each.

Return Format

{"success": bool, "videos": [{"name": str, "repo": str, "size_kb": int, "created": str}], "count": int}

Examples

await demo_vid_list() await demo_vid_list(repo="chitchat")

demo_vid_refineA

Re-generate a video with timing or narration adjustments.

[RATIONALE] This tool is a stub — refinement requires LLM-driven script mutation which is not yet implemented. It returns a helpful message pointing to the working alternative (demo_vid_generate with an updated script).

Return Format

{"success": False, "error": str, "suggestions": list}

Examples

await demo_vid_refine(video_name="chitchat-final", feedback="Make step 2 narration longer")

demo_vid_script_draftA

Draft a default narration script for a repo.

Generates a placeholder YAML script that can be edited and passed to demo_vid_generate.

Return Format

{"success": bool, "script": dict, "message": str}

Examples

await demo_vid_script_draft(repo="chitchat")

demo_vid_script_validateA

Validate a narration script for structure and timing.

Checks that the script has required fields ('steps'), each step has an 'action',
and timing values are reasonable.

## Return Format
{"success": bool, "message": str, "errors": list | None}

## Examples
await demo_vid_script_validate(script_yaml="title: Test

duration_target: 30 steps:

  • action: goto url: / wait: 2 ")

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4/5.0

Scored across 6 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: help lists tools, generate creates videos, list shows existing videos, refine is for adjustments (stub), script_draft creates scripts, script_validate checks them. No overlap or ambiguity.

Naming Consistency5/5

All tools follow a consistent 'demo_vid_<verb>' pattern (help, generate, list, refine) with compound names for script operations (script_draft, script_validate) adhering to the same convention. No mixing of styles.

Tool Count5/5

With 6 tools covering help, generation, listing, refinement, and script drafting/validation, the count is well-scoped for a focused demo video generation server. No unnecessary tools, and each serves a clear role.

Completeness4/5

Core operations are covered: create (generate), read (list), and script management (draft/validate). However, the refine tool is a stub (non-functional), effectively missing a working update operation, and there is no delete tool. This leaves minor gaps but the main workflow is intact.

Maintenance

ActivityActive
ResponsivenessNo issues