CereBro.Unity
CereBro.Unity 是一个基于 CereBro 的模型无关 AI 代理包装器,用于 Unity,并且支持通过 Model Context Protocol 使用不同的 AI 模型。现在你可以使用官方的 C# SDK(https://github.com/modelcontextprotocol/csharp-sdk)编写工具,而无需更改代码。
安装
Git URL
你可以通过 Git URL 从 Unity 的包管理器安装 CereBro.Unity。请访问 https://docs.unity3d.com/Manual/upm-ui-giturl.html 进行安装。
在 Unity 项目中,使用以下 Git URL 安装:
https://github.com/rob1997/CereBro.git?path=/Packages/com.cerebro.unity
Open UPM
目前尚未提供 Open UPM 支持。
使用方法
MCP Server
步骤 1:导入服务器
从菜单栏选择 CereBro > Import Server
,这会将 CereBro.Server.Unity
导入到 Unity 项目的根目录中。它作为中介的 MCP 服务器,负责在 Unity 和 AI 模型之间 relay 数据。
步骤 2:配置客户端
你需要将具体的聊天客户端配置为使用 CereBro.Server.Unity
。你可以在客户端的配置文件中添加以下内容:
"servers": {
"cerebro-server-unity": {
"type": "stdio",
"command": "dotnet",
"args": [
"<Path to Unity Project>/CereBro.Server.Unity/CereBro.Server.Unity.dll",
"--port",
"<Port Number>"
]
}
}
如果你使用的是 CereBro
客户端,可以在 servers.json
文件中添加以下内容:
[
{
"Id": "unity-server",
"Name": "CereBro.Server.Unity",
"TransportType": "stdio",
"TransportOptions": {
"command": "dotnet \"<Path To Unity Project>/CereBro.Server.Unity/CereBro.Server.Unity.dll\"",
"arguments": "--port <Port Number>"
}
}
]
步骤 3:在 Unity 中运行 CereBro
接下来你需要在 Unity 中运行 CereBro。这将创建一个侦听器,用于监听 CereBro.Server.Unity
的请求。
编辑器模式:
[InitializeOnLoad]
public static class CereBroEditorRunner
{
static CereBroEditorRunner()
{
CereBroListener.RunForEditor(5050);
}
}
运行时模式:
在运行时,你需要调用 CereBroListener.Run(int port = 5000, CancellationToken cancellationToken = default)
方法,该方法将返回一个 Awaitable Task。
现在你可以启动客户端并使用 CereBro 在 Unity 中。
MCP 客户端
尚未提供。
CereBro.Unity 示例
你可以在包管理器中导入 CereBro.Unity 的示例项目。它包含可以直接从 MCP 客户端调用的编辑器工具:
- CreateShapeTool: 在当前场景中创建一个 primitives 形状(例如立方体、球体、圆柱体等)。
- GetCurrentPositionTool: 获取当前场景中 GameObject 的当前位置。
- MoveGameObjectTool: 按照指定的偏移量在 x、y 和 z 方向上移动 GameObject。
- RePositionTool: 将 GameObject 移动到指定的位置。
- RotateGameObjectTool: 按照指定的角度绕 x、y 和 z 轴旋转 GameObject。
为项目做贡献
如果你希望为该项目做出贡献,可以 fork 仓库并创建 pull request。你也可以在发现任何问题或有任何功能请求时创建 issue。