mcpField
U
Unity MCP Server

Unity MCP Server

本地服务
github.com/rachitkumarrastogi开发工具512 周前更新

关于 Unity MCP Server

Unity MCP Server 让 AI 助手通过兼容 MCP 的 IDE 或应用检查 Unity 项目,无需打开 Unity Editor。它读取项目文件,提供设置、代码、场景、预制件和资源的结构化信息。

主要功能

  1. 01无需打开 Editor 检查项目
  2. 02项目与构建设置查询
  3. 03C# 脚本和程序集检索
  4. 04场景与预制件概览
  5. 05资源搜索与引用查询

适用场景

  1. 01查看构建场景和项目设置
  2. 02按类型或内容查找脚本
  3. 03检查场景对象和预制件组件
  4. 04查找损坏或引用某资源的文件

MCP 相关

它通过 MCP stdio 向兼容客户端提供 Unity 项目检查工具。使用 `UNITY_PROJECT_PATH` 配置项目根目录。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"rachitkumarrastogi-unity": {
"command": "npx",
"args": [
"-y",
"unity-mcp-server"
],
"env": {
"UNITY_PROJECT_PATH": "<UNITY_PROJECT_PATH>"
}
}
}
}
启动命令npx -y unity-mcp-server
需要配置的环境变量
UNITY_PROJECT_PATHAbsolute path to your Unity project root (required)

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmunity-mcp-server1.7.0

工具

134

收录的工具列表 · 更新于 2 周前

此工具无需参数。

详细介绍

Unity MCP Server

Unity MCP 服务 — 让 AI 助手能够通过任何支持 MCP 的 IDE 或应用,结构化地访问你的 Unity 项目。无需 Unity Editor。

npm version MCP Registry

Cursor / IDE → Unity MCP Server → Unity Project

你的 IDE 会与此服务通信;服务会读取你的 Unity 项目文件夹,并返回项目信息、构建场景、脚本、预制件等内容,让 AI 无需打开 Editor 也能提供帮助。


概览

  • 无需 Editor — 仅从项目文件系统读取。
  • 一个服务,多个项目 — 在 MCP 配置中为每个项目设置 UNITY_PROJECT_PATH。
  • 原生支持 MCP — 适用于任何支持模型上下文协议(通过 stdio 传输工具)的客户端。

支持的 IDE 和客户端

此服务使用标准的 stdio 传输 MCP 协议,并提供 工具。任何能够运行 MCP 服务并传递环境变量的 IDE 或应用均可使用。常用客户端包括:

客户端说明
Cursor在 MCP 设置中添加服务;在 env 中设置 UNITY_PROJECT_PATH。
Claude Desktop添加到 claude_desktop_config.json;使用相同的命令和环境变量配置模式。
Claude Code支持 MCP,包括工具。
VS Code使用 MCP 扩展(例如 GenAI / Copilot MCP);配置服务并设置 UNITY_PROJECT_PATH。
Windsurf使用命令和环境变量添加 MCP 服务。
Continue在 Continue 设置中配置 MCP 服务。
Cline支持 MCP 工具和资源。
其他任何支持通过 stdio 使用 MCP 工具的客户端(例如 Zed、Roo Code、LibreChat、自定义 Agent)。

所有客户端的配置方式相同:command = node,args = dist/index.js 的路径,env = UNITY_PROJECT_PATH = 你的 Unity 项目根目录。请参阅下方的配置,了解 Cursor 示例;其他客户端在各自配置格式中使用相同结构。


工具

展开下方的类别,查看其中包含的工具。

📦 项目与构建💻 代码与程序集🎬 场景与预制件📁 资源与引用
🎨 材质与着色器🎞️ 动画🖼️ 2D 与精灵✨ 渲染
📝 TextMeshPro 与 UI🎮 输入🏷️ 标签与图层🌐 Addressables 与本地化
🔊 音频🧪 测试与文档🔄 CI 与版本控制🔌 集成
⚡ 速度与效率🔍 元信息🤖 AI 与机器学习

