Model Context Protocol server for Roblox executors (Volt)
Volt MCP exposes 8 tools for Roblox game instance control. Tool names follow verb_noun convention (ListInstances, Probe, Execute, Screenshot, SendInput, InspectUpvalues, Decompile). However, critical gaps undermine quality: (1) Input schemas are not visible in the provided source code, only parameter names and types are listed in the summary, not actual JSON Schema definitions. (2) Descriptions are present but generic and lack LLM-optimization guidance (e.g., 'Execute Luau code' does not explain WHEN to use Execute vs InspectUpvalues, or what happens on error). (3) No output schemas documented, LLMs cannot infer what fields to expect from tool responses. (4) No error handling guidance, tools like Execute (WRITE risk) lack recovery instructions if code fails. (5) No parameter validation rules stated (e.g., code length limits, instance ID format). (6) Sensitive operations (Execute, SendInput, Decompile) lack confirmation/dry-run patterns. Per-tool analysis: ListInstances and Probe have minimal descriptions (under 100 chars); Execute and SendInput are WRITE operations with no safety guardrails; Decompile raises IP/licensing concerns with no access control documented.
Decompile Luau scripts from a Roblox game instance
Execute Luau code in a Roblox game instance
Get detailed game information from a Roblox instance (place_id, game_id, job_id, user_id, player_name, display_name, viewport dimensions)
Inspect upvalues of a Luau function in a Roblox game instance
List all connected in-game relay instances with their metadata (place_id, game_id, job_id, user_id, player_name, display_name, viewport dimensions)
Probe a specific game instance for metadata (place_id, game_id, job_id, user_id, player_name, display_name, viewport dimensions)
Capture a screenshot from a Roblox game instance
No input/output schemas visible in source code. Tool definitions list parameter names and types in summary form, but actual JSON Schema objects are not shown. Cannot verify schema completeness, type constraints, or required field declarations.
Descriptions lack LLM-optimization guidance. Generic descriptions (e.g., 'Execute Luau code') do not explain WHEN to use this tool vs alternatives, what happens on error, or prerequisites. Descriptions should be 50-200 chars with clear intent signals.
WRITE operations (Execute, SendInput) lack confirmation/dry-run patterns and error recovery guidance. No documentation of what happens if code execution fails, input is invalid, or instance is unreachable. Agents cannot self-correct.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 43 | <=2025-11-25 | v2 |
Send mouse or keyboard input to a Roblox game instance
Decompile tool raises IP/licensing concerns with no access control, permission gates, or audit trail documented. No indication of whether this tool requires explicit user consent or is gated by role/scope.
Parameter descriptions lack format/constraint details. 'instance' parameter appears in 6 tools but no description states format (UUID? hostname? numeric ID?), whether it is required or optional, or how to discover valid instances.