AI-operable Roblox development workbench. MCP server providing intelligence, orchestration and verification layer for Roblox game development.
RobloxForge demonstrates solid naming conventions (verb_noun pattern: rb_doctor, rb_docs_search, rb_project_analyze) and comprehensive descriptions (avg ~120 chars, all present). Schemas are well-formed with proper JSON Schema structure and type definitions. However, parameter descriptions are sparse or missing entirely, most parameters lack guidance on format, constraints, or when to use them. Output schemas are undocumented; LLMs cannot predict response structure. Error handling is minimal; tools return raw results without recovery guidance. No tool annotations (readOnlyHint/destructiveHint) despite clear risk classifications in metadata. The rb_verify_receipt tool accepts multiple boolean flags without explaining their interdependencies or what 'UNVERIFIED' means in practice.
Static architecture review of Luau sources: ownership violations, monoliths, placement problems. Static heuristics, not a runtime proof.
Honest capability matrix derived from live probes. Never assume a status; ask this before attempting anything.
Read one cached doc page (bounded). Use a path from rb_docs_search.
Search CURRENT official Roblox creator-docs. Exact API names win: 'TweenService:Create', 'ProcessReceipt', 'StreamingEnabled'.
Refresh the creator-docs cache via git. Offline failure keeps the cached copy and reports honestly.
Full health report: Studio, official MCP handshake, docs cache, toolchain, agent integrations. Run this FIRST in any session.
Output schemas completely undocumented. LLMs cannot predict response structure, forcing them to guess at field names and types for downstream tool chaining. Every tool lacks a documented return schema.
Parameter descriptions missing or minimal. 'path' appears in 5 tools with identical description 'filesystem project root; omit to auto-detect cwd' but no guidance on format (absolute vs relative), validation rules, or what happens on invalid paths. 'query' in rb_docs_search lacks examples of valid syntax ('TweenService:Create' vs 'tweenservice create').
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 57 | 2026-07-28+ | v2 |
Analyze an existing filesystem project (Rojo or script-tree style): style, scripts, client/server split, remotes, DataStores, hazards.
Security review: client-authority patterns, unvalidated remotes, client-owned currency/damage/teleport. RemoteEvent != authorization.
Status of optional Luau tooling (rojo, stylua, selene, luau-lsp, rokit).
Record a verification receipt for completed work. Evidence-gated: claims without playtest evidence are recorded as UNVERIFIED.
Turn a premise into the smallest playable vertical slice plan with authority boundaries and verification steps. Use BEFORE building.
No tool annotations despite explicit risk classifications. rb_docs_update is WRITE but lacks destructiveHint. rb_verify_receipt is WRITE but lacks idempotentHint. Annotations enable agents to reason about safety and retry semantics.
Error handling absent. Tools return raw results with no recovery guidance. If rb_docs_search returns empty results, the LLM has no hint to try a broader query or check rb_docs_update. If rb_project_analyze fails on invalid path, no actionable error message.
rb_verify_receipt parameter interdependencies undocumented. playtest_performed, screenshot_captured, and screenshot_inspected are boolean flags with no explanation of what combinations are valid or what 'UNVERIFIED' means. Are all three required? Can screenshot_inspected be true if screenshot_captured is false?