📦 项目与构建 | 工具 | 描述 | 可输入的示例提示词 | |------|-------------|-------------------------| | `get_project_info` | 路径、Unity 版本、构建场景数量、播放器/产品名称 | *“我的项目路径和 Unity 版本是什么?”* · *“显示构建场景数量和播放器名称”* | | `list_build_scenes` | EditorBuildSettings 中的场景(构建顺序) | *“构建中包含哪些场景?”* · *“按顺序列出构建场景”* | | `get_player_settings` | 产品名称、公司、包 ID、版本 | *“播放器设置是什么?”* · *“显示包 ID 和公司名称”* | | `list_packages` | 来自 manifest.json 的包 | *“列出已安装的 Unity 包”* | | `get_quality_settings` | 质量级别 | *“质量设置是什么?”* | | `get_scripting_defines` | 全局和按程序集划分的定义 | *“显示脚本定义”* · *“每个程序集设置了哪些定义?”* | | `get_physics_settings` | Physics / Physics2D 设置 | *“物理设置是什么?”* | | `get_graphics_settings` | 图形设置(GraphicsSettings.asset) | *“显示图形设置”* | | `get_time_settings` | 时间/固定时间步长(TimeManager.asset) | *“固定时间步长是多少?”* · *“显示时间设置”* | | `get_build_target_info` | 当前构建目标/平台 | *“当前构建目标是什么?”* | | `get_feature_set_inference` | 根据包推断 Unity 6 功能集(2D、ECS、AR 等) | *“这个项目使用了哪些功能集?”* | | `get_project_version` | 包版本 | *“包版本是多少?”* | | `get_changelog` | CHANGELOG 内容 | *“显示变更日志”* | | `get_audio_settings` | AudioManager.asset(全局音量、混响、DSP 缓冲区) | *“音频设置是什么?”* | | `get_navigation_settings` | 来自 ProjectSettings 的 NavMesh/Agent 设置 | *“显示 NavMesh/导航设置”* | | `get_xr_settings` | XR/VR 项目设置 | *“配置了哪些 XR 或 VR 设置?”* | | `get_script_execution_order` | 脚本执行顺序(MonoManager) | *“显示脚本执行顺序”* | | `get_version_control_settings` | 序列化模式、可见的 meta 文件 | *“版本控制/序列化配置是什么?”* | | `get_layer_collision_matrix` | 层碰撞矩阵和层名称 | *“显示层碰撞矩阵”* · *“哪些层会发生碰撞?”* | | `get_cloud_services_config` | Unity Cloud / Unity Connect 配置 | *“是否已配置 Unity Cloud?”* | | `get_package_dependency_graph` | 包依赖关系图(manifest + lock) | *“显示包依赖关系图”* | | `list_package_samples` | Packages 下的 Samples 文件夹 | *“列出包示例”* | | `list_unity_hub_projects` | 列出 Unity Hub 中的 Unity 项目(无需项目路径) | *“列出我的 Unity Hub 项目”* |
💻 代码与程序集 | 工具 | 描述 | 可输入的提示词示例 | |------|-------------|-------------------------| | `list_assemblies` | 列出程序集定义及其引用和平台 | *"列出程序集定义"* | | `get_assembly_for_path` | 获取包含指定脚本或文件夹路径的程序集 | *"哪个程序集包含 Assets/Scripts/Player.cs?"* | | `list_scripts_by_assembly` | 列出指定程序集中的 C# 脚本路径(按名称或 asmdef 路径) | *"列出 Assembly-CSharp 中的脚本"* · *"MyGame.Runtime 中有哪些脚本?"* | | `list_asmdef_references` | 列出引用指定程序集的程序集名称(反向依赖) | *"哪些程序集依赖 MyGame.Core?"* | | `list_scripts` | 列出 C# 脚本(可选文件夹筛选) | *"列出所有 C# 脚本"* · *"显示 Assets/Scripts 中的脚本"* | | `find_scripts_by_content` | 按类型或模式查找(例如 MonoBehaviour) | *"查找继承 MonoBehaviour 的脚本"* | | `get_assembly_dependency_graph` | 节点和边 | *"显示程序集依赖关系图"* | | `list_editor_scripts` | 列出 Editor 文件夹中的脚本 | *"列出编辑器脚本"* | | `list_visual_scripting_assets` | Bolt / Unity Visual Scripting .asset 文件 | *"列出 Visual Scripting 资源"* | | `get_script_public_api` | 解析 C# 脚本:类名、基类类型、公共方法/字段 | *"PlayerController.cs 的公共 API 是什么?"* |
🎬 场景和预制件
工具描述可输入的提示词示例
list_all_scenes列出 Assets 下的所有 .unity 文件"列出所有场景"
get_scene_summary根 GameObject、组件数量"概述 MainMenu.unity" · "这个场景里有什么?"
get_scene_components_by_type列出场景中带有指定组件类型(例如 Camera、Light)的 GameObject"Game.unity 中哪些 GameObject 带有 Camera?"
get_scene_objects_by_tag列出场景中带有指定标签(例如 Spawn)的 GameObject"查找此场景中带有 Spawn 标签的对象"
get_all_components_by_type列出所有场景中的全部 Camera/Light 等"列出项目中的所有 Camera"
get_scene_hierarchy_flat场景中 GameObject 的扁平列表(名称和图层)"列出 Main.unity 中的所有对象及其图层"
get_lighting_scene_info场景的光照资源和 GI 工作流模式"Main.unity 使用什么光照设置?"
list_prefabs列出预制件(可选路径前缀)"列出所有预制件" · "列出 Assets/Prefabs 中的预制件"
list_prefab_variants列出作为其他预制件变体的预制件"列出预制件变体"
list_prefabs_with_component列出包含指定组件类型(例如 Animator)的预制件"哪些预制件带有 Animator?"
get_prefab_summary预制件摘要:根名称、组件数量、组件类型"概述 Hero.prefab" · "这个预制件里有什么?"
get_prefab_script_guids列出预制件使用的脚本 GUID"Hero.prefab 使用了哪些脚本?"
list_subscenes列出 ECS/DOTS .subscene 资源"列出子场景"
📁 资源和引用 | 工具 | 描述 | 可输入的提示词示例 | |------|-------------|-------------------------| | `get_asset_folder_tree` | Assets 下的文件夹树 | *“显示资产文件夹树”* | | `list_assets_by_extension` | 按扩展名筛选(例如 .png、.fbx) | *“列出所有 .png 纹理”* · *“列出 FBX 模型”* | | `find_references` | 引用了某个路径或 GUID 的资产 | *“哪些内容引用了这个资产?”* · *“查找哪些内容使用了 Assets/Textures/hero.png”* | | `list_large_assets` | 大于 N MB 的文件(默认为 5) | *“列出大型资产”* · *“大于 10 MB 的有哪些?”* | | `list_video_clips` | 视频剪辑资产(.mp4、.mov、.webm 等) | *“列出视频剪辑”* | | `list_legacy_font_assets` | 旧版字体(.fontsettings、.ttf、.otf)——不包括 TMP | *“列出旧版字体”* | | `list_render_textures` | RenderTexture 资产 | *“列出渲染纹理”* | | `list_terrain_data` | TerrainData 和 TerrainLayer 资产 | *“列出地形数据”* | | `list_lighting_settings_assets` | 与光照相关的 .asset 文件 | *“列出光照设置资产”* | | `search_assets_by_name` | 按名称模式搜索 Assets(也可选择搜索 Packages) | *“搜索名称为 ‘hero’ 的资产”* | | `get_texture_meta` | 纹理 .meta(maxSize、尺寸、spriteMode、PPU) | *“hero.png 的导入设置是什么?”* | | `search_project` | 综合搜索:名称模式、脚本模式,和/或指定路径的引用者 | *“在项目中搜索 X”* · *“哪些内容引用了这个路径?”* | | `get_meta_for_asset` | 读取任意资产路径的 .meta(guid、导入器键) | *“显示 Assets/Models/character.fbx 的 .meta”* | | `get_broken_asset_refs` | 包含任意缺失 GUID 引用的 Prefab/场景/材质 | *“查找失效的资产引用”* | | `list_scriptable_objects` | 作为 ScriptableObject 实例的 .asset 文件 | *“列出所有 ScriptableObject 资产”* |
🎨 材质与着色器
工具描述可输入的提示词示例
list_materials材质(可选文件夹)“列出所有材质” · “列出 Assets/Materials 中的材质”
list_materials_using_shader使用指定着色器(GUID 或路径)的材质“哪些材质使用 Standard 着色器?”
list_shadersAssets 和 Packages 中的 .shader 文件“列出着色器”
list_shader_graphsShader Graph 资产“列出 Shader Graph 资产”
list_vfx_graphsVFX Graph 资产“列出 VFX Graph 资产”
🎞️ 动画
工具描述可输入的提示词示例
list_animator_controllers.controller 资产“列出 Animator 控制器”
list_animation_clips.anim 资产“列出动画剪辑”
get_animator_states控制器中的状态名称“Player.controller 中有哪些状态?”
get_animator_transitions控制器中的状态名称及起始/目标状态转换“显示 Player.controller 中的 Animator 转换”
list_timeline_playablesTimeline .playable 资产“列出 Timeline 可播放项”
list_avatar_masksAvatar Mask(.mask)资产“列出 Avatar Mask”
list_animator_override_controllersAnimatorOverrideController 资产“列出 Animator 覆盖控制器”
🖼️ 2D 与精灵
工具描述可输入的提示词示例
list_sprite_atlasesSprite Atlas 资产“列出 Sprite Atlas”
list_tilemap_assets与 Tilemap 相关的资产“列出 Tilemap 资产”
list_sprite_assets配置为精灵的纹理(.meta 中的 spriteMode)“列出精灵资产”
✨ 渲染 | 工具 | 描述 | 可输入的示例提示词 | |------|-------------|-------------------------| | `list_render_pipelines` | URP/HDRP 渲染管线资源、Volume 配置文件 | *“列出渲染管线”* · *“有哪些 URP/HDRP 资源?”* |
📝 TextMeshPro 与 UI
工具描述可输入的示例提示词
list_tmp_fontsTMP/字体资源“列出 TextMeshPro 字体”
get_tmp_settings_pathTMP Settings 资源路径“TMP Settings 在哪里?”
list_ui_documents.uxml 和 .uss(UI Toolkit)“列出 UI Toolkit 文档” · “列出 UXML 和 USS 文件”
🎮 输入
工具描述可输入的示例提示词
get_input_axesInputManager 轴“Input Manager 中有什么?” · “显示输入轴”
list_input_action_assets新 Input System 的 .inputactions“列出 Input System 操作资源”
get_input_actions_summary文件中的操作映射和操作“总结 Player.inputactions”
🏷️ 标签与层
工具描述可输入的示例提示词
get_tags_and_layersTagManager 中的标签和层“显示标签和层”
🌐 Addressables 与本地化
工具描述可输入的示例提示词
get_addressables_info组和配置路径“有哪些 Addressables 组?”
get_localization_tables本地化表文件“列出本地化表”
🔊 音频
工具描述可输入的示例提示词
list_audio_clips.wav、.mp3、.ogg、.aiff“列出音频片段”
list_audio_mixersAudio Mixer 资源“列出音频混音器”
🧪 测试与文档
工具描述可输入的示例提示词
list_test_assemblies测试程序集定义“列出测试程序集”
get_repo_docsREADME、CONTRIBUTING、.cursorrules 等“显示仓库文档” · “README 中有什么?”
read_agent_docs.agents/AGENT.md、可选的 REPO_UNDERSTANDING.md“阅读 Agent 文档” · “显示 AGENT.md”
🔄 CI 与版本控制
工具描述可输入的示例提示词
list_ci_configs.github/workflows、Jenkinsfile、unity-cloud-build“列出 CI 配置” · “显示 GitHub 工作流”
list_presets.preset 资源“列出预设”
get_git_lfs_tracked.gitattributes 中的 LFS 模式“Git LFS 跟踪了什么?”
get_plastic_configPlastic SCM 配置“显示 Plastic SCM 配置”
🔌 集成(仅发现配置) | 工具 | 描述 | 可输入的提示词示例 | |------|-------------|-------------------------| | `get_playfab_config` | Title ID、配置路径 | *“PlayFab 是否已配置?”* | | `list_figma_related_assets` | Figma 文件夹 / 已命名资源 | *“列出与 Figma 相关的资源”* | | `get_firebase_config` | GoogleServices 路径、项目 ID | *“显示 Firebase 配置”* | | `get_steam_config` | steam_appid.txt、Steamworks 路径 | *“Steam 是否已配置?”* | | `get_discord_config` | Discord SDK 路径 | *“显示 Discord 配置”* | | `get_fmod_config` | Banks 路径、bank 文件 | *“显示 FMOD 配置”* | | `get_wwise_config` | Sound banks、项目路径 | *“显示 Wwise 配置”* | | `list_substance_assets` | .sbsar、.sbs | *“列出 Substance 资源”* | | `list_speedtree_assets` | .spm、.stm | *“列出 SpeedTree 资源”* | | `list_lottie_assets` | Lottie JSON 资源 | *“列出 Lottie 资源”* | | `get_analytics_or_crash_config` | Sentry、Crashlytics、BugSnag 等 | *“已配置哪些分析或崩溃报告工具?”* | | `get_ads_config` | Unity Ads、AdMob、ironSource 是否存在 | *“是否已配置广告 SDK?”* | | `get_multiplayer_stack` | Netcode / 多人游戏包和脚本 | *“此项目使用什么多人游戏技术栈?”* | | `get_ugs_cloud_stack` | Unity Gaming Services / Cloud Code 清单 | *“是否已配置 UGS 或 Cloud Code?”* |
🧱 Unity 6 支持范围
工具描述可输入的提示词示例
list_build_profilesUnity 6 Build Profile 资源“列出构建配置文件”
get_physics_stackUnity Physics / Physics Core 2D / 经典物理系统“检查物理系统技术栈”
get_optimization_package_inventoryAdaptive Performance + Project Auditor“是否已安装 Adaptive Performance?”
get_accessibility_stack无障碍 API 和软件包“是否使用了无障碍 API?”
list_cinemachine_assetsCinemachine 摄像机及相关资源“列出 Cinemachine 资源”
get_platform_build_hintsAndroid/WebGL PlayerSettings 片段“显示平台构建提示”
get_render_pipeline_migration_hintsBIRP 与 URP/HDRP 的迁移风险“我们还在使用 Built-in RP 吗?”
get_localization_stackLocalization 软件包 + locale 表“检查本地化设置”
⚡ 速度与效率
工具描述可输入的提示词示例
get_project_stats一次性统计:脚本、预制件、场景、材质、动画、程序集、软件包“提供项目统计信息” · “有多少个预制件和场景?”
get_scene_referenced_assets场景引用的资源路径(构建大小 / 影响)“Main.unity 引用了哪些资源?”
detect_assembly_cycles程序集定义中的循环引用(修复编译错误)“检测程序集循环依赖” · “是否存在程序集循环引用?”
find_script_references引用了某个类型/类名的 C# 文件(重构)“查找对 PlayerController 的引用”
get_broken_script_refs缺少脚本引用的预制件/场景“查找缺少脚本的预制件”
get_prefab_dependencies预制件引用的资源路径(影响分析)“Hero.prefab 依赖什么?”
get_release_readiness一次性检查:版本、构建场景、软件包、损坏的引用、循环依赖、大型资源“项目是否已准备好发布?” · “运行发布就绪检查”
get_build_size_estimate构建大小估算:构建场景的总大小和最大资源“构建大小是多少?” · “显示构建中最大的资源”
🤖 AI 与 ML | 工具 | 描述 | 可输入的示例提示词 | |------|-------------|-------------------------| | `get_ai_stack_summary` | 一次性 AI 审计:程序包、模型、脚本、ML-Agents YAML | *“这个项目使用了哪些 AI?”* · *“运行 AI 技术栈审计”* | | `get_ai_ml_package_inventory` | ML-Agents、Sentis、Barracuda、AI Navigation、Muse、Unity AI | *“列出 Unity AI/ML 程序包”* | | `list_ml_model_assets` | `.onnx`、`.nn`、`.pt`、`.tflite`、`.pb` 模型文件 | *“列出项目中的 ONNX 模型”* | | `find_ai_related_scripts` | 使用 Sentis、ML-Agents、NavMesh、行为树、LLM API 的 C# 脚本 | *“哪些脚本使用了 ML-Agents 或 Sentis?”* | | `list_ml_agents_training_configs` | ML-Agents 训练器 YAML 配置 | *“查找 ML-Agents 训练配置”* | | `list_ai_prompt_or_config_assets` | Assets 下类似提示词/RAG 的 JSON 或 MD | *“Assets 中有 LLM 提示词资源吗?”* | | `list_ai_skills` | 按 Unity 领域划分的内置技能(39 项:场景、多人游戏、构建配置……) | *“列出 Unity 技能”* | | `read_ai_skill` | 按 ID 读取技能(例如 `unity-scenes-workflow`、`unity-multiplayer-netcode`) | *“读取 unity-ai-audit 技能”* |
🔍 元信息
工具描述可输入的示例提示词
search_tools按意图查找相关工具(例如查找引用、缺失脚本)。省略查询即可按类别列出所有工具。“有哪些 Unity 工具?” · “查找用于查找引用的工具” · “按类别列出所有工具”

