pastorsimon1798/mcp-video
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| video_infoA | Get metadata about a video file: duration, resolution, codec, fps, size. Args: input_path: Absolute path to the video file. |
| video_trimA | Trim a video clip by start time and duration. Args: input_path: Absolute path to the input video. start: Start timestamp (e.g. '00:02:15' or seconds as string like '10.5'). duration: Duration to keep (e.g. '00:00:30' or '30'). Exclusive with end. end: End timestamp. Exclusive with duration. output_path: Where to save the trimmed video. Auto-generated if omitted. accurate: Frame-accurate seeking (slower). Default False uses fast input seeking which may land on the nearest keyframe. |
| video_mergeA | Concatenate two or more existing video clips into one rendered output file. The input clips are read only and kept unchanged; the tool creates an auto-named output or writes to output_path, using FFmpeg and reporting transition or media-mismatch validation errors. |
| video_add_textA | Overlay text on a video (titles, captions, watermarks). Args: input_path: Absolute path to the input video. text: Text to overlay. position: Position on screen. Named (top-left, top-center, etc.), pixel" " {"x": 100, "y": 50}, or percentage {"x_pct": 0.5, "y_pct": 0.5}. font: Path to font file. Uses system default if omitted. size: Font size in pixels. color: Text color (CSS color name or hex). shadow: Add text shadow for readability. start_time: When the text appears (seconds). Null = always visible. duration: How long text is visible (seconds). Requires start_time. output_path: Where to save the output. Auto-generated if omitted. crf: Override CRF value (0-51, lower = better quality). Default 23. preset: Override FFmpeg encoding preset (ultrafast, fast, medium, slow, veryslow). |
| video_add_textsA | Overlay multiple text elements on a video in a single FFmpeg pass. Automatically detects overlapping text and distributes vertically stacked texts when they share the same named position. Args: input_path: Absolute path to the input video. texts: List of text overlay dicts. Each dict may contain: - text (str, required) - position (str|dict, default "center") - font (str, optional) - size (int, default 48) - color (str, default "white") - shadow (bool, default True) - start_time (float, optional) - duration (float, optional) output_path: Where to save the output. Auto-generated if omitted. crf: Override CRF value (0-51, lower = better quality). Default 23. preset: Override FFmpeg encoding preset (ultrafast, fast, medium, slow, veryslow). auto_layout: Automatically distribute vertically stacked texts at the same named position. Default True. |
| video_add_audioA | Add, replace, or mix an audio file into an existing video and render a new output file. The source video and audio are read only; output_path is created or overwritten. Controls volume, fade-in, fade-out, mix/replace mode, and optional start time. |
| video_resizeB | Resize a video or change its aspect ratio. Args: input_path: Absolute path to the input video. width: Target width in pixels. Use with height. height: Target height in pixels. Use with width. aspect_ratio: Preset aspect ratio (16:9, 9:16, 1:1, 4:3, 4:5, 21:9). Overrides width/height. quality: Quality preset (low, medium, high, ultra). output_path: Where to save the output. Auto-generated if omitted. |
| video_convertA | Transcode an existing video into a different container or codec format such as mp4, webm, gif, or mov. Use this for format conversion; use video_export for final delivery presets. The input video is read only and a new output file is rendered. |
| video_speedA | Render a new video with playback speed changed while keeping the source video unchanged. Values below 1.0 create slow motion and values above 1.0 create fast motion; the factor is validated against configured speed limits. |
| search_toolsA | Search registered MCP tools by keyword. Use this when you need to find the right tool for a task without reading all 91 tool descriptions. Returns matching tools with their names, descriptions, and required parameters. Args: query: Search term — e.g. "blur", "resize", "subtitle", "audio", "trim". |
| video_thumbnailB | Extract a single frame (thumbnail / frame grab) from a video. Args: input_path: Absolute path to the input video. timestamp: Time in seconds to extract frame. Defaults to 10% of video duration. output_path: Where to save the frame image. Auto-generated if omitted. |
| video_previewA | Generate a fast low-resolution preview for quick review. Args: input_path: Absolute path to the input video. output_path: Where to save the preview. Auto-generated if omitted. scale_factor: Downscale factor (4 = 1/4 resolution). |
| video_storyboardA | Extract key frames and create a storyboard grid for human review. Args: input_path: Absolute path to the input video. output_dir: Directory to save frames. Auto-generated if omitted. frame_count: Number of key frames to extract. |
| video_subtitlesA | Burn subtitles (SRT/VTT) into a video. Args: input_path: Absolute path to the input video. subtitle_path: Absolute path to the subtitle file (.srt or .vtt). output_path: Where to save the output. Auto-generated if omitted. |
| video_watermarkA | Overlay an image watermark onto an existing video and render a new output file. The video and watermark image are read only; output_path is created or overwritten. Supports named, pixel, and percentage positions plus opacity, margin, CRF, and preset controls. |
| video_exportA | Re-encode an existing video for final delivery using a quality preset and output format. Use this for publishing-ready renders; use video_convert when the main goal is container/codec conversion. The source video is read only and a new output file is produced. |
| video_cropA | Crop an existing video to a rectangular region or centered percentage crop and render a new output file. The source video is read only; x/y default to a centered crop when omitted. |
| video_rotateA | Rotate and/or flip an existing video and render a new output file. Supports right-angle rotations plus horizontal and vertical flips; the input video is not modified. |
| video_fadeA | Render fade-in and/or fade-out effects onto an existing video without modifying the source file. Use fade_in for a fade from black at the start and fade_out for a fade to black at the end; output_path is created or overwritten. |
| video_editA | Execute a full timeline-based edit from a JSON specification. The timeline JSON describes video clips, audio tracks, text overlays, image overlays, transitions, and export settings in a single operation. Image overlays are applied in a single filtergraph pass (no multiple re-encodes). Args: timeline: JSON object with keys: width, height, tracks (video/audio/text/image), export. Can also be a JSON string or a path to a .json file. Image overlays in tracks: {"type": "image", "images": [{"source": "logo.png", "position": "top-right", "width": 200, "opacity": 0.8}]} output_path: Where to save the final video. Auto-generated if omitted. |
| video_template_previewA | Preview what a video template would do before rendering. Analyzes the template and returns a list of operations, estimated output duration, resolution, and file size — without actually processing any video. Args: template: Template name (tiktok, youtube-shorts, instagram-reel, youtube, instagram-post). input_path: Absolute path to the input video (optional; used for duration probing). duration: Override the estimated duration in seconds. caption: Caption text for TikTok / Instagram Reel / Instagram Post templates. title: Title text for YouTube Shorts / YouTube video templates. music_path: Absolute path to background music file. outro_path: Absolute path to outro video file (YouTube template only). |
| video_extract_audioA | Extract the audio track from a video file. Args: input_path: Absolute path to the input video. output_path: Where to save the audio file. Auto-generated if omitted. format: Audio format (mp3, aac, wav, ogg, flac). |
| video_filterB | Apply a visual filter to a video. Common presets: - blur: params={"radius": 5, "strength": 1} - color_preset: params={"preset": "warm"} (warm, cool, vintage, cinematic, noir) Args: input_path: Absolute path to the input video. filter_type: Filter type (blur, sharpen, brightness, contrast, saturation," " grayscale, sepia, invert, vignette, color_preset, denoise," " deinterlace, ken_burns, reverb, compressor, pitch_shift," " noise_reduction). params: Optional filter parameters (e.g. radius for blur, preset for color_preset). output_path: Where to save the output. Auto-generated if omitted. crf: Override CRF value (0-51, lower = better quality). Default 23. preset: Override FFmpeg encoding preset (ultrafast, fast, medium, slow, veryslow). |
| video_luma_keyA | Mask out dark regions based on luminance (brightness). Args: input_path: Absolute path to the input video. threshold: Luminance threshold (0.0-1.0). Pixels darker than this become transparent. output_path: Where to save the output. Auto-generated if omitted. |
| video_shape_maskA | Apply a geometric shape mask to a video. Args: input_path: Absolute path to the input video. shape: Shape to use — "circle", "rounded_rect", or "oval". output_path: Where to save the output. Auto-generated if omitted. feather: Feather radius in pixels (0 = sharp edges). |
| video_hls_segmentB | Segment a video into HLS (HTTP Live Streaming) format. Args: input_path: Absolute path to the input video. output_dir: Directory to save segments. Auto-generated if omitted. segment_duration: Target segment duration in seconds (default 4). playlist_name: Name of the master playlist file. qualities: List of quality levels (e.g. ["low", "medium", "high"]). |
| video_reverseA | Reverse video and audio playback so it plays backwards. Args: input_path: Absolute path to the input video. output_path: Where to save the output. Auto-generated if omitted. |
| video_chroma_keyB | Remove a solid color background (green screen / chroma key). Args: input_path: Absolute path to the input video. color: Color to make transparent in hex format (default green: 0x00FF00). similarity: How similar colors need to be to be keyed out (0.0-1.0, default 0.01). blend: How much to blend the keyed color (default 0.0). output_path: Where to save the output. Auto-generated if omitted. |
| video_normalize_audioA | Normalize audio loudness to a target LUFS level. Common presets: -16 (YouTube), -23 (EBU R128/broadcast), -14 (Apple/Spotify). Args: input_path: Absolute path to the input video. target_lufs: Target integrated loudness in LUFS (default -16 for YouTube). output_path: Where to save the output. Auto-generated if omitted. |
| video_overlayA | Picture-in-picture: overlay a video on top of another. Args: background_path: Absolute path to the background video. overlay_path: Absolute path to the overlay video. position: Position on screen. Named (top-left, etc.), pixel" " {"x": 100, "y": 50}, or percentage {"x_pct": 0.5, "y_pct": 0.5}. width: Width to scale the overlay to (pixels). height: Height to scale the overlay to (pixels). opacity: Overlay opacity (0.0 to 1.0). start_time: When the overlay appears (seconds). duration: How long the overlay is visible (seconds). output_path: Where to save the output. Auto-generated if omitted. crf: Override CRF value (0-51, lower = better quality). Default 23. preset: Override FFmpeg encoding preset (ultrafast, fast, medium, slow, veryslow). |
| video_split_screenA | Place two videos side by side or top/bottom. Args: left_path: Absolute path to the first video. right_path: Absolute path to the second video. layout: Layout type (side-by-side or top-bottom). output_path: Where to save the output. Auto-generated if omitted. |
| video_detect_scenesB | Detect scene changes in a video. Args: input_path: Absolute path to the input video. threshold: Scene detection sensitivity (0.0-1.0, lower = more sensitive, default 0.3). min_scene_duration: Minimum scene duration in seconds (default 1.0). |
| video_create_from_imagesA | Create a video from a sequence of images. Args: images: List of absolute paths to image files (in order). output_path: Where to save the output video. Auto-generated if omitted. fps: Frames per second for the output video (default 30.0). |
| video_export_framesA | Export frames from a video as individual images. Args: input_path: Absolute path to the input video. output_dir: Directory for extracted frames. Auto-generated if omitted. fps: Frames per second to extract (1.0 = 1 frame per second, default 1.0). format: Output image format (jpg or png, default jpg). |
| video_generate_subtitlesC | Generate SRT subtitles from text entries and optionally burn into video. Args: entries: List of subtitle entries with keys: start (float), end (float), text (str). input_path: Absolute path to the input video. burn: If True, burn subtitles into the video (default False). |
| video_compare_qualityA | Compare video quality between original and processed versions. Args: original_path: Absolute path to the original/reference video. distorted_path: Absolute path to the processed/distorted video. metrics: Metrics to compute (default: ['psnr', 'ssim']). |
| video_read_metadataB | Read metadata tags from a video/audio file. Args: input_path: Absolute path to the video or audio file. |
| video_write_metadataA | Write metadata tags to a video/audio file. Args: input_path: Absolute path to the input file. metadata: Dict of tag key-value pairs (e.g. {'title': 'My Video', 'artist': 'Me'}). output_path: Where to save the output. Auto-generated if omitted. |
| video_stabilizeA | Stabilize a shaky video using motion vector analysis. Args: input_path: Absolute path to the input video. smoothing: Smoothing strength (default 15, higher = more stable). zooming: Zoom percentage to avoid black borders (default 0). output_path: Where to save the output. Auto-generated if omitted. |
| video_apply_maskA | Apply an image mask to a video with edge feathering. Args: input_path: Absolute path to the input video. mask_path: Absolute path to the mask image (white = visible, black = transparent). feather: Feather/blur amount at mask edges in pixels (default 5). output_path: Where to save the output. Auto-generated if omitted. |
| video_audio_waveformA | Extract audio waveform data (peaks and silence regions). Args: input_path: Absolute path to the input video/audio file. bins: Number of time segments to analyze (default 50). |
| video_batchB | Apply the same operation to multiple video files. Args: inputs: List of absolute paths to input video files. operation: Operation (trim, resize, convert, filter, blur, color_grade," " watermark, speed, fade, normalize_audio). params: Parameters for the operation. output_dir: Directory for output files. Auto-generated if omitted. |
| video_cleanupA | Delete intermediate video files after a workflow. Useful for multi-step pipelines that leave temporary outputs.
Files in Args: files: List of absolute paths to delete. keep: List of absolute paths to preserve (optional). |
| video_composite_layersA | Composite ordered image/video layers from a JSON spec. Supports normal alpha compositing, opacity, x/y positioning, transform scale/width/height, timing windows, optional mask/matte alpha sources, video/image/solid layers, and a deterministic layer-plan receipt. Non-normal blend modes, rotation, and per-layer effect routing are deliberately deferred until they can stay preflightable. Args: spec_path: Path to a composite-layers JSON spec. output_path: Optional destination media path. save_layer_plan: Optional JSON path for the resolved layer-plan receipt. dry_run: Validate and emit the layer plan without rendering media. |
| image_extract_colorsA | Extract dominant colors from an image or video frame. Uses K-means clustering to find the most prominent colors. Returns hex codes, RGB values, CSS color names, and percentage coverage. Args: image_path: Absolute path to the image or video file. If video, extracts a representative frame. n_colors: Number of dominant colors to extract (1-20, default 5). |
| image_generate_paletteA | Generate a color harmony palette from an image or video frame. Extracts the dominant color and generates harmonious colors based on color theory (complementary, analogous, triadic, split_complementary). Args: image_path: Absolute path to the image or video file. If video, extracts a representative frame. harmony: Harmony type (complementary, analogous, triadic, split_complementary). n_colors: Number of dominant colors to base palette on (default 5). |
| image_analyze_productA | Analyze a product image or video frame — extract colors and optionally generate AI description. Extracts dominant colors from an image. Optionally uses Claude Vision to generate a natural language description of the product. Args: image_path: Absolute path to the image or video file. If video, extracts a representative frame. use_ai: If True, use Claude Vision to generate a description (requires ANTHROPIC_API_KEY). n_colors: Number of dominant colors to extract (default 5). |
| video_project_createA | Scaffold a cinematic video project with style, storyboard, and refs folders. Args: slug: Project slug using lowercase letters, numbers, hyphens, or underscores. output_dir: Base directory for the projects/ folder. Defaults to the current working directory. |
| style_pack_readA | Read STYLE_ and NEG_ blocks from a style.md file or project directory. Args: path: Absolute path to style.md or to a project directory containing style.md. |
| storyboard_readA | Read a PUSHING CREATION storyboard table from storyboard.md or a project directory. Args: path: Absolute path to storyboard.md or to a project directory containing storyboard.md. |
| shot_prompt_renderA | Expand one storyboard shot into prompt and negative_prompt strings. Args: project_path: Absolute path to a project directory containing style.md and storyboard.md. shot: Shot id or 1-based row number from storyboard.md. |
| hyperframes_renderA | Render a Hyperframes composition to video. Args: project_path: Absolute path to the Hyperframes project directory. output_path: Where to save the video. Auto-generated if omitted. fps: Frame rate (24, 30, 60). width: Output width in pixels. height: Output height in pixels. quality: Render quality (draft, standard, high). Default standard. format: Output format (mp4, webm, mov, png-sequence). Default mp4. resolution: Hyperframes resolution preset (landscape, portrait, landscape-4k, portrait-4k, 1080p, 4k, uhd). composition: Specific composition file to render instead of index.html. workers: Parallel render workers (number or 'auto'). Default auto. crf: Override encoder CRF (lower = better quality). variables: Inline JSON object/string with runtime data for the composition. variables_file: Path to a JSON file with runtime data for the composition. |
| hyperframes_compositionsA | List compositions in a Hyperframes project. Args: project_path: Absolute path to the Hyperframes project directory. |
| hyperframes_previewA | Launch Hyperframes preview studio for live preview. Args: project_path: Absolute path to the Hyperframes project directory. port: Port for the preview server (default 3002). |
| hyperframes_stillA | Render a single frame as image from a Hyperframes composition. Args: project_path: Absolute path to the Hyperframes project directory. output_path: Where to save the image. Auto-generated if omitted. frame: Frame number to render (default 0). variables: Inline JSON object/string with runtime data for the composition. variables_file: Path to a JSON file with runtime data for the composition. |
| hyperframes_snapshotC | Capture key frames as PNG screenshots for visual verification. |
| hyperframes_inspectC | Inspect rendered composition layout for overflow and visual issues. |
| hyperframes_infoC | Print Hyperframes project metadata. |
| hyperframes_catalogC | Browse Hyperframes catalog blocks/components. |
| hyperframes_captureC | Capture a website as editable Hyperframes components. |
| hyperframes_ttsC | Generate speech audio or list available Hyperframes local TTS voices. |
| hyperframes_transcribeC | Transcribe audio/video to word-level timestamps or import transcripts. |
| hyperframes_remove_backgroundC | Remove a video/image background using Hyperframes local AI. |
| hyperframes_doctorB | Run Hyperframes environment diagnostics. |
| hyperframes_benchmarkC | Benchmark Hyperframes render speed and file size. |
| hyperframes_initB | Scaffold a new Hyperframes project. Args: name: Project name. output_dir: Directory to create the project in. Defaults to current directory. template: Project template (blank, warm-grain, swiss-grid). Default blank. video: Optional source video for project bootstrap. audio: Optional source audio for project bootstrap. skip_transcribe: Skip Whisper transcription during media bootstrap. model: Whisper model for transcription. language: Language code for transcription. tailwind: Add Tailwind CSS browser-runtime support. resolution: Hyperframes canvas resolution preset. |
| hyperframes_add_blockB | Install a block from the Hyperframes catalog. Args: project_path: Absolute path to the Hyperframes project directory. block_name: Registry item name (e.g. claude-code-window, shader-wipe). |
| hyperframes_validateB | Validate a Hyperframes project for rendering readiness. Args: project_path: Absolute path to the Hyperframes project directory. |
| hyperframes_to_mcpvideoA | Render a Hyperframes composition and post-process with mcp-video in one step. Args: project_path: Absolute path to the Hyperframes project directory. post_process: List of post-processing operations, each with 'op' and 'params' keys. Example: [{"op": "resize", "params": {"aspect_ratio": "9:16"}}] output_path: Where to save the final output. Auto-generated if omitted. |
| audio_synthesizeA | Generate audio procedurally using synthesis. Creates WAV files from scratch using mathematical waveforms. No external audio files needed. Supports envelopes, reverb, filtering, and fade effects. Args: output_path: Absolute path for the output WAV file. waveform: Waveform type (sine, square, sawtooth, triangle, noise). Default sine. frequency: Base frequency in Hz. Default 440 (A4 note). duration: Duration in seconds. Default 1.0. volume: Amplitude 0-1. Default 0.5. effects: Optional effects dict with keys: - envelope: {"attack", "decay", "sustain", "release"} in seconds - fade_in: Fade in duration in seconds - fade_out: Fade out duration in seconds - reverb: {"room_size", "damping", "wet_level"} - lowpass: Cutoff frequency in Hz Returns: Dict with success status and output_path. |
| audio_presetA | Generate preset sound design elements. Pre-configured sound effects for common use cases. No external audio files needed. Available presets:
Args: preset: Preset name from the list above. output_path: Absolute path for the output WAV file. pitch: Pitch variation (low, mid, high). Default mid. duration: Override default duration (seconds). intensity: Effect intensity 0-1. Default 0.5. Returns: Dict with success status and output_path. |
| audio_sequenceA | Compose multiple audio events into a timed sequence. Creates a layered audio track from multiple timed sound events. Args: sequence: List of audio events, each with: - type: "tone", "preset", or "whoosh" - at: Start time in seconds - duration: Event duration in seconds - freq/frequency: For tones (Hz) - name: For presets (preset name) - volume: 0-1 amplitude - waveform: For tones (sine, square, etc.) output_path: Absolute path for the output WAV file. Returns: Dict with success status and output_path. |
| audio_composeA | Layer multiple audio tracks with volume mixing. Mix multiple WAV files together with individual volume control. Args: tracks: List of track configs with: - file: Absolute path to WAV file - volume: Volume multiplier 0-1 - start: Start time offset in seconds - loop: Whether to loop the track (default false) duration: Total output duration in seconds. output_path: Absolute path for the output WAV file. Returns: Dict with success status and output_path. |
| audio_effectsB | Apply audio effects chain to a WAV file. Process audio through a chain of effects like reverb, filtering, normalization. Args: input_path: Absolute path to input WAV file. output_path: Absolute path for output WAV file. effects: List of effect configs with: - type: "lowpass", "reverb", "normalize", "fade" - Additional params per effect type Returns: Dict with success status and output_path. |
| video_add_generated_audioC | Add procedurally generated audio to a video. One-shot convenience function to generate and add audio to video. Args: input_path: Absolute path to input video. audio_config: Configuration dict with: - drone: {"frequency", "volume"} for background tone - events: List of timed sound events output_path: Absolute path for output video. Returns: Dict with success status and output_path. |
| video_audio_spatialC | Apply 3D spatial audio positioning. |
| video_duck_audioA | Mix background music under a video's voice with automatic ducking. The video's own audio (voice/dialog) drives FFmpeg's sidechain compressor, so the music dips while speech plays and recovers in pauses — the standard treatment for shorts, reels, and podcast clips. Args: input_path: Video whose existing audio drives the ducking. music_path: Background music or ambience to mix underneath. output_path: Where to save the result. Auto-generated if omitted. music_volume: Base music level before ducking (0-2, default 0.6). threshold: Sidechain level above which ducking engages (0-1). ratio: Compression ratio applied while voice plays (1-20). attack: How fast the music dips, in milliseconds (1-2000). release: How fast the music recovers, in milliseconds (1-9000). |
| effect_vignetteA | Apply vignette effect - darkened edges. Creates a darkened border effect that draws attention to the center of the frame. Args: input_path: Absolute path to input video. output_path: Absolute path for output video. intensity: Darkness amount 0-1. Default 0.5. radius: Vignette radius 0-1 (1 = edge of frame). Default 0.8. smoothness: Edge softness 0-1. Default 0.5. Returns: Dict with success status and output_path. |
| effect_chromatic_aberrationA | Apply chromatic aberration - RGB channel separation. Creates a trendy RGB split effect popular in tech/glitch aesthetics. Args: input_path: Absolute path to input video. output_path: Absolute path for output video. intensity: Pixel offset amount. Default 2.0. angle: Separation direction in degrees. Default 0 (horizontal). Returns: Dict with success status and output_path. |
| effect_scanlinesA | Apply CRT-style scanlines overlay. Simulates old CRT monitor scanline effect with optional flicker. Args: input_path: Absolute path to input video. output_path: Absolute path for output video. line_height: Pixels per scanline. Default 2. opacity: Line opacity 0-1. Default 0.3. flicker: Brightness variation 0-1. Default 0.1. Returns: Dict with success status and output_path. |
| effect_noiseA | Apply film grain or digital noise. Adds texture noise to video for vintage or lo-fi aesthetics. Args: input_path: Absolute path to input video. output_path: Absolute path for output video. intensity: Noise amount 0-1. Default 0.05. mode: Noise type (film, digital, color). Default film. animated: Whether noise changes per frame. Default true. Returns: Dict with success status and output_path. |
| effect_glowA | Apply bloom/glow effect for highlights. Creates a soft glow around bright areas of the video. Args: input_path: Absolute path to input video. output_path: Absolute path for output video. intensity: Glow strength 0-1. Default 0.5. radius: Blur radius in pixels. Default 10. threshold: Brightness threshold 0-1. Default 0.7. Returns: Dict with success status and output_path. |
| video_layout_gridA | Create grid-based multi-video layout. Arranges multiple videos in a grid pattern (2x2, 3x1, etc.). Args: clips: List of absolute paths to video files. layout: Grid layout (2x2, 3x1, 1x3, 2x3). output_path: Absolute path for output video. gap: Pixels between clips. Default 10. padding: Padding around grid. Default 20. background: Background color hex. Default #141414. Returns: Dict with success status and output_path. |
| video_layout_pipA | Picture-in-picture overlay. Overlay a smaller video on top of a main video. Args: main_path: Absolute path to main video. pip_path: Absolute path to picture-in-picture video. output_path: Absolute path for output video. position: Position (top-left, top-right, bottom-left, bottom-right). Default bottom-right. size: PIP size as fraction of main. Default 0.25. margin: Margin from edges in pixels. Default 20. border: Add border around PIP. Default true. border_color: Border color hex. Default #CCFF00. border_width: Border width in pixels. Default 2. rounded_corners: Apply rounded corners to PIP. Default true. Returns: Dict with success status and output_path. |
| video_text_animatedB | Add animated text to video. Overlay text with animation effects (fade, slide, etc.). Args: input_path: Absolute path to input video. text: Text to display. output_path: Absolute path for output video. animation: Animation type (fade, slide-up, typewriter). Default fade. font: Font family. Default Arial. size: Font size. Default 48. color: Text color. Default white. position: Text position. Default center. start: Start time in seconds. Default 0. duration: Display duration. Default 3.0. Returns: Dict with success status and output_path. |
| video_subtitles_styledA | Burn subtitles from SRT/VTT with custom styling. Embeds subtitle file into video with customizable appearance. Args: input_path: Absolute path to input video. subtitles_path: Absolute path to SRT or VTT file. output_path: Absolute path for output video. style: Optional style dict with font, size, color, outline, etc. Returns: Dict with success status and output_path. |
| video_mograph_countA | Generate animated number counter video. Creates a standalone video of an animated counting number. Args: start: Starting number. end: Ending number. duration: Animation duration in seconds. output_path: Absolute path for output video. style: Optional style dict with font, size, color, glow. fps: Frame rate. Default 30. Returns: Dict with success status and output_path. |
| video_mograph_progressA | Generate progress bar / loading animation. Creates a standalone progress animation video. Args: duration: Animation duration in seconds. output_path: Absolute path for output video. style: Progress style (bar, circle, dots). Default bar. color: Progress color hex. Default #CCFF00. track_color: Background track color hex. Default #333333. fps: Frame rate. Default 30. Returns: Dict with success status and output_path. |
| video_info_detailedA | Get extended video metadata. Returns detailed video information including scene change detection and dominant colors. Args: input_path: Absolute path to input video. Returns: Dict with duration, fps, resolution, bitrate, has_audio, scene_changes. |
| video_auto_chaptersA | Auto-detect scene changes and create chapters. Analyzes video for scene cuts and returns chapter timestamps. Args: input_path: Absolute path to input video. threshold: Scene detection threshold 0-1. Default 0.3. Returns: List of (timestamp, description) chapter tuples. |
| transition_glitchB | Apply glitch transition between two video clips. Args: clip1_path: Absolute path to first video clip. clip2_path: Absolute path to second video clip. output_path: Absolute path for output video. duration: Transition duration in seconds (default 0.5). intensity: Glitch intensity 0-1 (default 0.3). |
| transition_pixelateC | Apply pixelate transition between two video clips. |
| transition_morphC | Apply morph transition between two video clips. |
| glitch_rgb_shiftA | Apply RGB channel shift glitch effect. Shifts red and blue channels in opposite directions for a chromatic split look. Optionally adds per-frame noise for a jittery feel. Args: input_path: Absolute path to input video. output_path: Absolute path for output video. amount: Shift distance in pixels. Default 10.0. angle: Shift direction in degrees. Default 0 (horizontal). noise: Per-frame noise amplitude (0-1). Default 0. Returns: Dict with success status and output_path. |
| glitch_scanline_jitterA | Apply scanline jitter glitch effect. Displaces random horizontal rows of pixels for a CRT malfunction look. Args: input_path: Absolute path to input video. output_path: Absolute path for output video. jitter_amount: Max horizontal displacement in pixels. Default 15. frequency: Fraction of rows affected (0-1). Default 0.3. speed: Animation speed multiplier. Default 5. row_height: Height of each jitter band in pixels. Default 4. Returns: Dict with success status and output_path. |
| glitch_screen_tearingA | Apply screen tearing glitch effect. Creates horizontal tear bands at varying Y positions that shift left/right over time. Args: input_path: Absolute path to input video. output_path: Absolute path for output video. tear_count: Number of tear bands. Default 5. offset_range: Max horizontal offset in pixels. Default 80. speed: Animation speed. Default 3. Returns: Dict with success status and output_path. |
| glitch_vhs_trackingA | Apply VHS tracking error glitch effect. Simulates VHS tape tracking problems with color bleed, rolling bands, and analog noise. Args: input_path: Absolute path to input video. output_path: Absolute path for output video. tracking: Tracking error intensity (0-1). Default 0.5. noise_amount: VHS noise intensity (0-1). Default 0.03. color_bleed: Red channel shift in pixels. Default 3. roll_speed: Vertical roll speed. Default 2. Returns: Dict with success status and output_path. |
| glitch_macroblockingA | Apply macroblocking glitch effect. Simulates codec artifacting by downscaling/upscaling to create blocky pixelation combined with color posterization. Args: input_path: Absolute path to input video. output_path: Absolute path for output video. block_size: Block size in pixels. Default 16. intensity: Blend with original (0-1). Default 0.7. color_reduction: Color level reduction (0-1). Default 0.3. Returns: Dict with success status and output_path. |
| glitch_datamoshingA | Apply datamoshing glitch effect. Simulates P-frame corruption where displacement drifts across frames then periodically resets, mimicking real datamosh artifacts. Args: input_path: Absolute path to input video. output_path: Absolute path for output video. drift: Max displacement drift in pixels. Default 20. iframe_interval: Frame interval for displacement resets. Default 30. Returns: Dict with success status and output_path. |
| glitch_cmyk_splitB | Apply CMYK split glitch effect. Shifts RGB channels at 90-degree intervals to simulate four-plate offset print registration errors. Args: input_path: Absolute path to input video. output_path: Absolute path for output video. amount: Shift distance in pixels. Default 8. angle: Base angle in degrees. Default 0. noise: Per-frame noise amplitude (0-1). Default 0. Returns: Dict with success status and output_path. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| templates_resource | List available editing templates (aspect ratios, quality presets). |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/KyaniteLabs/kinocut'
If you have feedback or need assistance with the MCP directory API, please join our Discord server