mcp-ffmpeg
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 |
|---|---|
| health_checkA | Returns a simple health status to confirm the server is running. |
| extract_audio_from_videoA | Extracts audio from a video file and saves it. Args: video_path: The path to the input video file. output_audio_path: The path to save the extracted audio file. audio_codec: The audio codec to use for the output (e.g., 'mp3', 'aac', 'wav'). Defaults to 'mp3'. Returns: A status message indicating success or failure. |
| convert_audio_propertiesA | Converts audio file format and ALL specified properties like bitrate, sample rate, and channels. Args: input_audio_path: Path to the source audio file. output_audio_path: Path to save the converted audio file. target_format: Desired output audio format (e.g., 'mp3', 'wav', 'aac'). bitrate: Target audio bitrate (e.g., '128k', '192k'). Optional. sample_rate: Target audio sample rate in Hz (e.g., 44100, 48000). Optional. channels: Number of audio channels (1 for mono, 2 for stereo). Optional. Returns: A status message indicating success or failure. |
| convert_audio_formatA | Converts an audio file to the specified target format. Args: input_audio_path: Path to the source audio file. output_audio_path: Path to save the converted audio file. target_format: Desired output audio format (e.g., 'mp3', 'wav', 'aac'). Returns: A status message indicating success or failure. |
| set_audio_bitrateA | Sets the bitrate for an audio file. Args: input_audio_path: Path to the source audio file. output_audio_path: Path to save the audio file with the new bitrate. bitrate: Target audio bitrate (e.g., '128k', '192k', '320k'). Returns: A status message indicating success or failure. |
| set_audio_sample_rateA | Sets the sample rate for an audio file. Args: input_audio_path: Path to the source audio file. output_audio_path: Path to save the audio file with the new sample rate. sample_rate: Target audio sample rate in Hz (e.g., 44100, 48000). Returns: A status message indicating success or failure. |
| set_audio_channelsA | Sets the number of channels for an audio file (1 for mono, 2 for stereo). Args: input_audio_path: Path to the source audio file. output_audio_path: Path to save the audio file with the new channel layout. channels: Number of audio channels (1 for mono, 2 for stereo). Returns: A status message indicating success or failure. |
| trim_videoA | Trims a video to the specified start and end times. Args: video_path: The path to the input video file. output_video_path: The path to save the trimmed video file. start_time: The start time for trimming (HH:MM:SS or seconds). end_time: The end time for trimming (HH:MM:SS or seconds). Returns: A status message indicating success or failure. |
| convert_video_propertiesA | Converts video file format and ALL specified properties like resolution, codecs, bitrates, and frame rate. Args: input_video_path: Path to the source video file. output_video_path: Path to save the converted video file. target_format: Desired output video format (e.g., 'mp4', 'mov', 'avi'). resolution: Target resolution (e.g., '1920x1080' or '720' for height). Optional. video_codec: Target video codec (e.g., 'libx264', 'libx265'). Optional. video_bitrate: Target video bitrate (e.g., '1M', '2500k'). Optional. frame_rate: Target frame rate (e.g., 24, 30, 60). Optional. audio_codec: Target audio codec (e.g., 'aac', 'mp3'). Optional. audio_bitrate: Target audio bitrate (e.g., '128k', '192k'). Optional. audio_sample_rate: Target audio sample rate in Hz (e.g., 44100, 48000). Optional. audio_channels: Number of audio channels (1 for mono, 2 for stereo). Optional. Returns: A status message indicating success or failure. |
| change_aspect_ratioA | Changes the aspect ratio of a video, using padding or cropping. Args: video_path: Path to the input video file. output_video_path: Path to save the video with the new aspect ratio. target_aspect_ratio: Target aspect ratio (e.g., '16:9', '4:3', '1:1'). resize_mode: 'pad' to add letterbox/pillarbox, or 'crop' to crop. Defaults to 'pad'. padding_color: Color for padding (e.g., 'black', 'white'). Defaults to 'black'. Returns: A status message indicating success or failure. |
| convert_video_formatA | Converts a video file to the specified target format, attempting to copy codecs first. Args: input_video_path: Path to the source video file. output_video_path: Path to save the converted video file. target_format: Desired output video format (e.g., 'mp4', 'mov', 'avi'). Returns: A status message indicating success or failure. |
| set_video_resolutionA | Sets the resolution of a video, attempting to copy the audio stream. Args: input_video_path: Path to the source video file. output_video_path: Path to save the video with the new resolution. resolution: Target video resolution (e.g., '1920x1080', '1280x720', or '720' for height). Returns: A status message indicating success or failure. |
| set_video_codecA | Sets the video codec of a video, attempting to copy the audio stream. Args: input_video_path: Path to the source video file. output_video_path: Path to save the video with the new video codec. video_codec: Target video codec (e.g., 'libx264', 'libx265', 'vp9'). Returns: A status message indicating success or failure. |
| set_video_bitrateA | Sets the video bitrate of a video, attempting to copy the audio stream. Args: input_video_path: Path to the source video file. output_video_path: Path to save the video with the new video bitrate. video_bitrate: Target video bitrate (e.g., '1M', '2500k'). Returns: A status message indicating success or failure. |
| set_video_frame_rateA | Sets the frame rate of a video, attempting to copy the audio stream. Args: input_video_path: Path to the source video file. output_video_path: Path to save the video with the new frame rate. frame_rate: Target video frame rate (e.g., 24, 30, 60). Returns: A status message indicating success or failure. |
| set_video_audio_track_codecA | Sets the audio codec of a video's audio track, attempting to copy the video stream. Args: input_video_path: Path to the source video file. output_video_path: Path to save the video with the new audio codec. audio_codec: Target audio codec (e.g., 'aac', 'mp3'). Returns: A status message indicating success or failure. |
| set_video_audio_track_bitrateA | Sets the audio bitrate of a video's audio track, attempting to copy the video stream. Args: input_video_path: Path to the source video file. output_video_path: Path to save the video with the new audio bitrate. audio_bitrate: Target audio bitrate (e.g., '128k', '192k'). Returns: A status message indicating success or failure. |
| set_video_audio_track_sample_rateA | Sets the audio sample rate of a video's audio track, attempting to copy the video stream. Args: input_video_path: Path to the source video file. output_video_path: Path to save the video with the new audio sample rate. audio_sample_rate: Target audio sample rate in Hz (e.g., 44100, 48000). Returns: A status message indicating success or failure. |
| set_video_audio_track_channelsA | Sets the number of audio channels of a video's audio track, attempting to copy the video stream. Args: input_video_path: Path to the source video file. output_video_path: Path to save the video with the new audio channel layout. audio_channels: Number of audio channels (1 for mono, 2 for stereo). Returns: A status message indicating success or failure. |
| change_video_speedA | Changes the playback speed of a video (and its audio). Args: video_path: Path to the input video file. output_video_path: Path to save the speed-adjusted video file. speed_factor: The factor by which to change the speed (e.g., 2.0 for 2x speed, 0.5 for half speed). Must be positive. Returns: A status message indicating success or failure. |
| add_subtitlesA | Burns subtitles from an SRT file onto a video, with optional styling. Args: video_path: Path to the input video file. srt_file_path: Path to the SRT subtitle file. output_video_path: Path to save the video with subtitles. font_style (dict, optional): A dictionary for subtitle styling. Supported keys: 'font_name', 'font_size', 'font_color', 'outline_color', 'outline_width', 'shadow_color', 'shadow_offset_x', 'shadow_offset_y', 'alignment', 'margin_v', 'margin_l', 'margin_r'. Default is None, which uses FFmpeg's default subtitle styling. Returns: A status message indicating success or failure. |
| add_text_overlayA | Adds one or more text overlays to a video at specified times and positions. Args: video_path: Path to the input main video file. output_video_path: Path to save the video with text overlays. text_elements: A list of dictionaries, where each dictionary defines a text overlay. Required keys: 'text', 'start_time', 'end_time'. Optional keys: 'font_size' (24), 'font_color' ('white'), 'x_pos' ('center'), 'y_pos' ('h-th-10'), 'box' (False), 'box_color' ('black@0.5'), 'box_border_width' (0), 'font_file'. Returns: A status message indicating success or failure. |
| add_image_overlayA | Adds an image overlay (watermark/logo) to a video. Args: video_path: Path to the input video file. output_video_path: Path to save the video with the image overlay. image_path: Path to the image file for the overlay. position: Position of the overlay. Options: 'top_left', 'top_right', 'bottom_left', 'bottom_right', 'center'. Or specify custom coordinates like 'x=10:y=10'. opacity: Opacity of the overlay (0.0 to 1.0). If None, image's own alpha is used. start_time: Start time for the overlay (HH:MM:SS or seconds). If None, starts from beginning. end_time: End time for the overlay (HH:MM:SS or seconds). If None, lasts till end. width: Width for the overlay image (e.g., '100', 'iw0.1'). Original if None. height: Height for the overlay image (e.g., '50', 'ih0.1'). Original if None. Returns: A status message indicating success or failure. |
| concatenate_videosA | Concatenates multiple video files into a single output file. Supports optional xfade transition when concatenating exactly two videos. Args: video_paths: A list of paths to the video files to concatenate. output_video_path: The path to save the concatenated video file. transition_effect: The xfade transition type (e.g., 'dissolve', 'fade', 'wipeleft'). Only applied if exactly two videos are provided. Defaults to None. transition_duration: The duration of the xfade transition in seconds. Required if transition_effect is specified. Returns: A status message indicating success or failure. |
| remove_silenceA | Removes silent segments from an audio or video file. Args: media_path: Path to the input audio or video file. output_media_path: Path to save the media file with silences removed. silence_threshold_db: The noise level (in dBFS) below which is considered silence. min_silence_duration_ms: Minimum duration (in milliseconds) of silence to be removed. Returns: A status message indicating success or failure. |
| add_b_rollA | Inserts B-roll clips into a main video as overlays. Args: main_video_path: Path to the main video file. broll_clips: A list of dicts, each with keys: Required: 'clip_path' (str), 'insert_at_timestamp' (str/float). Optional: 'duration' (str/float), 'position' ('fullscreen'|'top-left'|'top-right'| 'bottom-left'|'bottom-right'|'center'), 'scale' (float), 'transition_in'/'transition_out' ('fade'), 'transition_duration' (float), 'audio_mix' (float, 0.0-1.0). output_video_path: The path to save the output video. Returns: A status message indicating success or failure. |
| add_basic_transitionsA | Adds basic fade transitions to the beginning or end of a video. Args: video_path: Path to the input video file. output_video_path: Path to save the video with the transition. transition_type: Type of transition. Options: 'fade_in', 'fade_out'. duration_seconds: Duration of the fade effect in seconds. Returns: A status message indicating success or failure. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
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/kevinten-ai/mcp-ffmpeg'
If you have feedback or need assistance with the MCP directory API, please join our Discord server