使用 search_tools — 可传入可选的 query,按名称、描述或类别筛选工具。省略 query 可获取按类别分组的完整目录。

意图示例查询可获取的工具(概念上)
查找引用了某个资源的内容find referencesfind_references、search_project、……
修复预制件上的缺失脚本missing scriptget_broken_script_refs、……
处理纹理textureget_texture_meta、list_assets_by_extension、……
列出或检查预制件prefablist_prefabs、list_prefabs_with_component、get_prefab_dependencies、……
场景和构建顺序scene 或 buildlist_all_scenes、list_build_scenes、get_scene_summary、……
C# 脚本和 APIscript 或 assemblylist_scripts、get_script_public_api、find_scripts_by_content、……
动画animation 或 animatorlist_animator_controllers、list_animation_clips、……
列出所有内容(不筛选)(省略查询)按类别分组的所有工具

所有工具仅从项目文件系统读取数据。


实际示例

将以下内容复制并粘贴到 Claude、Cursor 或任何 MCP 客户端中(需配置此服务并设置 UNITY_PROJECT_PATH)。AI 会选择合适的工具。

角色示例提示词
开发者“Assets/Scripts/Player.cs 属于哪个程序集?” · “列出 MyGame.Runtime 中的脚本” · “哪些内容依赖 MyGame.Core?” · “是否存在程序集依赖循环?” · “运行发布就绪检查”
测试人员“构建中包含哪些场景?” · “列出名称中包含 test 的程序集” · “项目是否已准备好发布?” · “构建大小是多少,最大的资源有哪些?”
游戏开发者“哪些预制件包含 Animator?” · “总结 Hero.prefab” · “显示 Player.controller 中的 Animator 过渡” · “列出输入操作资源”
游戏设计师“哪些材质使用 Standard 着色器?” · “列出所有 ScriptableObject 资源” · “总结 Main.unity” · “Main.unity 使用了什么光照?” · “列出 Main.unity 中的所有对象及其图层”

