Framesleuth
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| VLM_URL | No | URL for the vision-language model server (OpenAI-compatible). Defaults to local Ollama. | |
| API_TOKEN | No | Optional bearer token required for all /v1 endpoints except /v1/healthz. Set for anything beyond single-user laptop. | |
| CODER_URL | No | URL for the coder model server (OpenAI-compatible). Defaults to local Ollama. | |
| WEBHOOK_URL | No | Optional URL to receive a POST notification when a job completes. | |
| WEB_ORIGINS | No | Allowed CORS origins for the HTTP API. Comma-separated list. Default includes the hosted demo site and local development origins. | |
| JOB_TIMEOUT_S | No | Hard per-job timeout in seconds. | |
| ASR_VAD_FILTER | No | Enable or disable voice-activity filtering in the audio transcript stage. Set to 'true' or 'false'. | |
| BUNDLE_TTL_DAYS | No | Number of days to retain completed analysis bundles before cleanup. | |
| CHROME_EXTENSION_IDS | No | Chrome extension IDs allowed to access the API via CORS. Comma-separated list. | |
| RETENTION_SWEEP_INTERVAL_S | No | Interval in seconds between periodic cleanup sweeps for expired bundles. | |
| FRAMESLEUTH_AUTO_INSTALL_BROWSER | No | Set to '0' to disable automatic download of Chromium for HTML rendering. Default '1'. |
Capabilities
Features and capabilities supported by this server
| 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 |
|---|---|
| analyze_videoA | Analyze any video and return the new report id. Works on any kind of video — a bug recording, a feature demo, a design walkthrough, a Loom, a phone capture — and distills it into a structured Context Bundle a coding agent can act on (fix a bug, add or change a feature, or build something new). Args:
path: Path to the video file (.mp4/.webm/.mkv/.mov/.avi).
repo_root: Repo to ground references against (pass the open workspace).
intent: The user's request to act on, e.g. "fix the save button that
hangs", "add a dark-mode toggle like the demo shows", or "build
this onboarding screen from the walkthrough". It is recorded on the
report and shapes the generated action prompt so the calling agent
does what the user actually asked.
skill: Built-in summary style — one of the names from Returns the report |
| list_skillsA | List built-in summary skills (names + descriptions) for |
| list_actionsA | List built-in action modes (names + descriptions) for |
| get_suggested_actionsA | Return the machine-readable next-step menu for a report. Each item is |
| renderA | Render a report as a shareable artifact.
|
| list_reportsA | List all available report ids (from any analyzed video). |
| get_reportA | Return the Context Bundle for a report id.
Typed as a |
| get_repro_stepsA | Return the numbered reproduction steps for a report. |
| get_error_evidenceB | Return the timestamped error evidence for a report. |
| get_timelineA | Return the merged event timeline for a report. |
| get_keyframe_imageA | Return a keyframe image for a report by its index. |
| get_video_gifA | Render an animated GIF preview of the video for a report. Useful for embedding a short looping preview in an issue, chat, or PR
description. |
| locate_in_codeA | Return code candidates already grounded in the bundle, or re-ground now.
|
| render_html_videoA | Render an HTML document (CSS / JS / canvas animation) to mp4/gif/webm. Use this to export a self-contained animated HTML page (e.g. one you just
designed) as a shareable clip. Captures the animation frame-by-frame
(full color, no dropped frames, no quality loss) and encodes a
color-correct H.264 MP4 / VP9 WebM / palette GIF — up to 4K, 5-60 fps.
Returns the absolute path to the encoded file, written under the bundle
directory. Requires the optional |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| fix_from_video | Emit a grounded action prompt — fix a bug, change a feature, or build new. |
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/thestackhub1/framesleuth-agent'
If you have feedback or need assistance with the MCP directory API, please join our Discord server