watch-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| WATCH_MCP_HOME | No | Data folder (default ~/Library/Caches/watch-mcp on macOS, ~/.cache/watch-mcp on Linux, %LOCALAPPDATA%\watch-mcp on Windows). | |
| WATCH_MCP_FFMPEG | No | Use your own ffmpeg binary (ffmpeg 5.1 or later). | |
| WATCH_MCP_FFPROBE | No | Use your own ffprobe binary. | |
| WATCH_MCP_CACHE_DIR | No | Cached results only (models stay in WATCH_MCP_HOME). | |
| WATCH_MCP_STATE_DIR | No | Where latest-recording.json is read (default ~/Library/Application Support/watch-mcp on macOS). | |
| WATCH_MCP_TRANSCRIBE | No | Set to off to never transcribe. | |
| WATCH_MCP_TRANSCRIBER | No | Speech-to-text backend (default whisper-local, the only one today). | whisper-local |
| WATCH_MCP_WHISPER_GPU | No | Set to 0 to run Whisper on the CPU. | |
| WATCH_MCP_WHISPER_MODEL | No | Whisper model to use: base (148 MB), small (488 MB) or large-v3-turbo-q5_0 (574 MB). Default: the turbo model on Apple Silicon, base elsewhere. |
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": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| watch_videoA | Watch a local video. Returns storyboard images of adaptively chosen keyframes (more frames where things change, few in static parts; each tile shows its frame number and timestamp) plus a timeline aligning those frames with a timestamped speech transcript (local Whisper). Use this first for any video or screen recording. |
| zoomA | Dense consecutive frames of a short segment (up to 48 frames), to see motion: a flickering bug, an animation, a quick transition. Use after watch_video, with start/end taken from its timeline. |
| frameA | One still frame at full resolution (long edge up to 2000 px), to read small on-screen text or inspect details. Pass crop to enlarge a region. |
| transcribeA | Timestamped transcript of the speech in a local video, made locally with Whisper (text only, no images). Use it when watch_video said the transcript was pending, or when only the words matter. |
| latest_recordingA | The most recent screen + voice recording made with the WatchRecorder menu-bar app (macOS companion of watch-mcp). Returns the same storyboards and timeline as watch_video: what the user showed, and what they asked out loud. Use it when the user says they just recorded something or pastes a WatchRecorder prompt. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| latest | Puts the latest WatchRecorder recording (path and what you said) into this conversation, so Claude watches it. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| latest-recording | Path, start time, duration and spoken transcript of the most recent recording (JSON, or null when there is none). |
TDQS
Scored across 5 tools
The tools mostly have distinct purposes: watch_video for overview, zoom for motion, frame for detail, transcribe for audio-only, and latest_recording for the newest WatchRecorder capture. Some overlap exists because watch_video and latest_recording return the same storyboards/timeline output, and watch_video vs. transcribe both involve transcripts, but the descriptions make the intended selection clear.
The naming convention is mixed: watch_video is verb_noun, zoom and transcribe are bare verbs, frame can be read as noun or verb, and latest_recording is adjective_noun. The names remain readable and domain-specific, but there is no predictable pattern across the set.
Five tools is well-scoped for a local video analysis server. Each tool covers a distinct mode of inspection—overview, motion sampling, still-frame detail, transcript extraction, and quick access to the latest recording—so none feels redundant or missing.
The surface covers the core lifecycle for local video analysis: overview storyboards and timeline, dense motion inspection, full-resolution detail inspection, transcript extraction, and a convenience path for the latest WatchRecorder capture. There are no obvious dead ends for this read-only domain, including a fallback when the transcript is pending.