Unity MCP Server
It gives MCP clients read-only, editor-free access to inspect a Unity project’s files, settings, assets, code, scenes, and prefabs.
Read project/build/player settings, packages, quality, physics, audio, navigation, XR, input, tags/layers, scripting defines, version control, cloud, and CI configs.
Explore C# code and assemblies: list scripts/asmdefs, find scripts by content, map assemblies to paths, list assembly references/dependency graph, and list editor/test scripts.
Inspect scenes and prefabs: list scenes, summarize scenes/prefabs, query GameObjects by component/tag, flatten hierarchy, get lighting info, list prefab variants/components, and read prefab script GUIDs.
Browse assets and references: folder tree, search by name/extension, find references, detect broken asset refs, read .meta/texture metadata, find large assets, and list ScriptableObjects.
Inventory materials, shaders, shader/VFX graphs, render pipelines, animation assets, audio assets/mixers, sprite/tilemap assets, TMP/UI documents, and input actions.
Discover Addressables/localization and integrations such as PlayFab, Firebase, Steam, Discord, FMOD, Wwise, analytics/crash/ads, Git LFS, and Plastic SCM.
Read project docs, README/CHANGELOG, agent docs, and CI configuration.
List Unity Hub projects even without a configured project path.
Provides structured access to Unity projects, allowing agents to query project metadata, retrieve build settings and scene lists, and read project-specific documentation without requiring the Unity Editor.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Unity MCP Server Show me the Unity version and the scenes in the build order."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Unity MCP Server
MCP server for Unity — Gives AI assistants structured access to your Unity project from any MCP-capable IDE or app. No Unity Editor required.
Your IDE talks to this server; the server reads your Unity project folder and answers with project info, build scenes, scripts, prefabs, and more — so the AI can help without opening the Editor.
Overview
Editor-free — Reads only from the project filesystem.
One server, many projects — Set
UNITY_PROJECT_PATHper project in your MCP config.MCP-native — Works with any client that supports the Model Context Protocol (tools over stdio).
Related MCP server: Unity MCP Server
Supported IDEs and clients
This server uses the standard MCP protocol over stdio and exposes tools. Any IDE or app that can run an MCP server and pass environment variables will work. Commonly used clients include:
Client | Notes |
Cursor | Add server to MCP settings; set |
Claude Desktop | Add to |
Claude Code | MCP support including tools. |
VS Code | Use an MCP extension (e.g. GenAI / Copilot MCP); configure server and |
Windsurf | Add MCP server with command and env. |
Continue | Configure MCP server in Continue settings. |
Cline | MCP tools and resources. |
Other | Any client that supports MCP tools over stdio (e.g. Zed, Roo Code, LibreChat, custom agents). |
Configuration is the same everywhere: command = node, args = path to dist/index.js, env = UNITY_PROJECT_PATH = your Unity project root. See Configuration below for a Cursor example; other clients use the same structure in their own config format.
Tools
Expand a category below to see the tools it includes.
Tool | Description | Example prompt to type |
| Path, Unity version, build scene count, player/product name | "What's my project path and Unity version?" · "Show build scene count and player name" |
| Scenes in EditorBuildSettings (build order) | "Which scenes are in the build?" · "List build scenes in order" |
| Product name, company, bundle ID, version | "What are the player settings?" · "Show bundle ID and company name" |
| Packages from manifest.json | "List installed Unity packages" |
| Quality levels | "What are the quality settings?" |
| Global and per-assembly defines | "Show scripting defines" · "What defines are set per assembly?" |
| Physics / Physics2D settings | "What are the physics settings?" |
| Graphics settings (GraphicsSettings.asset) | "Show graphics settings" |
| Time / fixed timestep (TimeManager.asset) | "What's the fixed timestep?" · "Show time settings" |
| Active build target / platform | "What's the current build target?" |
| Infer Unity 6 feature sets from packages (2D, ECS, AR, etc.) | "What feature sets does this project use?" |
| Bundle version | "What's the bundle version?" |
| CHANGELOG contents | "Show the changelog" |
| AudioManager.asset (global volume, reverb, DSP buffer) | "What are the audio settings?" |
| NavMesh/agent settings from ProjectSettings | "Show NavMesh / navigation settings" |
| XR/VR project settings | "What XR or VR settings are configured?" |
| Script execution order (MonoManager) | "Show script execution order" |
| Serialization mode, visible meta files | "What's the version control / serialization setup?" |
| Layer collision matrix and layer names | "Show layer collision matrix" · "What layers collide?" |
| Unity Cloud / Unity Connect config | "Is Unity Cloud configured?" |
| Package dependency graph (manifest + lock) | "Show package dependency graph" |
| Samples folders under Packages | "List package samples" |
| List Unity projects from Unity Hub (no project path required) | "List my Unity Hub projects" |
Tool | Description | Example prompt to type |
| Assembly definitions with references, platforms | "List assembly definitions" |
| Assembly that contains a given script or folder path | "Which assembly contains Assets/Scripts/Player.cs?" |
| C# script paths in a given assembly (by name or asmdef path) | "List scripts in Assembly-CSharp" · "What scripts are in MyGame.Runtime?" |
| Assembly names that reference a given assembly (reverse deps) | "Who depends on MyGame.Core?" |
| C# scripts (optional folder filter) | "List all C# scripts" · "Show scripts in Assets/Scripts" |
| By type/pattern (e.g. MonoBehaviour) | "Find scripts that extend MonoBehaviour" |
| Nodes and edges | "Show assembly dependency graph" |
| Scripts in Editor folders | "List editor scripts" |
| Bolt / Unity Visual Scripting .asset files | "List Visual Scripting assets" |
| Parse C# script: class name, base type, public methods/fields | "What's the public API of PlayerController.cs?" |
Tool | Description | Example prompt to type |
| All .unity files under Assets | "List all scenes" |
| Root GameObjects, component count | "Summarize MainMenu.unity" · "What's in this scene?" |
| GameObjects in a scene with a component type (e.g. Camera, Light) | "Which GameObjects have a Camera in Game.unity?" |
| GameObjects in a scene with a given tag (e.g. Spawn) | "Find objects with tag Spawn in this scene" |
| All Cameras/Lights/etc. across all scenes | "List all Cameras in the project" |
| Flat list of GameObjects in a scene (name and layer) | "List all objects in Main.unity with their layers" |
| Lighting assets and GI workflow mode for a scene | "What lighting does Main.unity use?" |
| Prefabs (optional path prefix) | "List all prefabs" · "List prefabs in Assets/Prefabs" |
| Prefabs that are variants of another prefab | "List prefab variants" |
| Prefabs that contain a component type (e.g. Animator) | "Which prefabs have an Animator?" |
| Prefab summary: root name, component count, component types | "Summarize Hero.prefab" · "What's in this prefab?" |
| Script GUIDs used by a prefab | "What scripts does Hero.prefab use?" |
| ECS/DOTS .subscene assets | "List subscenes" |
Tool | Description | Example prompt to type |
| Folder tree under Assets | "Show asset folder tree" |
| By extension (e.g. .png, .fbx) | "List all .png textures" · "List FBX models" |
| Assets referencing a path or GUID | "What references this asset?" · "Find what uses Assets/Textures/hero.png" |
| Files over N MB (default 5) | "List large assets" · "What's over 10 MB?" |
| Video clip assets (.mp4, .mov, .webm, etc.) | "List video clips" |
| Legacy fonts (.fontsettings, .ttf, .otf) — not TMP | "List legacy fonts" |
| RenderTexture assets | "List render textures" |
| TerrainData and TerrainLayer assets | "List terrain data" |
| Lighting-related .asset files | "List lighting settings assets" |
| Search Assets (and optionally Packages) by name pattern | "Search assets named 'hero'" |
| Texture .meta (maxSize, dimensions, spriteMode, PPU) | "What's the import settings for hero.png?" |
| Combined search: name pattern, script pattern, and/or referrers of path | "Search project for X" · "What references this path?" |
| Read .meta for any asset path (guid, importer keys) | "Show .meta for Assets/Models/character.fbx" |
| Prefabs/scenes/materials with any missing GUID reference | "Find broken asset references" |
| .asset files that are ScriptableObject instances | "List all ScriptableObject assets" |
Tool | Description | Example prompt to type |
| Materials (optional folder) | "List all materials" · "List materials in Assets/Materials" |
| Materials that use a given shader (GUID or path) | "Which materials use Standard shader?" |
| .shader in Assets and Packages | "List shaders" |
| Shader Graph assets | "List Shader Graph assets" |
| VFX Graph assets | "List VFX Graph assets" |
Tool | Description | Example prompt to type |
| .controller assets | "List animator controllers" |
| .anim assets | "List animation clips" |
| State names from a controller | "What states are in Player.controller?" |
| State names and from/to transitions from a controller | "Show animator transitions in Player.controller" |
| Timeline .playable assets | "List Timeline playables" |
| Avatar Mask (.mask) assets | "List avatar masks" |
| AnimatorOverrideController assets | "List animator override controllers" |
Tool | Description | Example prompt to type |
| Sprite Atlas assets | "List sprite atlases" |
| Tilemap-related assets | "List tilemap assets" |
| Textures configured as sprites (spriteMode in .meta) | "List sprite assets" |
Tool | Description | Example prompt to type |
| URP/HDRP pipeline assets, volume profiles | "List render pipelines" · "What URP/HDRP assets are there?" |
Tool | Description | Example prompt to type |
| TMP/font assets | "List TextMeshPro fonts" |
| TMP Settings asset path | "Where is TMP Settings?" |
| .uxml and .uss (UI Toolkit) | "List UI Toolkit documents" · "List UXML and USS files" |
Tool | Description | Example prompt to type |
| InputManager axes | "What's in the Input Manager?" · "Show input axes" |
| New Input System .inputactions | "List Input System action assets" |
| Action maps and actions from a file | "Summarize Player.inputactions" |
Tool | Description | Example prompt to type |
| Tags and layers from TagManager | "Show tags and layers" |
Tool | Description | Example prompt to type |
| Groups and config path | "What Addressables groups are there?" |
| Localization table files | "List localization tables" |
Tool | Description | Example prompt to type |
| .wav, .mp3, .ogg, .aiff | "List audio clips" |
| Audio Mixer assets | "List audio mixers" |
Tool | Description | Example prompt to type |
| Test assembly definitions | "List test assemblies" |
| README, CONTRIBUTING, .cursorrules, etc. | "Show repo docs" · "What's in the README?" |
| .agents/AGENT.md, optional REPO_UNDERSTANDING.md | "Read agent docs" · "Show AGENT.md" |
Tool | Description | Example prompt to type |
| .github/workflows, Jenkinsfile, unity-cloud-build | "List CI configs" · "Show GitHub workflows" |
| .preset assets | "List presets" |
| LFS patterns from .gitattributes | "What does Git LFS track?" |
| Plastic SCM config | "Show Plastic SCM config" |
Tool | Description | Example prompt to type |
| Title ID, config paths | "Is PlayFab configured?" |
| Figma folder / named assets | "List Figma-related assets" |
| GoogleServices path, project ID | "Show Firebase config" |
| steam_appid.txt, Steamworks path | "Is Steam configured?" |
| Discord SDK path | "Show Discord config" |
| Banks path, bank files | "Show FMOD config" |
| Sound banks, project paths | "Show Wwise config" |
| .sbsar, .sbs | "List Substance assets" |
| .spm, .stm | "List SpeedTree assets" |
| Lottie JSON assets | "List Lottie assets" |
| Sentry, Crashlytics, BugSnag, etc. | "What analytics or crash reporting is set up?" |
| Unity Ads, AdMob, ironSource presence | "Is ads SDK configured?" |
| Netcode / multiplayer packages and scripts | "What multiplayer stack does this use?" |
| Unity Gaming Services / Cloud Code inventory | "Is UGS or Cloud Code set up?" |
Tool | Description | Example prompt to type |
| Unity 6 Build Profile assets | "List build profiles" |
| Unity Physics / Physics Core 2D / classic physics | "Audit the physics stack" |
| Adaptive Performance + Project Auditor | "Is Adaptive Performance installed?" |
| Accessibility APIs and packages | "Any accessibility APIs in use?" |
| Cinemachine cameras and related assets | "List Cinemachine assets" |
| Android/WebGL PlayerSettings snippets | "Show platform build hints" |
| BIRP vs URP/HDRP migration risk | "Are we still on Built-in RP?" |
| Localization package + locale tables | "Audit localization setup" |
Tool | Description | Example prompt to type |
| One-shot stats: scripts, prefabs, scenes, materials, animations, assemblies, packages | "Give me project stats" · "How many prefabs and scenes?" |
| Asset paths referenced by a scene (build size / impact) | "What assets does Main.unity reference?" |
| Circular refs in assembly definitions (fix compile errors) | "Detect assembly cycles" · "Any circular assembly refs?" |
| C# files that reference a type/class name (refactoring) | "Find references to PlayerController" |
| Prefabs/scenes with missing script refs | "Find prefabs with missing script" |
| Asset paths referenced by a prefab (impact analysis) | "What does Hero.prefab depend on?" |
| One-shot: version, build scenes, packages, broken refs, cycles, large assets | "Is the project release ready?" · "Run release readiness check" |
| Build size estimate: total size and largest assets from build scenes | "What's the build size?" · "Show largest assets in the build" |
Tool | Description | Example prompt to type |
| One-shot AI audit: packages, models, scripts, ML-Agents YAMLs | "What AI does this project use?" · "Run an AI stack audit" |
| ML-Agents, Sentis, Barracuda, AI Navigation, Muse, Unity AI | "List AI/ML Unity packages" |
|
| "List ONNX models in the project" |
| C# with Sentis, ML-Agents, NavMesh, behavior trees, LLM APIs | "Which scripts use ML-Agents or Sentis?" |
| ML-Agents trainer YAML configs | "Find ML-Agents training configs" |
| Prompt/RAG-like JSON or MD under Assets | "Any LLM prompt assets in Assets?" |
| Unity AI platform: Muse/Assistant/Inference/Building Blocks packages + settings | "Audit the Unity AI platform setup" |
| Unity 6.3 LTS Building Blocks packages + sample assets | "List Building Blocks in this project" |
| On-device models: | "List on-device inference models" |
| In-game LLM patterns: HTTP/SSE/WebSocket/key handling (no secrets read) | "Audit in-game LLM usage" |
| Bundled skills by Unity domain (39: scenes, multiplayer, build profiles, …) | "List Unity skills" |
| Read skill by id (e.g. | "Read the unity-ai-audit skill" |
Tool | Description | Example prompt to type |
| Unity Test Runner XML results (NUnit/JUnit) in the project | "List test result files" |
| Totals passed/failed/skipped with failing test names | "Summarize test results" · "Which tests are failing?" |
| Local Editor.log compile/runtime/test/build errors (machine-local) | "Show Editor log errors" |
| Saved build reports (BuildReport JSON/text, build logs) | "List build reports" |
| Size/errors/warnings from newest (or chosen) build report | "Summarize the latest build report" |
Tool | Description | Example prompt to type |
| GUIDs in multiple groups + optional profile path notes | "Find duplicate Addressables" |
| Variant pragma counts, top shaders by material usage | "Audit shader variant risk" |
| Duplicate Input System bindings in the same map | "Find input binding conflicts" |
| XR rig/origin/interaction-manager markers per scene | "Validate XR setup" |
| ServerRpc/ClientRpc/NetworkVariable markers + ownership hints | "Audit Netcode RPC usage" |
| Scenes with NavMesh markers, settings, agent scripts | "Check NavMesh bake state" |
| LODGroup/occlusion markers per scene | "Check LOD and occlusion coverage" |
| 2048+ caps, Read/Write textures, missing mipmaps, Crunch | "Find heavy texture imports" |
| PCM vs Vorbis, streaming vs compressed, music candidates | "Audit audio compression" |
| Playables vs bound directors + Signal coverage | "Check Timeline bindings" |
| Assets not referenced by build scenes (review only) | "Estimate unused assets" |
Tool | Description | Example prompt to type |
| Bridge status — disabled unless | "Is the live bridge enabled?" |
| Fetch live Editor state ( | "Fetch live hierarchy" |
Bridge is localhost-only and read-first. Default install stays Editor-free; set UNITY_MCP_BRIDGE_URL=http://127.0.0.1:8091 (or UNITY_MCP_BRIDGE_PORT) only when you run the companion Editor listener.
Tool | Description | Example prompt to type |
| Find relevant tools by intent (e.g. find references, missing script). Omit query to list all tools by category. | "What Unity tools do you have?" · "Find tools for references" · "List all tools by category" |
Using search_tools — Pass an optional query to filter tools by name, description, or category. Omit query to get the full catalog grouped by category.
Intent | Example query | Tools you get (conceptually) |
Find what references an asset |
|
|
Fix missing script on prefabs |
|
|
Work with textures |
|
|
List or inspect prefabs |
|
|
Scenes and build order |
|
|
C# scripts and APIs |
|
|
Animation |
|
|
List everything (no filter) | (omit query) | All tools, grouped by category |
All tools read from the project filesystem only.
Real-life examples
Copy-paste these into Claude, Cursor, or any MCP client (with this server configured and UNITY_PROJECT_PATH set). The AI will pick the right tools.
Role | Example prompt |
Developer | "Which assembly contains Assets/Scripts/Player.cs?" · "List scripts in MyGame.Runtime" · "Who depends on MyGame.Core?" · "Are there assembly dependency cycles?" · "Run release readiness check" |
Tester | "Which scenes are in the build?" · "List assemblies that have test in the name" · "Is the project release ready?" · "What's the build size and largest assets?" |
Game developer | "Which prefabs have an Animator?" · "Summarize Hero.prefab" · "Show animator transitions in Player.controller" · "List input action assets" |
Game designer | "Which materials use Standard shader?" · "List all ScriptableObject assets" · "Summarize Main.unity" · "What lighting does Main.unity use?" · "List all objects in Main.unity with their layers" |
What to type in Claude / Cursor or any other MCP Client
In Claude, Cursor, or any MCP client, ask in natural language; the AI picks the right tool. Use the Example prompt to type column in each tools table above — those are the phrases to type in chat to get that result.
Prerequisites
Node.js 18+
UNITY_PROJECT_PATH — Absolute path to your Unity project root (set in your MCP client)
Installation
git clone https://github.com/rachitkumarrastogi/unity-mcp-server.git
cd unity-mcp-server
npm install
npm run buildThe server uses stdio; your MCP client starts it automatically.
Configuration
Example for Cursor (same idea for Claude Desktop, VS Code + MCP, Windsurf, etc.):
{
"mcpServers": {
"unity": {
"command": "node",
"args": ["/absolute/path/to/unity-mcp-server/dist/index.js"],
"env": {
"UNITY_PROJECT_PATH": "/absolute/path/to/YourUnityProject"
}
}
}
}Replace the paths with your actual paths. For Claude Desktop, add an entry under mcpServers in claude_desktop_config.json with the same command, args, and env. For VS Code, use your MCP extension’s config to add the server and UNITY_PROJECT_PATH. Other clients follow the same pattern in their own config files.
Development
Run built:
node dist/index.jsRun dev:
npm run devornpx tsx src/index.tsRun tests:
npm test(builds, then runs Node's built-in test runner overtests/)
Integration with Unity Editor
Current workflow: The AI runs inside your IDE (Cursor, VS Code with MCP, Claude Desktop, Windsurf, or another MCP-capable client). This server provides the AI with read-only access to your project (scenes, scripts, settings, and related assets). You run Unity Editor separately to open scenes, enter Play mode, and build. The AI uses the server to inspect the project and to suggest changes, answer questions, and assist with refactoring.
Future compatibility: This server implements the standard MCP protocol over stdio and requires a single environment variable (
UNITY_PROJECT_PATH). If Unity Editor gains built-in MCP client support, you could connect it to this server using the same configuration: commandnode, arguments pointing todist/index.js, andUNITY_PROJECT_PATHset in the environment. No changes to this codebase would be required.
Security
This repository does not include game code, assets, or secrets. The Unity project path is supplied at runtime by your MCP client. The server is suitable for public and private use.
Documentation
MCP Registry — Discover and install this server from the official registry.
Guides: Quick start · Publish · Tools by role
Skills: Unity-domain agent skills
Changelog: CHANGELOG.md
Available Tools
156 toolsbridge_live_fetchB
Fetch live Editor state via the opt-in localhost bridge (e.g. /hierarchy, /console, /screenshot). Refused when bridge disabled.
Inputs: path (required).
detect_assembly_cyclesB
Detect circular references in assembly definitions. Speeds up fixing compile errors.
Inputs: no named parameters.
find_referencesA
Find all assets (scenes, prefabs, materials, etc.) that reference the given asset. Pass asset path (e.g. Assets/Texture.png) or GUID.
Inputs: asset_path_or_guid (required).
find_script_referencesC
Find C# files that reference a type/class name. Speeds up refactoring.
Inputs: type_or_class_name (required).
find_scripts_by_contentB
Find C# scripts that contain a type or pattern (e.g. MonoBehaviour, ScriptableObject, or custom). Optionally filter by namespace.
Inputs: pattern (required), namespace_filter.
get_accessibility_stackC
Accessibility module/package presence and AccessibilityNode / AssistiveSupport script hits.
Inputs: no named parameters.
get_addressables_duplicatesB
Addressables duplicate check: asset GUIDs in multiple groups + optional profile path notes.
Inputs: include_profiles.
get_addressables_infoA
Get Addressables groups and config path if the project uses Addressables.
Inputs: no named parameters.
get_ads_configA
Detect ad SDK presence (Unity Ads, AdMob, ironSource).
Inputs: no named parameters.
get_ai_ml_package_inventoryB
List Unity AI/ML packages in manifest (ML-Agents, Sentis, Barracuda, AI Navigation, Muse, Unity AI).
Inputs: no named parameters.
get_ai_stack_summaryB
One-shot AI stack summary: packages, model files, script hits, ML-Agents configs. Set include_prompt_assets for prompt-like JSON/MD scan.
Inputs: include_prompt_assets.
get_all_components_by_typeA
Get all occurrences of a component type across all scenes (scene path + GameObject name).
Inputs: component_type (required).
get_analytics_or_crash_configA
Detect analytics/crash reporting services (Unity, Sentry, Crashlytics, BugSnag).
Inputs: no named parameters.
get_animator_statesB
Get state names from an Animator Controller (.controller) file.
Inputs: controller_path (required).
get_animator_transitionsB
Get state names and transitions (from/to) from an Animator Controller.
Inputs: controller_path (required).
get_assembly_dependency_graphB
Get assembly definition dependency graph (nodes and edges).
Inputs: no named parameters.
get_assembly_for_pathA
Get the assembly (asmdef name and path) that contains the given asset path (script or folder).
Inputs: asset_path (required).
get_asset_folder_treeA
Get a tree of Assets folder (directories and file names). Useful for understanding project layout.
Inputs: max_depth.
get_audio_loudness_riskC
Audio mix risk: PCM vs Vorbis balance, streaming vs compressed-in-memory, music-length candidates.
Inputs: no named parameters.
get_audio_settingsA
Get AudioManager.asset (global volume, reverb, DSP buffer).
Inputs: no named parameters.
get_bridge_statusA
Live Editor bridge status: enabled only when UNITY_MCP_BRIDGE_URL/PORT points at 127.0.0.1. Default disabled.
Inputs: no named parameters.
get_broken_asset_refsA
List prefabs, scenes, materials with any missing GUID reference (not only scripts).
Inputs: no named parameters.
get_broken_script_refsB
List prefabs/scenes that reference a script GUID with no .cs in project (missing script refs).
Inputs: no named parameters.
get_build_report_summaryA
Summarize a build report: size, scenes, errors/warnings. Defaults to newest report.
Inputs: top_n, report_path.
get_build_size_estimateA
Estimate build size: aggregate assets referenced by all build scenes, total size and largest assets.
Inputs: top_n.
get_build_target_infoB
Get active build target / platform from ProjectSettings.
Inputs: no named parameters.
get_changelogA
Read CHANGELOG.md or CHANGELOG if present.
Inputs: no named parameters.
get_cloud_services_configA
Get Unity Cloud / Unity Connect config if present.
Inputs: no named parameters.
get_discord_configA
Detect Discord SDK path in Plugins.
Inputs: no named parameters.
get_editor_log_errorsA
Tail the local Unity Editor.log for compile/runtime/test/build errors. Machine-local only, never uploads.
Inputs: max_lines, max_errors.
get_feature_set_inferenceB
Infer which Unity 6 feature sets (2D, ECS, AR, etc.) are used from package manifest.
Inputs: no named parameters.
get_firebase_configA
Get Firebase config (GoogleServices path, project ID). No secrets.
Inputs: no named parameters.
get_fmod_configB
Get FMOD config (banks path, bank files).
Inputs: no named parameters.
get_git_lfs_trackedB
Get Git LFS patterns from .gitattributes.
Inputs: no named parameters.
get_graphics_settingsB
Get Graphics settings (ProjectSettings/GraphicsSettings.asset).
Inputs: no named parameters.
get_input_actions_summaryB
Get action maps and actions from an .inputactions file.
Inputs: path (required).
get_input_axesA
Get input axes from InputManager (name, descriptive name, positive button).
Inputs: no named parameters.
get_input_conflictsA
New Input System conflict scan: duplicate bindings inside the same action map.
Inputs: no named parameters.
get_layer_collision_matrixB
Get layer collision matrix and layer names from TagManager/DynamicsManager.
Inputs: no named parameters.
get_lighting_scene_infoB
Get lighting-related info for a scene: referenced lighting assets and GI workflow mode if present.
Inputs: scene_path (required).
get_llm_runtime_inventoryB
In-game LLM patterns: HTTP calls, SSE/streaming, WebSockets, API-key handling, chat memory, retry. No secrets read.
Inputs: no named parameters.
get_localization_stackA
Localization package + Locale/StringTable assets (broader than get_localization_tables).
Inputs: no named parameters.
get_localization_tablesA
List localization table files under Assets/Localization if present.
Inputs: no named parameters.
get_lod_occlusion_coverageB
LOD/Occlusion coverage: scenes with LODGroup/occlusion markers for perf triage.
Inputs: no named parameters.
get_meta_for_assetA
Read .meta for any asset path (guid and key-value pairs).
Inputs: asset_path (required).
get_multiplayer_stackB
Detect Netcode / multiplayer packages and NetworkBehaviour-style scripts (NGO, Relay, Lobby, Mirror, Photon, …).
Inputs: no named parameters.
get_optimization_package_inventoryC
Adaptive Performance and Project Auditor packages, scaler assets, and script usage.
Inputs: no named parameters.
get_package_dependency_graphA
Get package dependency graph (nodes and edges from manifest + lock).
Inputs: no named parameters.
get_physics_settingsA
Get Physics/DynamicsManager or Physics2D settings (key-value).
Inputs: no named parameters.
get_physics_stackC
Physics packages (Unity Physics, Physics Core 2D), module hints, and Rigidbody/physics script hits.
Inputs: no named parameters.
get_plastic_configB
Get Plastic SCM config (.plastic, workspace name).
Inputs: no named parameters.
get_platform_build_hintsC
PlayerSettings snippets for Android/WebGL/etc., build target, and related packages (Unity 6 platform pass).
Inputs: no named parameters.
get_player_settingsB
Get Player/ProjectSettings (product name, company, bundle ID, version, etc.).
Inputs: no named parameters.
get_playfab_configA
Get PlayFab config (title ID, config paths) from project. No secrets.
Inputs: no named parameters.
get_prefab_dependenciesA
List asset paths referenced by a prefab. Helps impact analysis.
Inputs: prefab_path (required).
get_prefab_script_guidsB
Get script GUIDs (MonoBehaviour) referenced by a prefab.
Inputs: prefab_path (required).
get_prefab_summaryA
Get a short summary of a prefab: root name, component count, and component type names.
Inputs: prefab_path (required).
get_project_infoA
Get Unity project info: path, Unity version, build scene count, player/product name.
Inputs: no named parameters.
get_project_statsA
One-shot project stats: script count, prefabs, scenes, materials, animations, assemblies, packages.
Inputs: no named parameters.
get_project_versionB
Get project/bundle version from PlayerSettings.
Inputs: no named parameters.
get_quality_settingsA
Get QualitySettings (quality levels) from ProjectSettings.
Inputs: no named parameters.
get_release_readinessA
One-shot release readiness: version, build scene count, packages, broken refs, assembly cycles, large assets.
Inputs: no named parameters.
get_render_pipeline_migration_hintsB
Infer BIRP vs URP/HDRP and flag Built-in RP deprecation / migration risk (Unity 6.5+).
Inputs: no named parameters.
get_repo_docsA
Read README, CONTRIBUTING, .cursorrules, CODING_STANDARDS, STYLE if present at project root.
Inputs: no named parameters.
get_scene_components_by_typeA
Get GameObjects in a scene that have a given component type (e.g. Camera, Light).
Inputs: scene_path (required), component_type (required).
get_scene_hierarchy_flatA
Get a flat list of all GameObjects in a scene (name and layer).
Inputs: scene_path (required).
get_scene_objects_by_tagA
Get GameObjects in a scene that have a given tag (e.g. Spawn, Respawn).
Inputs: tag_name (required), scene_path (required).
get_scene_referenced_assetsB
List asset paths referenced by a scene (GUIDs resolved). Helps build size and impact.
Inputs: scene_path (required).
get_scene_summaryA
Get a short summary of a scene: root GameObject names and approximate component count.
Inputs: scene_path (required).
get_script_execution_orderA
Get script execution order (MonoManager: script GUID and order).
Inputs: no named parameters.
get_scripting_definesB
Get global and per-assembly scripting define symbols.
Inputs: no named parameters.
get_script_public_apiB
Parse a C# script and return class name, base type, public methods and fields (no Unity required).
Inputs: script_path (required).
get_shader_variant_riskB
Shader variant risk: multi_compile/shader_feature counts, top shaders by material usage, keyword stats.
Inputs: no named parameters.
get_steam_configB
Get Steam config (steam_appid.txt, Steamworks path).
Inputs: no named parameters.
get_tags_and_layersB
Get Tags and Layers from TagManager.
Inputs: no named parameters.
get_test_results_summaryB
Summarize Test Runner XML: totals passed/failed/skipped per file with failing test names.
Inputs: max_files.
get_texture_import_heavinessC
Texture import audit: 2048+ caps, Read/Write enabled, missing mipmaps, Crunch usage.
Inputs: top_n.
get_texture_metaA
Get texture .meta info (maxTextureSize, width/height, spriteMode, spritePixelsToUnits) for a texture path.
Inputs: texture_path (required).
get_timeline_balanceC
Timeline health: playable assets vs bound PlayableDirectors, Signal/Marker coverage.
Inputs: no named parameters.
get_time_settingsB
Get Time/Fixed timestep settings (TimeManager.asset).
Inputs: no named parameters.
get_tmp_settings_pathA
Get path to TMP Settings asset if present.
Inputs: no named parameters.
get_ugs_cloud_stackC
Unity Gaming Services / Cloud Code / Auth / Economy package and script inventory.
Inputs: no named parameters.
get_unity_ai_stackC
Unity AI platform audit: Muse/Assistant/Inference packages, AI-related ProjectSettings, hints.
Inputs: no named parameters.
get_unused_assets_estimateA
Unused-asset estimate: assets not referenced by build scenes (confirm via find_references; never auto-delete).
Inputs: top_n.
get_version_control_settingsA
Get Unity version control settings (serialization mode, visible meta files).
Inputs: no named parameters.
get_wwise_configB
Get Wwise config (sound banks, project paths).
Inputs: no named parameters.
get_xr_origin_validationB
XR scene validation: rig/origin/interaction-manager/teleport markers per scene.
Inputs: no named parameters.
get_xr_settingsB
Get XR/VR project settings (XRSettings.asset).
Inputs: no named parameters.
list_ai_prompt_or_config_assetsB
Heuristic scan for JSON/MD assets that look like prompts, RAG, or LLM config under Assets.
Inputs: no named parameters.
list_ai_skillsA
List bundled workflow skills by Unity domain (scenes, prefabs, assets, project, code, ai-ml, performance, …).
Inputs: no named parameters.
list_all_scenesA
List all .unity scene files under Assets (not only build-indexed).
Inputs: no named parameters.
list_animation_clipsB
List all Animation Clip (.anim) assets.
Inputs: no named parameters.
list_animator_controllersA
List all Animator Controller (.controller) assets.
Inputs: no named parameters.
list_animator_override_controllersB
List AnimatorOverrideController .controller assets.
Inputs: no named parameters.
list_asmdef_referencesA
List assembly names that reference the given assembly (reverse dependencies).
Inputs: assembly_name (required).
list_assembliesA
List assembly definitions (.asmdef) with path, name, references, platforms.
Inputs: no named parameters.
list_assets_by_extensionB
List assets by file extension (e.g. .png, .fbx, .mp3). Optionally under a folder.
Inputs: extension (required), folder.
list_audio_clipsA
List audio clip files (.wav, .mp3, .ogg, .aiff) under Assets.
Inputs: no named parameters.
list_audio_mixersB
List Audio Mixer (.mixer) assets.
Inputs: no named parameters.
list_avatar_masksA
List Avatar Mask (.mask) assets used by Animator.
Inputs: no named parameters.
list_building_blocksC
Unity 6.3 LTS Building Blocks: packages + sample assets with production-ready gameplay components.
Inputs: no named parameters.
list_build_profilesB
List Unity 6 Build Profile assets (plus whether classic EditorBuildSettings exists).
Inputs: no named parameters.
list_build_reportsB
List saved build reports (BuildReport JSON/text, build logs) in the project.
Inputs: no named parameters.
list_build_scenesA
List scenes in EditorBuildSettings (build order) as JSON.
Inputs: no named parameters.
list_ci_configsA
List CI config files (.github/workflows, Jenkinsfile, unity-cloud-build).
Inputs: no named parameters.
list_cinemachine_assetsC
Cinemachine package + virtual camera assets/prefabs under Assets.
Inputs: no named parameters.
list_editor_scriptsA
List C# scripts in Editor folders or with Editor in path.
Inputs: no named parameters.
list_inference_modelsC
On-device model assets: .onnx/.nn/.sentis/.pt/.tflite/.pb + .bytes with model markers.
Inputs: no named parameters.
list_input_action_assetsA
List New Input System .inputactions assets.
Inputs: no named parameters.
list_large_assetsA
List assets over a size threshold (default 5 MB).
Inputs: min_size_mb.
list_legacy_font_assetsA
List legacy font assets (.fontsettings, .ttf, .otf) — not TMP.
Inputs: no named parameters.
list_lighting_settings_assetsB
List lighting-related .asset files (LightingSettings, lightmap, etc.).
Inputs: no named parameters.
list_lottie_assetsB
List Lottie-related JSON assets.
Inputs: no named parameters.
list_materialsA
List .mat materials; optionally under a folder. Includes shader GUID when readable.
Inputs: folder.
list_materials_using_shaderA
List material paths that use a given shader (pass shader GUID or asset path).
Inputs: shader_guid_or_path (required).
list_ml_agents_training_configsA
Find ML-Agents trainer YAML configs in project root and common folders.
Inputs: no named parameters.
list_ml_model_assetsA
List ML model files under Assets (.onnx, .nn, .pt, .tflite, .pb).
Inputs: no named parameters.
list_packagesA
List Unity packages from Packages/manifest.json (and optional packages-lock.json).
Inputs: no named parameters.
list_package_samplesA
List Samples folders or sample paths under Packages.
Inputs: no named parameters.
list_prefabsA
List all .prefab files. Optionally filter by path prefix under Assets.
Inputs: path_prefix.
list_prefabs_with_componentA
List prefabs that contain a given component type (e.g. Animator, Rigidbody).
Inputs: component_type (required).
list_prefab_variantsC
List prefabs that are variants of another prefab.
Inputs: no named parameters.
list_presetsB
List .preset assets.
Inputs: no named parameters.
list_render_pipelinesB
List render pipeline assets and volume profiles (URP/HDRP).
Inputs: no named parameters.
list_render_texturesB
List RenderTexture (.renderTexture) assets.
Inputs: no named parameters.
list_scriptable_objectsA
List .asset files that are ScriptableObject instances (data assets).
Inputs: no named parameters.
list_scriptsA
List all C# scripts under Assets. Optionally filter by folder prefix (e.g. Scripts).
Inputs: folder.
list_scripts_by_assemblyA
List C# script paths that belong to a given assembly (by name or asmdef path).
Inputs: assembly_name_or_path (required).
list_shader_graphsA
List Shader Graph (.shadergraph) assets.
Inputs: no named parameters.
list_shadersA
List all .shader files in Assets and Packages.
Inputs: no named parameters.
list_speedtree_assetsA
List SpeedTree .spm and .stm assets.
Inputs: no named parameters.
list_sprite_assetsA
List textures configured as sprites (spriteMode in .meta).
Inputs: no named parameters.
list_sprite_atlasesA
List Sprite Atlas (.spriteatlas) assets.
Inputs: no named parameters.
list_subscenesB
List ECS/DOTS .subscene assets.
Inputs: no named parameters.
list_substance_assetsB
List Substance .sbsar and .sbs assets.
Inputs: no named parameters.
list_terrain_dataA
List TerrainData and TerrainLayer .asset files.
Inputs: no named parameters.
list_test_assembliesA
List assembly definitions that look like test assemblies (path contains test/editor).
Inputs: no named parameters.
list_test_result_filesA
Find Unity Test Runner XML results (NUnit/JUnit) in the project. No Editor required.
Inputs: no named parameters.
list_tilemap_assetsB
List tilemap-related .asset files.
Inputs: no named parameters.
list_timeline_playablesC
List Timeline .playable assets.
Inputs: no named parameters.
list_tmp_fontsA
List TMP/font-related assets.
Inputs: no named parameters.
list_ui_documentsC
List UI Toolkit .uxml and .uss files.
Inputs: no named parameters.
list_unity_hub_projectsA
List Unity Hub projects (basenames only by default; set UNITY_MCP_ALLOW_HUB_PATHS=1 for full paths). Does not require UNITY_PROJECT_PATH.
Inputs: no named parameters.
list_vfx_graphsA
List VFX Graph (.vfx) assets.
Inputs: no named parameters.
list_video_clipsB
List video clip assets (.mp4, .mov, .webm, .avi, .asf).
Inputs: no named parameters.
list_visual_scripting_assetsB
List Visual Scripting (Bolt/Unity) .asset files in Ludiq or com.unity.visualscripting.
Inputs: no named parameters.
read_agent_docsA
Read .agents/AGENT.md and optionally REPO_UNDERSTANDING.md.
Inputs: include_repo_understanding.
read_ai_skillA
Read a bundled skill by id from list_ai_skills (e.g. unity-scenes-workflow, unity-runtime-performance).
Inputs: skill_id (required).
scan_netcode_rpcB
Netcode RPC scan: ServerRpc/ClientRpc/NetworkVariable markers, unreliable delivery, ownership hints.
Inputs: max_files.
search_assets_by_nameA
Search Assets (and optionally Packages) by file or folder name pattern (e.g. Player, Menu).
Inputs: name_pattern (required), include_packages.
search_projectA
Combined search: by asset name pattern, script content pattern, and/or referrers of an asset path. Returns assets, scripts, and optionally referrers.
Inputs: name_pattern, script_pattern, include_packages, referrer_of_path.
search_toolsA
Find the most relevant tools by intent. Pass a query (e.g. find references, missing script, texture) to get matching tools with descriptions. Omit query to list all tools by category.
Inputs: query.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 156 tools
With 156 tools there is heavy overlap: get_ai_ml_package_inventory / get_ai_stack_summary / get_unity_ai_stack all report AI package stacks, list_ml_model_assets / list_inference_models / list_ml_agents_training_configs all scan model files, and get_localization_stack vs get_localization_tables are near-duplicates. Dozens of narrow list_* asset enumerators (list_assets_by_extension, list_scriptable_objects, list_sprite_assets, list_tmp_fonts) blur into one another, so an agent must guess which one to pick.
Nearly everything follows a predictable snake_case verb_noun pattern (list_*, get_*, find_*, search_*, scan_*, detect_*), which is readable and largely consistent. Minor deviations like bridge_live_fetch (noun_verb) and overlapping verb choices (get_package_dependency_graph vs get_assembly_dependency_graph vs detect_assembly_cycles) prevent a perfect score.
156 tools is roughly ten times a well-scoped surface and far beyond what an agent can reliably select from. Many tools are extremely narrow single-purpose audits (get_audio_loudness_risk, get_timeline_balance, list_lottie_assets) that would be better folded into a few parameterized tools.
Coverage of read-only project inspection is genuinely exhaustive—settings, assets, packages, build, testing, and third-party SDK detection are all present. However the surface is entirely read/analysis: there is no create, update, or delete operation for any resource, and no Editor mutation or build-execution path, leaving a notable gap for an MCP server meant to act on a Unity project.
Maintenance
Related MCP Connectors
Project memory, documentation and controlled secret access for AI coding agents.
Give your AI agent a persistent map of your project's structure, dependencies, and bugs.
Gives AI agents direct access to your Sanity projects and guidance for working with them
Securely search and manage workspace context files for AI agents and teams.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceEnables AI agents to interact with Unity projects through multimodal vision, code analysis, asset management, and scene manipulation. Supports real-time Unity editor control, project search, script creation, and visual debugging through screenshots.32MIT
- AlicenseNot gradedqualityNot gradedmaintenanceExposes Unity Editor project context and manipulation tools to AI coding agents, enabling automated scene hierarchy analysis, script inspection, and asset management. It supports both read and write operations including GameObject editing, component configuration, and animation authoring within the Unity environment.2-
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants like Claude to interact with Unity projects programmatically, supporting project management, asset creation, and build automation.1MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to search and analyze Unity project assets, including references and dependencies, via the Model Context Protocol.-