← 返回目录
U

Unity API Documentation MCP Server

社区
为 AI 代理提供准确的 Unity API 文档,杜绝伪造签名
GitHub 源仓库 ↗
★ 67 Stars 分类 · 开发工具 热门
59FMRS · C

这是一个面向 Unity 开发者的第三方 MCP 服务器,通过按版本索引的 SQLite 数据库为 AI 代理提供准确的 Unity API 文档,包括方法签名、重载、命名空间和废弃警告。README 中给出的基准测试显示,使用该 MCP 的配置在 25 道题中答对 24 道且零幻觉,明显优于仅使用 Grep/Read 的配置。它支持 Unity 6、2023 和 2022 LTS,兼容 Claude Code、Cursor 和 Windsurf,无需安装 Unity,数据库每周自动重建。局限在于不覆盖第三方资源,且首次使用需要联网下载数据库。适合希望减少 AI 幻觉、提升代码可编译性的 Unity 团队。

可靠性
9/20
安全与权限
11/20
维护活跃度
12/20
文档质量
14/20
安装易用性
13/20
查看 FMRS 评分方法 →

这是一个 MCP 服务器,为 AI 代理提供准确的 Unity API 文档,防止出现伪造的方法签名、错误的命名空间以及已废弃 API 的误用。它支持 Unity 6(每个次要版本流一个数据库)、Unity 2023 和 Unity 2022 LTS,可与 Claude Code、Cursor、Windsurf 或任何兼容 MCP 的 AI 工具配合使用。使用时无需安装 Unity。服务器首次运行时会自动下载对应版本的 SQLite 数据库(约 20-30 MB)到 ~/.unity-api-mcp/ 目录,所有工具调用均查询该版本专属数据库,每次查询在 15 毫秒内返回结果。数据库每周自动重建,以覆盖新的 Unity 版本。该项目不覆盖第三方资源(如 DOTween、VContainer、Newtonsoft.Json)。

工具能力

search_unity_api
按关键词查找 API,例如“Tilemap SetTile”“async load scene”
get_method_signature
获取精确的方法签名及全部重载,例如 UnityEngine.Physics.Raycast
get_namespace
解析 using 指令,例如“SceneManager”对应 using UnityEngine.SceneManagement;
get_class_reference
获取完整的类参考卡片,例如“InputAction”的全部方法、字段和属性
get_deprecation_warnings
检查 API 是否已废弃,例如“WWW”应改用 UnityWebRequest

安装接入

  1. 在 MCP 配置文件中(如 .mcp.json、mcp.json 或工具的 MCP 设置)添加服务器配置:使用 uvx 运行 unity-api-mcp,并将 UNITY_VERSION 设置为与项目匹配的值(如 "6000.3"、"6"、"2023" 或 "2022")。
  2. 也可用 pip install unity-api-mcp 安装,然后在配置中将 command 设为 unity-api-mcp。
  3. 若不设置 UNITY_VERSION,可设置 UNITY_PROJECT_PATH 指向 Unity 项目路径,服务器会读取 ProjectSettings/ProjectVersion.txt 自动检测版本;两者都未设置时默认使用 "6"。
  4. 首次运行时服务器会自动下载对应版本的数据库(约 20-30 MB)到 ~/.unity-api-mcp/。
  5. 在项目的 CLAUDE.md 或等效的指令文件中添加 README 提供的使用说明片段,帮助 AI 知道何时调用这些工具。
claude_desktop_config.json
{
  "mcpServers": {
    "unity-api": {
      "command": "uvx",
      "args": ["unity-api-mcp"],
      "env": {
        "UNITY_VERSION": "6000.3"
      }
    }
  }
}

选型与风险

适合谁

  • 使用 Claude Code、Cursor 或 Windsurf 开发 Unity 项目的团队
  • 需要避免 AI 生成虚假 Unity API 签名的开发者
  • 支持 Unity 6、Unity 2023 或 Unity 2022 LTS 的项目
  • 希望减少源代码读取、节省上下文与 token 的 AI 辅助工作流

不适合谁

  • 需要查询 DOTween、VContainer、Newtonsoft.Json 等第三方资源的用户(不在索引范围内)
  • 使用 Unreal Engine 或其他非 Unity 引擎的开发者
  • Python 版本低于 3.10 的环境
  • 需要官方 Unity 支持的场景(本项目为独立第三方项目)

所需权限

  • 读取本地 MCP 配置文件的权限
  • 首次运行时访问网络下载数据库(约 20-30 MB)
  • 读写 ~/.unity-api-mcp/ 目录以缓存数据库
  • 可选的 UNITY_PROJECT_PATH 会读取项目下的 ProjectSettings/ProjectVersion.txt
  • 可选的 UNITY_INSTALL_PATH 仅在本地构建数据库(ingest)时用于定位 Unity 安装路径

风险与副作用

  • 首次运行或数据库更新需要网络访问,无法联网时需本地构建数据库
  • 下载的数据库约 20-30 MB,会占用本地磁盘空间
  • 环境变量 UNITY_VERSION 设置错误可能导致返回错误版本的 API 文档
  • 数据库由 CI 每周自动重建,版本覆盖可能与最新 Unity 发布存在时间差
  • 第三方资源不在索引中,查询这些包会返回空结果

常见排障

  1. 若提示“Could not download Unity X database”,检查网络连接,或使用 python -m unity_api_mcp.ingest --unity-version 2022 在本地构建数据库
  2. 若服务的 API 版本不正确,显式设置 UNITY_VERSION,并通过 stderr 输出“unity-api-mcp: serving Unity <version> API docs”确认
  3. 若服务器无法启动,检查 python --version 是否为 3.10+,并用 which unity-api-mcp 或 where unity-api-mcp 检查路径
  4. 若第三方包查询没有结果,属于预期行为:DOTween、VContainer、Newtonsoft.Json 未被索引
  5. 若 AI 不调用这些工具,检查是否已按 README 在 CLAUDE.md 中添加使用说明片段

使用场景

在编写 Unity API 调用前验证方法签名,避免猜测出错
查询类型的命名空间,正确添加 using 指令
查看类的全部成员(方法、字段、属性)
检查某个 Unity API 是否已被废弃及替代方案
让 AI 代理在 Unity 项目中生成可编译的代码

支持客户端

Claude Code完整支持
Cursor完整支持
Windsurf完整支持