mcp-video-reader
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FFMPEG_PATH | No | Override path to the ffmpeg executable | |
| FFPROBE_PATH | No | Override path to the ffprobe executable |
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 | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_video_infoA | Get metadata about a video file: duration, resolution, fps, codecs, bitrate, file size. |
| extract_framesA | Extract evenly-spaced frames from a video file as JPEG images. Returns the frames as base64 images that can be viewed directly. Useful for understanding what happens in a video over time. |
| extract_frame_at_timestampA | Extract a single frame at a specific timestamp from a video file. Returns the frame as a base64 JPEG image. |
| convert_videoA | Convert a video to a different container format and/or codec. Supports format changes (mp4, mkv, webm, avi, mov) and codec changes (h264, h265, vp9, av1). Quality can be controlled via CRF or target bitrate. |
| trim_videoA | Cut a clip from a video by specifying start and end times. The output is re-muxed (not re-encoded) so it is fast and lossless. |
| concat_videosA | Join multiple video files into a single file in the order provided. Files are concatenated without re-encoding (lossless, very fast). All input files must have the same codec and resolution. |
| split_videoA | Split a video into equal-duration segments. Segments are created without re-encoding (lossless). Output files are named with a _part_NNN suffix. |
| extract_audioA | Extract the audio track from a video file and save it as a standalone audio file. |
| strip_audioA | Remove the audio track from a video file, producing a silent video. The video stream is copied without re-encoding. |
| adjust_volumeA | Change the audio volume of a video. The video stream is copied without re-encoding. |
| resize_videoA | Resize a video to new dimensions. Provide width, height, or both. Omitted dimension is computed automatically to preserve aspect ratio. |
| crop_videoA | Crop a video to a rectangular region defined by width, height, and top-left corner (x, y). |
| rotate_videoB | Rotate a video 90, 180, or 270 degrees clockwise. |
| adjust_videoB | Adjust brightness, contrast, and/or saturation of a video using the ffmpeg eq filter. |
| add_text_overlayA | Burn a text string onto every frame of a video using the ffmpeg drawtext filter. |
| change_speedA | Speed up or slow down a video. Both video and audio are adjusted to match. Values > 1 speed up; values < 1 slow down. |
| generate_thumbnail_gridA | Generate a contact-sheet image (JPEG) with evenly-spaced thumbnail frames arranged in a grid. Useful for getting a quick visual overview of a video. |
| extract_subtitlesA | Extract a subtitle track from a video file and save it as a standalone subtitle file. |
| embed_subtitlesA | Embed a subtitle file as a soft subtitle track inside a video container (the subtitles are selectable but not burned into the video frames). Supports mp4, mkv, and mov output. |
| burn_subtitlesA | Permanently burn (hard-code) subtitles into the video frames. The resulting video always shows the subtitles regardless of player settings. Requires re-encoding. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 20 tools
Each tool has a clearly distinct purpose: extraction, conversion, editing, filtering, and subtitles are all separated. Even similar-sounding tools like extract_audio and strip_audio are unambiguous due to their specific descriptions.
All tools follow a consistent verb_noun pattern in snake_case, e.g., extract_audio, trim_video, adjust_volume. Compound names like generate_thumbnail_grid and extract_frame_at_timestamp maintain the pattern without deviation.
20 tools is on the higher end but appropriate for a comprehensive video processing server. Each tool adds distinct value, though the server name suggests a reader scope, making the editing tools slightly broad.
The tool set covers core video operations: metadata, frame/audio/subtitle extraction, conversion, trimming, splitting, concatenation, and various filters. Missing advanced capabilities like audio replacement or stabilization, but no critical dead ends for common workflows.