unity-biome-mcp

unity-biome-mcp

MCP server for controlling the Unity Editor from AI clients. 140+ tools for scenes, GameObjects, components, assets, Shader Graph, PlayTest DSL, screenshots with visual diff, batch operations with Undo rollback, and in-editor chat. Token-efficient plain-text protocol.

Category
Visit Server

README

Unity Biome MCP

<div align="center">

<img src="docs/assets/hero.svg" width="100%" alt="Concept illustration of an AI client sending a live MCP signal through Unity Biome MCP to the Unity Editor">

Control the Unity Editor from MCP-compatible AI clients or from chat inside Unity.

Inspect scenes, edit GameObjects, run playtests, and capture results through structured tools.

<br>

<p align="center"><a href="https://german-krasnikov.github.io/unity-biome-mcp/"><img height="28" src="https://img.shields.io/badge/Documentation-blue?style=for-the-badge&logo=readthedocs&logoColor=white&labelColor=2b2b2b" alt="Documentation"></a> <img height="28" src="https://img.shields.io/github/license/german-krasnikov/unity-biome-mcp?style=for-the-badge&labelColor=2b2b2b&color=46e6a6" alt="MIT license"> <img height="28" src="https://img.shields.io/github/v/release/german-krasnikov/unity-biome-mcp?style=for-the-badge&labelColor=2b2b2b&color=46e6a6&label=release" alt="Latest release"></p>

<p align="center"><img height="28" src="https://img.shields.io/github/actions/workflow/status/german-krasnikov/unity-biome-mcp/ci-python.yml?branch=master&label=Python%20CI&style=for-the-badge&labelColor=2b2b2b&logo=python&logoColor=white" alt="Python CI"> <img height="28" src="https://img.shields.io/github/actions/workflow/status/german-krasnikov/unity-biome-mcp/unity-tests.yml?branch=master&job=EditMode%20Tests%20%28Linux%29&label=C%23%20Linux&style=for-the-badge&labelColor=2b2b2b&logo=linux&logoColor=white" alt="C# Linux EditMode"> <img height="28" src="https://img.shields.io/github/actions/workflow/status/german-krasnikov/unity-biome-mcp/unity-tests.yml?branch=master&job=EditMode%20Tests%20%28macOS%29&label=C%23%20macOS&style=for-the-badge&labelColor=2b2b2b&logo=apple&logoColor=white" alt="C# macOS EditMode"> <img height="28" src="https://img.shields.io/github/actions/workflow/status/german-krasnikov/unity-biome-mcp/unity-tests.yml?branch=master&job=EditMode%20Tests%20%28Windows%29&label=C%23%20Windows&style=for-the-badge&labelColor=2b2b2b&logo=windows&logoColor=white" alt="C# Windows EditMode"></p>

<p align="center"><a href="https://app.codecov.io/gh/german-krasnikov/unity-biome-mcp?flags%5B0%5D=python"><img height="28" src="https://img.shields.io/codecov/c/github/german-krasnikov/unity-biome-mcp?flag=python&style=for-the-badge&labelColor=2b2b2b&logo=codecov&logoColor=white&label=py%20cov" alt="Python coverage"></a> <a href="https://app.codecov.io/gh/german-krasnikov/unity-biome-mcp?flags%5B0%5D=csharp"><img height="28" src="https://img.shields.io/codecov/c/github/german-krasnikov/unity-biome-mcp?flag=csharp&style=for-the-badge&labelColor=2b2b2b&logo=codecov&logoColor=white&label=C%23%20cov" alt="C# coverage"></a> <a href="docs/quality/REPORT.md"><img height="28" src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/german-krasnikov/unity-biome-mcp/master/.github/badges/quality.json&style=for-the-badge&labelColor=2b2b2b" alt="Tool quality score"></a></p>

<p align="center"><img height="28" src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/german-krasnikov/unity-biome-mcp/master/.github/badges/tools.json&style=for-the-badge&labelColor=2b2b2b" alt="Registered MCP tools"> <img height="28" src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/german-krasnikov/unity-biome-mcp/master/.github/badges/tests.json&style=for-the-badge&labelColor=2b2b2b" alt="Discovered test inventory"> <a href="https://glama.ai/mcp/servers/german-krasnikov/unity-biome-mcp"><img height="28" src="https://glama.ai/mcp/servers/german-krasnikov/unity-biome-mcp/badges/score.svg" alt="unity-biome-mcp MCP server"></a></p>

</div>

<p align="center"> <a href="#quick-start">Quick Start</a> · <a href="https://german-krasnikov.github.io/unity-biome-mcp/">Documentation</a> · <a href="docs/comparison.md">Comparison</a> · <a href="CHANGELOG.md">Changelog</a> </p>

Quick Start

Requirements: Unity 6 (6000.0 or newer) and uv. You do not need to install Python separately when using uvx.

1. Install uv

macOS and Linux:

curl -LsSf https://astral.sh/uv/install.sh | sh

Windows:

winget install astral-sh.uv

2. Add the Unity package

  1. In Unity, open Window > Package Manager.
  2. Select + > Add package from git URL.
  3. Enter:
https://github.com/german-krasnikov/unity-biome-mcp.git?path=unity-plugin

3. Configure your client

Open MCP > Setup Wizard, choose a client, and follow the result shown by the Wizard.

Configuration depends on the client. The Wizard may write a project configuration, run the configuration helper, copy a client-specific snippet, or defer configuration until In-Unity Chat starts. Restart the selected client when prompted. The Wizard configures the integration; it does not perform an end-to-end connection test.

<details> <summary>Manual client setup guides</summary>

Use the matching guide:

Claude Code | Claude Desktop | Codex | Cursor | Junie | Kimi | OpenCode | Rider AI Assistant | VS Code | Windsurf

