README
🚀 MCP Unreal Server 中文文档
MCP Unreal Server 是一款强大的服务器实现,它能够通过远程 Python 执行与 Unreal Engine 实例进行交互,为开发者提供了便捷的操作方式,极大地提升了开发效率。
🚀 快速开始
MCP Unreal Server 可帮助开发者通过远程 Python 执行与 Unreal Engine 实例交互。以下是启动服务器的命令:
python -m src.mcp_server_unreal.server
✨ 主要特性
- 🚀 Unreal 实例管理
- 可通过多播自动发现 Unreal 节点,方便快捷地识别可用实例。
- 能实时监控节点状态,让开发者随时掌握节点的运行情况。
- 支持通过兼容 LSP 的客户端列出资源,便于资源的管理和查看。
- 💻 远程执行
- 允许在 Unreal Engine 环境中执行 Python 代码,拓展了开发的灵活性。
- 支持 attended 和 unattended 两种执行模式,满足不同场景的需求。
- 具备文件执行和语句评估模式,提供多样化的执行方式。
- 📊 日志记录与监控
- 详细日志会输出到文件 (
mcp_unreal.log),方便后续的问题排查和分析。 - 控制台日志带有不同级别的 verbosity,可根据需要调整日志显示的详细程度。
- 能对节点连接状态进行健康监控,及时发现并处理连接问题。
- 详细日志会输出到文件 (
📦 安装指南
# 克隆仓库
git clone https://github.com/your-org/mcp-unreal-server.git
cd mcp-unreal-server
# 安装依赖
pip install -r requirements.txt
📚 详细文档
配置
网络设置
在 RemoteExecutionConfig 中配置多播参数:
# 默认多播设置(修改在 server.py 中)
config.multicast_group_endpoint = ("239.0.0.1", 6766)
日志记录
在 server.py 中调整日志级别:
# 调整日志级别
file_handler.setLevel(logging.DEBUG) # 文件日志
console_handler.setLevel(logging.INFO) # 控制台日志
支持工具
连接到 Unreal 实例
{
"host": "239.0.0.1",
"port": 6766
}
执行 Python 代码
{
"node_id": "<unreal-node-id>",
"code": "print('Hello Unreal')",
"unattended": true
}
💻 使用示例
基础用法
启动服务器:
python -m src.mcp_server_unreal.server
高级用法
连接到 Unreal 实例并执行 Python 代码:
{
"host": "239.0.0.1",
"port": 6766,
"node_id": "<unreal-node-id>",
"code": "print('Hello Unreal')",
"unattended": true
}
🔧 技术细节
API 文档
资源格式
types.Resource(
uri="unreal://<node_id>",
name=f"Unreal 实例: {node_id}",
description="Unreal Engine 实例",
mimeType="application/x-unreal"
)
执行模式
| 模式 | 描述 | |----------------------|--------------------------| | MODE_EXEC_FILE | 执行 Python 文件 | | MODE_EXEC_STATEMENT | 执行 Python 语句 | | MODE_EVAL_STATEMENT | 评估 Python 表达式 |
故障排除
常见问题:
- 没有节点被发现:确认 Unreal 实例正在运行且启用了 MCP 插件。
- 执行超时:检查防火墙设置是否允许多播流量。
- 连接中断:监控
mcp_unreal.log中的节点状态变化。
📄 许可证
本项目采用 Apache-2.0 许可证。
Scan to join WeChat group