> For the complete documentation index, see [llms.txt](https://doc.realvirtual.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.realvirtual.io/extensions/mcp-server/installation-setup.md).

# Installation & Setup

## Requirements

* **Unity 6000.0+** (Unity 6)
* **Newtonsoft JSON** (`com.unity.nuget.newtonsoft-json`) — installed automatically as dependency
* **git** must be installed and available in PATH — [git-scm.com](https://git-scm.com)

## Installation

### Via Unity Asset Store (Recommended)

Install directly from the Unity Asset Store:

[**realvirtual MCP Server on Unity Asset Store**](https://assetstore.unity.com/preview/361912/1260684)

### Via Unity Package Manager (Git URL)

1. Open Unity **Window > Package Manager**
2. Click **+ > Add package from git URL**
3. Enter: `https://github.com/game4automation/io.realvirtual.mcp.git`

Both methods install the package with all dependencies automatically.

## Setup

### Automated Setup (Recommended)

After installing the package:

1. A **brain icon** appears in the Unity Scene View toolbar — this is the MCP status indicator
2. Click the **gear icon** next to it to open the setup popup
3. Click **Download Python Server** — this runs `git clone` to download the Python server into `Assets/StreamingAssets/realvirtual-MCP/`
4. Click **Configure Claude Code & Desktop** — this writes the MCP configuration to Claude Desktop and/or Claude Code

<figure><img src="/files/JveoZyONb68xpcaE5FMe" alt=""><figcaption><p>Setup popup showing initial state with Python server not yet installed</p></figcaption></figure>

Once configured, the popup shows green status indicators:

<figure><img src="/files/xf4dEyWjedvWJ5m0qKFt" alt=""><figcaption><p>Setup popup after successful configuration</p></figcaption></figure>

You can also access setup via the Unity menu: **Tools > realvirtual > MCP**

<figure><img src="/files/Mvc42zEPdqgweC81G7bm" alt=""><figcaption><p>MCP menu in Unity Editor</p></figcaption></figure>

### Manual Setup

If you prefer to set up manually:

1. Clone the Python server repository:

   ```bash
   cd <your-project>/Assets/StreamingAssets
   git clone https://github.com/game4automation/realvirtual-MCP.git
   ```
2. Configure your MCP client manually. For Claude Code, add to your MCP settings:

   ```json
   {
     "mcpServers": {
       "realvirtual-unity": {
         "command": "<project-path>/Assets/StreamingAssets/realvirtual-MCP/python/python.exe",
         "args": ["<project-path>/Assets/StreamingAssets/realvirtual-MCP/unity_mcp_server.py"]
       }
     }
   }
   ```

## Updating

### Python Server

Click **Update Python Server (git pull)** in the toolbar popup, or run manually:

```bash
cd <your-project>/Assets/StreamingAssets/realvirtual-MCP
git pull
```

### Unity Package

1. Open **Window > Package Manager**
2. Select **realvirtual MCP Server**
3. Click **Update** (if available)

If no update button appears, remove the lock entry for `io.realvirtual.mcp` from `Packages/packages-lock.json` and reopen Unity.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://doc.realvirtual.io/extensions/mcp-server/installation-setup.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