For external OpenCode setup, do not use the Wizard's standard clipboard JSON: OpenCode has a different configuration shape. Follow the OpenCode guide.

</details>

4. Verify the first connection

For an external MCP client, keep the Unity project open, restart the client if the Wizard asked you to, and send:

Read the active Unity scene hierarchy at depth 2 and summarize its root objects.

The client should call:

get_hierarchy(depth=2)

A successful response contains the active scene hierarchy. If the call fails, open MCP > Status > Diagnose in Unity. For Chat-only verification, use the Chat quick check. For command-line diagnostics, run:

uvx --from git+https://github.com/german-krasnikov/unity-biome-mcp.git#subdirectory=server unity-biome-mcp doctor

See Getting Started for recovery steps and platform details.

<details> <summary>Local development installation</summary>

Requirements for a source checkout: Git and Python 3.10 or newer.

git clone https://github.com/german-krasnikov/unity-biome-mcp.git
cd unity-biome-mcp
python install.py setup
python install.py configure --tool claude-code
python install.py doctor

The configuration helper supports claude-code, claude-desktop, cursor, windsurf, vscode, codex, kimi, junie, and opencode.

</details>

Documentation

Goal Guide
Install and connect Getting Started
Choose and configure an MCP client Client guides
Install project-local AI guidance AI Skills and Agents
Find a tool for a task Tool Guide
Use batch safely Batch Operations
Build Play Mode workflows PlayTest DSL
Configure In-Unity Chat Chat Backends
Extend Unity Biome MCP Plugin Quick Start
Diagnose failures Diagnostics

What You Can Do

  • Scene and object editing: inspect and modify GameObjects, components, assets, materials, shaders, and UI.
  • Playtesting and verification: run PlayTest DSL workflows, compile checks, console checks, runtime diagnostics, and visual comparisons.
  • Animation and VFX: work with clips, Animator controllers, Timeline, particles, materials, shaders, and Shader Graph.
  • Efficient tool use: group compatible operations with batch, request deferred schemas, and enable capability categories only when needed.
  • Extensibility: add project-specific server tools, Unity commands, Chat context chips, and plugin hooks.

<details> <summary>Prompt and batch examples</summary>

Example prompts:

Create a player object, add a Rigidbody, and place it at the scene origin.

Find enemies without colliders and add a BoxCollider to each.

Run a playtest that moves the player to the door and verifies that the score increases.

Capture the Game View and compare it with the saved baseline.

Summarize scene changes since the last checkpoint.

Batch example

Use batch for two or more compatible operations:

batch(commands="""
create_object name=Enemy
set_property path=Enemy component=Transform prop=position value=0,1,0
manage_component path=Enemy type=Rigidbody action=add
set_property path=Enemy component=Rigidbody prop=mass value=2
""")

Some typed tools are direct-only and cannot be placed in a batch. See the Batch guide for validation, Undo-backed rollback, and error handling.

</details>

Ways to Work

External MCP client

An MCP client launches the Python server over stdio. The server discovers the active Unity project and sends framed commands to the editor plugin over localhost TCP.

In-Unity Chat

Open MCP > Chat to work inside the editor. Select a supported CLI backend and use Ask or Agent mode. Authentication is handled by the selected CLI. Context chips can attach scene objects, scripts, and assets to a turn, while each completed AI turn is grouped for Unity undo.

See Chat backends for setup and behavior.

Architecture

<img src="docs/assets/architecture.svg" width="100%" alt="Animated architecture diagram: external clients and In-Unity Chat reach the Python MCP server and Unity Editor plugin through their local transport paths">

The external path is MCP client -> Python MCP server -> localhost TCP -> Unity Editor plugin. In-Unity Chat invokes the selected CLI through the local chat relay; that CLI connects to the same Python MCP server and rejoins the shared TCP-to-plugin path.

AI Skills

The Unity package includes 11 reusable domain skills and 4 focused agents for Claude Code and Codex. They cover efficient MCP tool selection, batching, Unity authoring, playtesting, diagnostics, and evidence-based verification.

Open MCP > Install AI Skills to install them into the current project. Existing and generated files are ownership-checked before replacement. See AI Skills and Agents for paths, safe updates, and Codex synchronization.

Project Inventory

The values below are generated from registrations, pytest collection, Unity test discovery or source scanning, and package metadata. They are discovery counts, not a claim that every test was executed in the current checkout.

<!-- README_STATS_START --> <img src="docs/assets/stats.svg" width="100%" alt="148 registered MCP tools. Test inventory: 11649 entries: 4597 regular Python, 511 Python stress, 287 live Python, and 6254 Unity source attributes. Unity count source: static source scan. Server package version: v1.19.0."> <!-- README_STATS_END -->

Unity MCP Product Comparison

Verified July 29, 2026:

  • Unity Biome MCP: deterministic PlayTest DSL and visual baseline/diff workflows.
  • Unity MCP Server: first-party local bridge, connection approval, and multi-client support.
  • MCP for Unity: Unity 2021.3 compatibility and authenticated remote hosting.
  • AI Game Developer: compiled-player runtime support plus local, HTTP, cloud, and Docker deployment.
  • MCP Unity: optional Unity Undo rollback for batch operations and an interactive MCP App dashboard.

The detailed matrix cites exact source commits or versioned official documentation and records constraints as well as strengths.

Open the full source-backed comparison

Recent Changes

<!-- CHANGELOG_START --> Current release: v1.18.1 (2026-08-05). Read the full changelog. <!-- CHANGELOG_END -->

Contributing

Read CONTRIBUTING.md before opening a pull request. New contributors can start with good first issues.

Report security issues through SECURITY.md.

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured