AccelByte Unity SDK MCP server with AGS UI prefab generation tools.
23 tools with mostly complete schemas and descriptions, but significant gaps in parameter documentation and error handling guidance. Tool names follow verb_noun convention well (unity_ui_*, get_*, search_*, describe_*). Descriptions average ~150 chars, within baseline range (p10=34, p90=392). However, 8+ tools lack descriptions for optional parameters (editorPath, bridgeUrl, roleOverrides, etc.), and error responses do not guide LLM recovery. No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk classifications. Output schemas are not documented in tool definitions. Composition is strong, tools chain well (search → describe pattern for example components). Security concern: unity_install_sdk exposes clientSecret as a parameter, violating secret-injection pattern.
Read C# source files for one or more components from the source index. Pass the 'uris' list from search_unity_example_components results. Returns the full C# source text for each URI so Claude can reference real implementation patterns before writing an AGS backing class. Components with an 'absolute_path' field (e.g. example-views) are read directly; others are resolved relative to source_root (bytewars project).
Query the AccelByte Unity SDK best-practices knowledge base for a topic. Returns the best matching guide(s) with C# code templates, best practices, and related component names. Use before writing a C# backing class to understand the correct SDK API pattern for a feature.
Search the bytewars C# source index for classes matching a feature. Returns a ranked list of component metadata (class name, file URI, feature tags, public methods). Use the URIs with describe_unity_example_components to read source.
Report the expected Unity editor, whether Unity is running, and whether com.accelbyte.ui-tools is installed (ui_tools_installed, ui_tools_path).
Set up the AccelByte Unity SDK in a Unity project. Writes AccelByteSDKConfig.json to Assets/Resources/ and patches Packages/manifest.json to add the AccelByte scoped registry and SDK package.
clientSecret parameter in unity_install_sdk exposes OAuth credentials as a tool parameter, violating secret-injection pattern. Credentials must be injected server-side via environment variables or vault, never as parameters.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk classifications (READ_ONLY, WRITE, DESTRUCTIVE). Annotations enable LLMs to reason about side effects and retry safety.
Optional parameters (editorPath, bridgeUrl, roleOverrides, clearRoleOverrides) lack descriptions in 8+ tools. LLMs cannot infer when to use optional params without explicit guidance.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 57 | 2026-07-28+ | v2 |
Force a clean re-resolve of a stale UPM git-dependency package. Use on a packages-lock.json hash mismatch against Library/PackageCache, or a 'Failed to rename ... EPERM' error during resolve. Deletes the stale Library/PackageCache/<package>@* folder(s) and removes the package's packages-lock.json entry so Package Manager re-resolves it fresh on next editor launch. Refuses to run while a Unity editor process is open unless force=true.
Request script recompilation in the Unity editor through the live bridge.
Check whether the AccelByte UI Tools bridge is healthy in the Unity editor. Returns ok, bridge URL, and the health response (including isCompiling). Lighter than unity_editor_status.
Generate a project-owned Unity uGUI prefab through the live editor bridge when Unity is open, or batch mode when it is closed. Refuses generate-blocking validation warnings, Unity compile errors, unverified backing classes, and failed post-generation verification/layout gates unless explicitly overridden where supported.
Inspect generated Unity UI prefabs for layout, backing-class, component, and collection health.
Rebuild all AGS core kit prefabs under Packages/com.accelbyte.ui-tools/Prefabs/Core/ with force=true. Use after plugin C# changes to regenerate existing prefabs. Uses the live editor bridge when Unity is open, batch mode when closed.
Inspect package-owned AGS uGUI kit prefabs against component specs without modifying assets.
Report approved project prefab candidates for generated list or collection rows.
Patch existing generated or package-owned UI prefabs with narrow property operations.
Return one read-only readiness report for Unity UI generation, including style approval, recipe selection, validation blockers, entry candidates, missing project roles, and compile/bridge readiness.
Generate project-owned reusable UI component prefabs under Assets/AGS/UI/Components.
Resolve an AGS recipe into a Unity uGUI prefab spec without creating assets.
Return scene readiness for generated Unity UI, including Input System mode, EventSystem module compatibility, Canvas presence, generated panel candidates, active panel state, blockers, warnings, and next actions.
Set up and validate a Unity scene for generated UI through the live editor bridge. Creates/reuses Canvas and EventSystem, selects the compatible input module, instantiates panels, optionally attaches a compiled MenuManager MonoBehaviour and assigns generated panel fields, activates only initialPanel, and saves the scene on success.
Select a recipe by name from the built-in or project-local recipe catalog.
Discover uGUI/TMP project style and optionally approve its fingerprint.
Validate a shared AGS Unity UI recipe without opening Unity.
Verify that a C# backing class exists and is compilable before generation.
Output schemas not documented in tool definitions. LLMs cannot plan downstream calls or extract required fields without knowing response structure.
Error handling lacks recovery guidance. Tools do not return actionable error messages (e.g., 'Validation failed: missing backing_class. Call unity_ui_verify_backing_class first.').