在 Claude / Cursor 或任何其他 MCP 客户端中输入什么

在 Claude、Cursor 或任何 MCP 客户端中,使用自然语言提问;AI 会选择合适的工具。请使用上方各工具表格中的可输入的示例提示词列——这些短语可输入聊天中,以获得相应结果。


前提条件

  • Node.js 18+
  • UNITY_PROJECT_PATH — Unity 项目根目录的绝对路径(在 MCP 客户端中设置)

安装

git clone https://github.com/rachitkumarrastogi/unity-mcp-server.git
cd unity-mcp-server
npm install
npm run build

该服务使用 stdio;MCP 客户端会自动启动它。


配置

Cursor 示例(Claude Desktop、VS Code + MCP、Windsurf 等的配置思路相同):

{
  "mcpServers": {
    "unity": {
      "command": "node",
      "args": ["/absolute/path/to/unity-mcp-server/dist/index.js"],
      "env": {
        "UNITY_PROJECT_PATH": "/absolute/path/to/YourUnityProject"
      }
    }
  }
}

请将路径替换为实际路径。对于 Claude Desktop,在 claude_desktop_config.json 的 mcpServers 下添加一项,并使用相同的 command、args 和 env。对于 VS Code,使用 MCP 扩展的配置添加服务和 UNITY_PROJECT_PATH。其他客户端也按照相同方式在各自的配置文件中进行配置。


开发

  • 运行构建版本: node dist/index.js
  • 运行开发版本: npm run dev 或 npx tsx src/index.ts

与 Unity Editor 集成

  • 当前工作流: AI 在 IDE(Cursor、VS Code with MCP、Claude Desktop、Windsurf 或其他支持 MCP 的客户端)中运行。此服务为 AI 提供对项目的只读访问权限(场景、脚本、设置及相关资源)。你需要单独运行 Unity Editor 来打开场景、进入 Play 模式并构建。AI 使用此服务检查项目、提出修改建议、回答问题并协助重构。

  • 未来兼容性: 此服务通过 stdio 实现标准 MCP 协议,并且只需要一个环境变量(UNITY_PROJECT_PATH)。如果 Unity Editor 获得内置 MCP 客户端支持,你可以使用相同的配置将其连接到此服务:命令为 node,参数指向 dist/index.js,并在环境中设置 UNITY_PROJECT_PATH。无需更改此代码库。


安全性

此代码仓库不包含游戏代码、资源或机密信息。Unity 项目路径由 MCP 客户端在运行时提供。此服务适用于公开和私有用途。


文档

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。