使用说明
不可读CP插件
非常WIP回购
我现在正在努力添加更多工具并清理代码库, 我计划允许在主插件之外轻松扩展工具
这是一项正在进行的工作,我需要清理很多东西!!!!!
此外,我只使用windows,所以我不知道如何为mac/unix设置它
概述
UnrealMCP是一个非官方的虚幻引擎插件,旨在使用人工智能工具控制虚幻引擎。它在虚幻引擎中实现了机器控制协议(MCP),允许外部AI系统以编程方式与虚幻环境交互和操纵。
我几天前才了解MCP,所以我对它不太熟悉,我还在学习,所以事情最初可能会很艰难。 我已经使用https://github.com/ahujasid/blender-mcp作为参考,它依赖于Claude的Desktop。它现在可以与Claude for Desktop和Cursor一起使用。如果你尝试其他型号,请告诉我!
⚠️ 免责声明
此插件允许AI代理直接修改您的虚幻引擎项目。虽然它可能是一个强大的工具,但它也有风险:
- AI代理可能会对您的项目进行意外更改
- 文件可能会被意外删除或修改
- 项目设置可以更改
- 资产可能被覆盖
重要安全措施:
- 始终在项目中使用源代码管理(如Git或Perforce)
- 定期备份您的项目
- 首先在单独的项目中测试插件
- 在提交更改之前对其进行审查
通过使用此插件,您承认:
- 您对项目所做的任何更改负全部责任
- 插件作者不对AI代理造成的任何损坏、数据丢失或问题负责
- 您使用此插件的风险由您自行承担
特性
- 虚幻引擎远程控制的TCP服务器实现
- 基于JSON的AI工具集成命令协议
- 编辑器UI集成,便于访问MCP功能
- 全面的场景操作能力
- 用于客户端交互的Python配套脚本
路线图
这些是我对截至2025年3月14日的发展的设想 我还不确定什么是可能的,理论上什么都有,但这取决于如何 集成LLM在利用这些工具方面做得很好。
- [X] 基本操作工作
- [X] Python工作
- [X] 材料
- []用户扩展(正在进行中)
- []资产工具
- []蓝图
- []尼亚加拉视觉特效
- []元声音
- []景观(我可能会推迟,因为Epic提到他们将更新景观工具)
- []建模工具
- []PCG
需求
- 虚幻引擎5.5(我只在这个版本上测试过,可能适用于更早的版本,但没有官方支持)
- 为虚幻引擎配置的C++开发环境
- Python 3.7+用于客户端脚本编写
- 运行命令的模型,在测试中,我一直在使用Claude for Desktophttps://claude.ai/download
运行的先决条件
- 虚幻编辑器安装(已在5.3版本中测试,但应适用于5.0+版本)
- Python 3.7+(这可以与您现有的Python安装一起运行)
- MCP兼容LLM(Claude用于桌面、光标等)
- 安装程序:按照mcp/README_mcp_Setup.md中的说明运行mcp文件夹中的Setup_unreal_mcp.bat
Cursor用户快速入门
如果您想将UnrealMCP与Cursor一起使用,请按照以下简单步骤操作:
- 克隆或下载此存储库为zip
- 创建新的虚幻项目,或打开现有项目
- 如果项目目录中不存在“插件”文件夹,请在其中创建一个
- 解压缩或将此存储库复制到Plugins文件夹中
- 跑
setup_cursor_mcp.bat在MCP文件夹中 - 打开虚幻项目,在编辑>插件中启用插件(如果尚未启用)
- 启动Cursor并让它与虚幻项目一起工作
就是这样!安装脚本将自动配置Cursor集成所需的一切。
安装
- 克隆或下载此存储库为zip
- 创建新的虚幻项目,或打开现有项目
- 如果项目目录中不存在“插件”文件夹,请在其中创建一个
- 解压缩或将此存储库复制到Plugins文件夹中
- 设置MCP
- 跑吧
setup_unreal_mcp.batMCP文件夹中的脚本(请参见MCP/README_MCP_SETUP.md详情) - 这将配置Python和您的AI助手(Claude用于桌面或光标)
- 跑吧
- 打开虚幻项目,插件应该在插件菜单中可用
- 如果没有,请在“编辑”>“插件”中启用该插件
- 选择您喜欢的AI助手:
- 对于桌面版的Claude:请按照下面“使用桌面版Claude”部分中的说明进行操作
- 对于光标:请按照下面“使用光标”部分的说明进行操作
Claude桌面版
您需要找到Claude for Desktop的安装目录。找到claude_desktop_config.json并添加一个条目,使其看起来像这样:
窗户: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"unreal": {
"command": "C:/path/to/your/project/Plugins/UnrealMCP/MCP/run_unreal_mcp.bat",
"args": []
}
}
}
或者,unreal_mcp_setup.bat脚本应该为您完成此操作。
要找到桌面安装的claude路径,您可以进入设置并单击“编辑配置” 这通常在
C:\Users\USERNAME\AppData\Roaming\Claude
带光标
如果您使用Cursor选项运行了安装脚本,则应自动配置Cursor。如果需要手动配置它:
窗户: %APPDATA%\Cursor\User\settings.json
添加或更新设置:
{
"mcp": {
"enabled": true,
"servers": {
"unreal": {
"command": "C:/path/to/your/project/Plugins/UnrealMCP/MCP/run_unreal_mcp.bat",
"args": []
}
}
}
}
测试
一旦一切都设置好了,你需要启动虚幻编辑器。 注意:运行mcp桥不需要启动或设置其他任何东西,它将在需要时运行。
打开Claude for Desktop或Cursor,确保工具已成功启用,让您的AI助手在虚幻中工作。
以下是一些示例提示:
- “目前有哪些演员?”
- 在(0,0100)位置创建立方体
- “列出我可以在虚幻引擎中使用的可用命令”
用法
在虚幻编辑器中
启用插件后,您将在编辑器工具栏按钮中找到MCP控件。
TCP服务器可以从这里启动/停止。 检查日志过滤器LogMCP下的输出日志以获取更多信息。
一旦从编辑器确认服务器已启动并正在运行。 打开Claude for Desktop,确保工具已成功启用,让Claude在虚幻中工作。
目前只支持基本操作,创建对象、修改其变换、获取场景信息和运行python脚本。 Claude在使用虚幻python时犯了很多错误,因为我相信没有很多例子,但让它运行,它通常会解决问题。 我真的很想改进它的工作原理,但这是在虚幻中添加功能的低垂之果。
客户端集成
使用提供的Python脚本 MCP 用于连接和控制虚幻引擎实例的目录:
from unreal_mcp_client import UnrealMCPClient
# Connect to the Unreal MCP server
client = UnrealMCPClient("localhost", 13377)
# Example: Create a cube in the scene
client.create_object(
class_name="StaticMeshActor",
asset_path="/Engine/BasicShapes/Cube.Cube",
location=(0, 0, 100),
rotation=(0, 0, 0),
scale=(1, 1, 1),
name="MCP_Cube"
)
命令参考
该插件支持各种场景操纵命令:
get_scene_info:检索有关当前场景的信息create_object:在场景中生成新对象delete_object:从场景中删除对象modify_object:更改现有对象的属性execute_python:在虚幻的Python环境中运行Python命令- 还有更多即将到来。..
请参阅 Docs 完整的命令参考目录。
安全考虑
- 默认情况下,MCP服务器接受来自任何客户端的连接
- 将服务器暴露于本地主机以进行开发
- 验证所有传入命令以防止注入攻击
故障排除
- 确保虚幻引擎与MCP插件一起运行。
- 检查Claude for Desktop中的日志以获取stderr输出。
- 我刚刚解决了分歧,但我会定期检查 Discord(梦想工作室):https://discord.gg/abRftdSe
项目结构
Source/UnrealMCP/:核心插件实现Private/:内部实施文件Public/:公用头文件
Content/:插件资产MCP/:Python客户端脚本和示例Resources/:图标和其他资源
许可证
MIT许可证
版权所有(c)2025 kvick
特此免费向任何获得副本的人授予许可 本软件和相关文档文件(“软件”),以处理 在软件中不受限制,包括但不限于权利 使用、复制、修改、合并、发布、分发、再许可和/或销售 软件的副本,并允许软件的接收者 根据以下条件提供:
上述版权声明和本许可声明应包含在所有 软件的副本或实质性部分。
软件按“原样”提供,不提供任何形式的明示或明示担保 隐含的,包括但不限于适销性保证, 适用于特定目的且不造成伤害。在任何情况下 作者或版权持有人对任何索赔、损害赔偿或其他 因以下原因产生的责任,无论是在合同、侵权或其他诉讼中, 出于或与软件、使用或其他交易有关 软件。
鸣谢
- 创建者:kvick
- 十、 @kvickart
- 不一致:https://discord.gg/abRftdSe
感谢测试人员!!!
-
https://github.com/TheMurphinatur
-
@ 网站 为了激励
贡献
欢迎捐款,但我需要一些时间来理清思路,先清理一下,哈哈