Local multi-stream caster with CLI, server, management UI, viewer UI, and MCP interface.
vcast provides 6 tools with basic schemas and descriptions, but falls short of production quality. All tools have descriptions (10-50 chars, below the 50-200 char baseline for LLM optimization) and input schemas with typed parameters. However, descriptions lack actionable context, they state WHAT but not WHEN or WHY. No output schemas are documented. Error handling is absent from tool definitions. Parameter descriptions are minimal (e.g., 'The source ID' for id param in updateAudio). No enums constrain values. Tools lack idempotency guidance and recovery hints. Naming is clear (verb_noun pattern) but generic descriptions undermine discoverability.
Add a new streaming source
List all streaming sources
Remove a saved streaming source
Update audio settings for a source
Update the layout configuration for the viewer
Update window position and size for a source
Descriptions are too brief (10-50 chars) and lack actionable context. 'List all streaming sources' does not explain when to call it, what structure it returns, or how results feed downstream tools.
No output schemas documented. LLMs cannot plan downstream calls or extract required fields (e.g., does listSources return source IDs that removeSource accepts?).
Parameter descriptions are minimal. 'The source ID' does not explain format, constraints, or how to obtain it. 'Volume level' lacks range (0-100? 0-1?).
No error handling guidance in tool definitions. If addSource fails (invalid URL, duplicate), the LLM has no recovery path.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 50 | 2026-07-28+ | v2 |
Destructive tool (removeSource) lacks confirmation or dry-run pattern. No guidance on idempotency or retry safety.