docs/feature-roadmap-2026.md
Six parallel research agents investigated 12+ domains across Unity's API surface. Every domain was assessed for: API stability, implementation complexity, developer value, dead ends, and dependencies.
Animation, Asset, Audio, Camera, Components, Editor, GameObjects, Graphics, Lighting, Material, Prefabs, ProBuilder, Scene, Script, ScriptableObject, Shader, Texture, UI, VFX
manage_packages — Package Management| Dimension | Assessment |
|---|---|
| Value | Very High |
| Complexity | Medium |
| Actions | ~14 |
| Dependencies | None (core Unity) |
| Audience | 100% of users |
Why first: Directly unblocks XR, Addressables, Input System, and any workflow requiring optional packages. Currently the #1 gap — AI can detect missing packages but cannot install them.
Key APIs: PackageManager.Client.Add/Remove/List/Search/Embed (all public, async). Scoped registries via manifest.json editing. Assembly definitions as JSON files.
Actions: add_package, remove_package, add_and_remove, list_packages, search_packages, get_package_info, embed_package, resolve_packages, list_registries, add_registry, remove_registry, list_assemblies, create_asmdef, ping
Challenge: Domain reload after install/remove kills state. Solution: PendingResponse + McpJobStateStore (existing patterns).
| Dimension | Assessment |
|---|---|
| Value | High |
| Complexity | Low |
| Effort | 1-2 days each |
2a. Multi-scene editing (extend manage_scene):
open_additive, close_scene, set_active_scene, get_loaded_scenes, save_setup, restore_setupadd_to_build, remove_from_build, set_build_enabled2b. Scene validation (extend manage_scene or new resource):
validate — detect missing scripts, broken prefab references, null referencesrepair — auto-fix missing scriptsGameObjectUtility.GetMonoBehavioursWithMissingScriptCount(), PrefabUtility.GetPrefabInstanceStatus()2c. Undo/Redo (extend manage_editor):
undo, redo — Undo.PerformUndo() / Undo.PerformRedo()2d. Scene templates (extend manage_scene):
create_from_template — presets: 3d_basic, 3d_urp, 2d_basic, emptymanage_physics — Physics System| Dimension | Assessment |
|---|---|
| Value | High |
| Complexity | Low-Medium |
| Actions | ~18 |
| Dependencies | None (core Unity) |
| Audience | ~90% of games |
Why: Almost every game uses physics. Existing manage_components can add Rigidbody/Collider but lacks global settings, collision matrix, raycasting, and simulation.
Key APIs: All public and stable since Unity 5+. Physics.* static class, all component properties, PhysicsMaterial asset creation.
Actions by category:
add_rigidbody, configure_rigidbodyadd_collider, configure_collider, fit_collidercreate_physics_material, configure_physics_materialadd_joint, configure_joint, remove_jointget_settings, set_settings, get_collision_matrix, set_collision_matrixsimulate_step, sync_transformsraycast, overlap_sphereDead ends: Physics callbacks don't fire in editor simulation. Can't simulate individual objects. Physics debug viz is internal.
manage_input — Input System| Dimension | Assessment |
|---|---|
| Value | High |
| Complexity | Medium-Low |
| Actions | ~18 |
| Dependencies | com.unity.inputsystem (must install) |
| Audience | ~95% of games |
Why: Every game needs input. Tedious manual setup. Perfect for presets ("set up FPS controls with gamepad support").
Key APIs: InputActionSetupExtensions — clean fluent API. InputActionAsset is a ScriptableObject serialized as JSON. All public.
Actions: create_input_actions, get_input_actions_info, add_action_map, remove_action_map, add_action, remove_action, set_action_properties, add_binding, add_composite_binding, remove_binding, add_control_scheme, remove_control_scheme, setup_player_input, create_preset (fps, third_person, platformer, vehicle, ui), ping
Dead ends: InputSettings modification is fragile. Active input handler switching requires restart. Generated C# wrapper class toggling is fragile.
manage_navigation — NavMesh & AI Navigation| Dimension | Assessment |
|---|---|
| Value | High |
| Complexity | Low-Medium |
| Actions | ~22 |
| Dependencies | None (core) + com.unity.ai.navigation (optional) |
| Audience | ~70% of 3D games |
Why: Navigation is fundamental. NavMesh baking is a pain point for beginners. Enables complete AI character workflow.
Key APIs: Core NavMesh.* static methods are built-in (no package). NavMeshSurface/NavMeshLink/NavMeshModifier from AI Navigation package (optional).
Actions: navmesh_bake, navmesh_clear, navmesh_sample_position, navmesh_calculate_path, navmesh_raycast, agent_add, agent_configure, agent_set_destination, obstacle_add, obstacle_configure, surface_add, surface_configure, link_add, link_configure, modifier_add, modifier_volume_add, ping, etc.
Resource: mcpforunity://scene/navigation
Dead ends: Can't create new NavMesh area types programmatically. No visual NavMesh debugging API.
manage_terrain — Terrain System| Dimension | Assessment |
|---|---|
| Value | High |
| Complexity | Medium |
| Actions | ~24 |
| Dependencies | None (core Unity) |
| Audience | ~40% of 3D games |
Why: Enables prompt-driven terrain generation. "Create mountainous terrain with snow above 80% height" becomes possible. Procedural generation (Perlin, height/slope-based painting) is the killer feature.
Key APIs: TerrainData.SetHeights/GetHeights, SetAlphamaps, SetHoles, tree/detail placement. All public.
Actions: create_terrain, get_info, get_heights, set_heights, generate_heights (Perlin, ridged, fbm), flatten, smooth_heights, add_layer, paint_layer, paint_layer_by_height, paint_layer_by_slope, set_tree_prototypes, add_trees, scatter_trees, set_detail_prototypes, scatter_details, set_holes, set_neighbors, set_settings, ping
Critical design: Heightmap operations must be region-based (never full map). Procedural generation runs C#-side. Large data stays server-side.
manage_timeline — Timeline System| Dimension | Assessment |
|---|---|
| Value | High |
| Complexity | Medium |
| Actions | ~25 |
| Dependencies | com.unity.timeline (included by default) |
| Audience | ~35% of games |
Why: Unlocks programmatic cutscene/sequence construction — a unique AI workflow. "Create a 10-second cutscene where the camera pans, the door opens at 2s, and music fades in at 5s."
Key APIs: TimelineAsset.CreateTrack<T>(), TrackAsset.CreateClip<T>(), PlayableDirector.SetGenericBinding(), SignalAsset/Emitter/Receiver. All public, remarkably complete.
Actions: create_timeline, get_timeline_info, add_track, remove_track, add_clip, set_clip_properties, move_clip, setup_director, set_binding, get_bindings, set_director_properties, create_signal, add_signal_emitter, setup_signal_receiver, add_group, ping
Synergies: manage_animation (clips), manage_camera (Cinemachine bindings), manage_scene.
manage_netcode — Networking / Multiplayer| Dimension | Assessment |
|---|---|
| Value | High |
| Complexity | Medium |
| Actions | ~20 |
| Dependencies | com.unity.netcode.gameobjects |
| Audience | ~64% of developers |
Why: Largest untapped audience. Zero competition in MCP space. Networking setup is error-prone and boilerplate-heavy.
Key APIs: NetworkManager, NetworkObject, NetworkTransform, NetworkAnimator, NetworkRigidbody — all standard MonoBehaviours. NetworkPrefabsList — ScriptableObject.
Actions: setup_create_manager, setup_configure_manager, prefab_create_list, prefab_register, prefab_make_network, component_add_network_object, component_add_network_transform, component_add_network_animator, component_add_network_rigidbody, codegen_network_behaviour, codegen_player_controller, validate, list_network_objects, ping
Unique value: Code generation for NetworkBehaviour scripts with RPCs, NetworkVariable<T> declarations. The validate action catches common misconfigurations before runtime.
manage_build — Build Pipeline| Dimension | Assessment |
|---|---|
| Value | Very High |
| Complexity | Medium-High |
| Actions | ~15 |
| Dependencies | None (Addressables optional) |
Why: Essential for CI/CD workflows, platform management, and project configuration.
Actions: build_player, build_status, switch_platform, get_platform, get_player_settings, set_player_settings, get_define_symbols, set_define_symbols, get_build_scenes, set_build_scenes, get_build_profile, set_build_profile, list_build_profiles, ping
Challenge: BuildPipeline.BuildPlayer is synchronous and blocks the editor thread. Non-blocking actions (PlayerSettings, define symbols) are straightforward. Build triggering needs EditorApplication.delayCall + poll-based status.
manage_addressables — Addressable Assets| Dimension | Assessment |
|---|---|
| Value | High |
| Complexity | Medium |
| Actions | ~23 |
| Dependencies | com.unity.addressables |
Why: Unity's recommended asset management for any project needing dynamic loading, DLC, or reduced build sizes.
Actions: group_create, group_remove, group_list, entry_add, entry_remove, entry_move, entry_set_address, entry_find, label_add, label_remove, label_list, label_set, profile_list, profile_get, profile_set, profile_set_active, build_content, build_update, build_clean, get_settings, set_settings, ping
Resources: mcpforunity://addressables/groups, mcpforunity://addressables/settings
manage_xr — XR / VR / AR| Dimension | Assessment |
|---|---|
| Value | Medium-High |
| Complexity | HIGH |
| Actions | ~25 |
| Dependencies | 3-6 packages |
| Audience | ~18% of developers |
Why: XR setup is notoriously painful. Meta has 10 tools but only covers Meta-specific SDK — cross-platform XRI, AR Foundation, and project-level setup are our opportunity.
Recommendation: Target XRI 3.0+ only. Focus on project setup + XR Origin creation first. Defer AR Foundation to later phase. Requires manage_packages first.
manage_tilemap — 2D Tilemap (split from broader 2D)| Dimension | Assessment |
|---|---|
| Value | Medium-High |
| Complexity | Medium |
| Actions | ~15 |
| Dependencies | None (core) + optional extras |
Why: Tilemap is the highest-value subset of 2D tooling. AI-assisted tilemap population is a strong use case.
Actions: create, set_tile, set_tiles, fill_region, clear, get_info, swap_tile, add_collider, tile_create, tile_create_rule, ping
manage_optimization — Scene Optimization| Dimension | Assessment |
|---|---|
| Value | Medium |
| Complexity | Medium |
| Actions | ~10 |
| Dependencies | None (core Unity) |
Actions: set_static_flags, get_static_flags, set_static_flags_recursive, occlusion_bake, occlusion_cancel, occlusion_status, occlusion_clear, configure_lod, get_lod_info, auto_lod
| # | Tool | Value | Complexity | Deps | Actions | Audience |
|---|---|---|---|---|---|---|
| 1 | manage_packages | Very High | Medium | 0 | 14 | 100% |
| 2 | QoL extensions | High | Low | 0 | ~15 | 100% |
| 3 | manage_physics | High | Low-Med | 0 | 18 | 90% |
| 4 | manage_input | High | Med-Low | 1 | 18 | 95% |
| 5 | manage_navigation | High | Low-Med | 0-1 | 22 | 70% |
| 6 | manage_terrain | High | Medium | 0 | 24 | 40% |
| 7 | manage_timeline | High | Medium | 1 | 25 | 35% |
| 8 | manage_netcode | High | Medium | 1-2 | 20 | 64% |
| 9 | manage_build | Very High | Med-High | 0 | 15 | 100% |
| 10 | manage_addressables | High | Medium | 1 | 23 | 30% |
| 11 | manage_xr | Med-High | HIGH | 3-6 | 25 | 18% |
| 12 | manage_tilemap | Med-High | Medium | 0-2 | 15 | 25% |
| 13 | manage_optimization | Medium | Medium | 0 | 10 | 50% |
| Feature | Reason |
|---|---|
| Shader Graph node creation | Internal API, no public editor scripting |
| VFX Graph node editing | Internal visual graph API |
| Terrain brush stroke simulation | UI-based painting system, no programmatic API |
| XR runtime testing | Requires headset or Play mode |
| Multiplayer session testing | Requires multiple Play mode instances |
| Physics callbacks in editor sim | Unity blocks for safety |
| Tile Palette editing | No public API |
| 2D Animation bone rigging | Deep, undocumented editor API |
| Unity Cloud Build | Separate REST API, not Editor scripting |
| Frame Debugger window | Internal editor utility |
| Custom NavMesh area creation | Hard-coded to 32 slots, no creation API |
manage_packages (Tier 1)
|
+---> manage_input (requires com.unity.inputsystem)
+---> manage_netcode (requires com.unity.netcode.gameobjects)
+---> manage_addressables (requires com.unity.addressables)
+---> manage_xr (requires 3-6 packages)
+---> manage_timeline (usually pre-installed)
+---> manage_navigation (optional com.unity.ai.navigation)
No package dependency:
manage_physics, manage_terrain, manage_build,
manage_optimization, QoL extensions, manage_tilemap (core)
Generated 2026-03-08 by 6 parallel research agents analyzing Unity 6 APIs, documentation, forums, and source references.