AI automation framework for Unity game development across all platforms with skill-based orchestration, validation gates, and dynamic hooks system
This server exhibits severe definition quality gaps across nearly all 28 tools. Most tools lack proper input schemas (many show only parameter names without type definitions), descriptions are either missing or generic, and output schemas are undocumented. Tool naming is inconsistent (mix of verb_noun, class.method, and API endpoint styles). No evidence of error handling guidance, parameter validation rules, or LLM-optimized descriptions. The codebase mixes JavaScript, Python, and C# implementations without a unified MCP interface layer, suggesting tools are inferred from source files rather than explicitly registered with proper schemas.
Get list of all available characters for UI population
Get the currently selected character option with stats
Handle character selection, instantiate character and portrait prefabs, register skill markers
Get threshold value for a specific gate with fallback to default
Get validation mode configuration (strict, lenient, experimental)
Load and validate context-specific hooks-context.yaml configuration file
Load and validate global hooks-config.yaml configuration file
No input schemas visible for 12+ tools (e.g., ConfigurationLoader.load_global_config, NetworkSurvivalHandler.UpdateNetworkVariables, CharacterSelectManager.GetSelectedCharacter). Tools with empty input objects have schema score 0.
Tool naming is inconsistent: mix of verb_noun (listSkills, readMetadata), class.method (ErrorHandler.handle, ConfigurationLoader.load_global_config), and API endpoint names (skill-browser-api-skills). LLMs cannot reliably parse intent from inconsistent naming conventions.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 35 | 2026-07-28+ | v2 |
Load and validate plugin registry hooks-plugins.yaml configuration file
Merge three-level configuration hierarchy (global > context > plugin) with precedence rules
Validate that configuration is internally consistent with logical threshold ordering
Build skill dependency map, extract dependencies from workflows, detect circular references, and generate dependency report
Classify error by type and return metadata including category, severity, and retryability
Handle errors with classification, recovery strategy selection, and context tracking
Select multiple recovery strategies in priority order with environment-specific fallbacks
Select appropriate recovery strategy based on error type
Synchronize local survival stats to network variables for multiplayer replication
Extract all skill markers from scene hierarchy and return as list
Register a skill binding for a game object component with category, usage, and validation gate
Get normalized survival stat value (0.0 to 1.0) based on max value
Restore a survival stat by adding amount and broadcasting change via OnStatChanged event
Execute 8-gate validation pipeline: collect skill markers, run validation checks, generate DemoManifest.json and 8GATE_VALIDATION_REPORT.md
Filter skills by query string, domain, and risk level
List all skills from the project with metadata including domain, risk level, description, and file path
Generate marketplace index from skill directories, reading metadata and creating index.json
Read YAML frontmatter metadata from a markdown file
HTTP API endpoint that returns list of all unique skill domains
HTTP API endpoint that returns filtered skills with relative paths and metadata
Convert absolute file path to relative project path
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields. E.g., listSkills returns an array but structure is undocumented; filterSkills output format unknown.
No error handling guidance. Tools like marketplace-index-generator (WRITE risk) and ValidationGateExecutor.ExecuteValidation (WRITE risk) provide no recovery hints, retryability classification, or actionable error messages.
Parameter descriptions are generic or missing context. E.g., 'error_type' in ErrorHandler.handle lacks enum values or valid examples; 'config' in ConfigurationLoader.validate_config is undescribed; 'rootObject' in SkillShowcaseMarker.FindAllMarkers lacks type clarity.