Package Exports
- @spark-apps/unity-mcp
- @spark-apps/unity-mcp/dist/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@spark-apps/unity-mcp) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Unity MCP
โจ What It Does
Unity MCP provides real-time control of Unity Editor through the Model Context Protocol, allowing you to:
Feature |
Description |
|---|---|
| Select, move, rotate, and scale objects with natural language | |
| Align, distribute, duplicate objects with undo support | |
| Enter play mode and run test scenarios programmatically | |
| Load, save, inspect scene hierarchy in real-time |
๐ Quick Setup
๐ Prerequisites
๐ Requirements
๐ฅ Installation
๐ฆ Choose your installation method
Option 1: Claude Code (Recommended)
claude mcp add @spark-apps/unity-mcpOption 2: Manual Installation
npm i -g @spark-apps/unity-mcpThen add to your MCP client config:
- Windows
%APPDATA%\\Claude\\claude_desktop_config.json - macOS
~/Library/Application Support/Claude/claude_desktop_config.json - Linux
~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"unity-mcp": {"command": "npx", "args": ["-y", "@spark-apps/unity-mcp"]}
}
}Restart your MCP client after installation.
๐ฎ Unity Editor Integration
โก Required one-time setup per Unity project
Why is this needed? Unity MCP installs C# editor scripts into your Unity project that create an HTTP server on port 8080. The MCP tools communicate with Unity through this server.
Setup Steps:
- Open your MCP client (e.g., Claude Desktop or Claude Code)
- Tell Claude:
Setup Unity MCP in my project at /path/to/unity/project - This installs 4 C# scripts to
Assets/Editor/UnityMCP/:MCPEditorServer.cs- HTTP serverEditorCommandHandler.cs- Command processor with undo supportPlayModeHandler.cs- Play mode automationSceneHandler.cs- Scene operations
- Restart Unity Editor
- Verify in Console:
[Unity MCP] Server started on port 8080
Done! The MCP tools can now control Unity Editor via HTTP.
๐ ๏ธ Available Tools
๐ง View All Available Tools (19 tools)
Safe Operations (Read-only)
Tool |
Description |
|---|---|
| Install editor integration into Unity project | |
| Select by name, tag, or pattern with framing | |
| Find by component type or pattern | |
| List all scenes in build settings | |
| Get complete scene hierarchy | |
| Find objects in current scene | |
| Get play mode status and logs |
Modifications (With Undo Support)
Tool |
Description |
|---|---|
| Move, rotate, scale objects | |
| Align left/right/top/bottom/center | |
| Distribute evenly along axis | |
| Clone objects with undo support | |
| Start play mode programmatically | |
| Exit play mode programmatically | |
| Execute automated test scenarios | |
| Slow motion or fast forward | |
| Load scene by name or index | |
| Save current or all scenes |
Destructive Operations (Use with Caution)
Tool |
Description |
|---|---|
| Delete objects with undo support | |
| Remove missing scripts and empty objects |
๐ฌ Example Commands
๐ฏ Object Manipulation
- "Select all objects with tag 'Enemy' and align them horizontally"
- "Move the Player object to position (0, 5, 10)"
- "Distribute selected objects evenly along the x axis"
- "Find all objects with Camera component"
- "Duplicate selected object 5 times"
๐งช Automated Testing
- "Enter play mode and move Player to (10, 0, 0) for 5 seconds"
- "Set time scale to 0.5 for slow motion"
- "Run a test that destroys the Boss after 2 seconds"
- "Check play mode status and show test logs"
๐บ๏ธ Scene Operations
- "List all scenes in the project"
- "Load the MainMenu scene"
- "Show me the complete hierarchy of the current scene"
- "Find all objects with Rigidbody component"
- "Clean up scene by removing missing scripts"
๐ Troubleshooting
โ Common Issues
MCP Server Not Showing:
- Verify Node.js is installed:
node --version - Check config file path is correct
- Ensure JSON syntax is valid
- Restart MCP client completely
Unity Editor Not Responding:
- Ensure Unity Editor is open
- Check
Assets/Editor/UnityMCP/scripts are installed - Verify Console for
[Unity MCP] Server started on port 8080 - Check no errors in Unity Console
Port Already in Use:
- Default port is
8080 - Check what's using it:
lsof -i :8080(Mac/Linux) ornetstat -ano | findstr :8080(Windows) - Stop conflicting process or change port in Unity scripts
๐ Documentation
๐ค Contributing
Contributions welcome! Focus areas:
- โ Editor manipulation and automation
- โ Testing workflows
- โ Scene management
- โ Bug fixes and improvements
Not in scope: Code generation (use context7 MCP instead)
๐ License
MIT ยฉ Muammar Yacoob