Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {} |
| logging | {} |
| completions | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| analyze_video | Analyze a video URL to extract transcript, key frames, metadata, comments, OCR text, and annotated timeline. Returns structured data about the video content:
Supports: Loom (loom.com/share/...) and direct video URLs (.mp4, .webm, .mov). Detail levels:
Use options.fields to request only specific data (e.g., ["metadata", "transcript"]). Use options.forceRefresh to bypass the cache. |
| get_frame_at | Extract a single video frame at a specific timestamp. Useful for inspecting what's on screen at a particular moment. The AI reads the transcript, identifies a critical moment, and requests the exact frame at that timestamp. Supports: Loom (loom.com/share/...) and direct video URLs (.mp4, .webm, .mov). Requires video download capability — direct URLs work best. Args:
Returns: A single image of the video frame at the specified timestamp. |
| get_frame_burst | Extract multiple frames evenly distributed across a time range. Designed for motion and vibration analysis where scene-change detection fails because the "scene" doesn't change — only the position/state of objects does. Example: get_frame_burst(url, "0:15", "0:17", 10) → 10 frames in 2 seconds
Supports: Loom (loom.com/share/...) and direct video URLs (.mp4, .webm, .mov). Requires video download capability — direct URLs work best. Args:
Returns: N images evenly distributed between the from and to timestamps. |
| get_transcript | Extract only the transcript from a video URL. Returns timestamped transcript entries with speaker identification (when available). Faster than analyze_video when you only need the transcript. If the platform has no native transcript, attempts Whisper fallback transcription (requires @huggingface/transformers, whisper CLI, or OPENAI_API_KEY). Supports: Loom (loom.com/share/...) and direct video URLs (.mp4, .webm, .mov). |
| get_metadata | Get video metadata, comments, chapters, and AI summary from a video URL. Returns structured metadata without downloading the video or extracting frames. Faster than analyze_video when you only need metadata. Supports: Loom (loom.com/share/...) and direct video URLs (.mp4, .webm, .mov). |
| get_frames | Extract key frames from a video URL without transcript or metadata. Two extraction modes:
Returns optimized, deduplicated JPEG frames. Supports: Loom (loom.com/share/...) and direct video URLs (.mp4, .webm, .mov). |
| analyze_moment | Deep-dive analysis of a specific time range in a video. Combines burst frame extraction + transcript filtering + OCR + annotated timeline for a focused segment of the video. Use this when you need to understand exactly what happens between two timestamps:
Example: analyze_moment(url, "1:30", "2:00", 10) → 10 frames + transcript + OCR for that 30s window Supports: Loom (loom.com/share/...) and direct video URLs (.mp4, .webm, .mov). Requires video download capability for frame extraction. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |