Docs

MCP guide

Drive Unreal Editor from Claude Code, Cursor, Claude Desktop or any MCP client.

You don't need any of this to use Exaro. The chat panel inside Unreal (Window → Exaro) already has every tool. This page is for people who prefer to work from a separate AI app.

How it works

While the editor is open, Exaro runs an MCP server at http://127.0.0.1:8765/mcp. It listens on your own machine only, and nothing needs installing: there is no exaro-mcp program and no --project argument.

Every request must carry the editor's access code. Each time the editor starts, it writes a fresh one to YourProject/Saved/hs-mcp.token. Send it as the X-Exaro-MCP-Token header (or Authorization: Bearer <code>). After restarting the editor, update the code in your app.

Claude Code

In PowerShell, from your project folder, with the editor open:

claude mcp add --transport http exarostudio http://127.0.0.1:8765/mcp --header "X-Exaro-MCP-Token: $(Get-Content Saved\hs-mcp.token)"

After an editor restart, run claude mcp remove exarostudio and the command above again.

Cursor and other HTTP clients

For Cursor, put this in .cursor/mcp.json in your project:

{
  "mcpServers": {
    "exarostudio": {
      "type": "http",
      "url": "http://127.0.0.1:8765/mcp",
      "headers": { "X-Exaro-MCP-Token": "<paste the contents of Saved/hs-mcp.token>" }
    }
  }
}

Claude Desktop and other stdio-only clients

These apps only start local commands, so use the free mcp-remote helper (needs Node.js) to reach the editor:

{
  "mcpServers": {
    "exarostudio": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "http://127.0.0.1:8765/mcp", "--allow-http",
               "--header", "X-Exaro-MCP-Token:<paste the contents of Saved/hs-mcp.token>"]
    }
  }
}

The exarostudio.com download also includes a PowerShell helper in the plugin's Tools folder. It reads the access code for you and keeps your app connected while the editor restarts or recompiles. The Fab editions don't include it.

{
  "mcpServers": {
    "exarostudio": {
      "command": "powershell",
      "args": ["-NoProfile", "-ExecutionPolicy", "Bypass", "-File",
               "C:/Projects/MyGame/Plugins/ExaroStudio/Tools/ExaroStudio-Proxy.ps1"]
    }
  }
}

First request

Tools appear in your app as ex_*. Start with something read-only, such as Inspect the current level and list its actors. Anything that changes the project shows an approval card in the Exaro panel inside Unreal and waits for you. If nobody answers within about 25 seconds, your app is told the change is waiting for approval; it is not applied until you click Approve.

Buying assets from an agent

With an exarostudio.com account, the tools ex_market_search, ex_market_buy and ex_market_import let your agent find an asset, buy it and import it. Searching is free. Every purchase raises an approval card showing the price: an agent can suggest, but only you can pay.

Troubleshooting

  • 401 Unauthorized: the access code is missing or old. Copy the current contents of Saved/hs-mcp.token into your app.
  • Connection refused: open the project in Unreal with Exaro enabled; the server only exists while the editor runs.
  • Port 8765 already in use (usually a second editor is open): set the Windows environment variable EX_MCP_PORT to another number, such as 8766, before starting the editor, and use that number in your app.
  • Calls rejected while the chat panel is busy: Exaro lets one agent work at a time. If you only use an external app, turn on Bridge Mode under Editor Preferences → Plugins → Exaro Studio.