Unity资源商店MCP服务器

用于浏览、下载、提取和转换Unity Asset Store资源的MCP服务器,支持Claude Code及其他MCP兼容AI代理。

  • by Armax
  • TypeScript
  • 本地部署
  • 9 星标
  • 更新于
在 GitHub 查看 Armax/unitystore-mcp

使用说明

Unity资产商店MCP

MCP服务器,用于浏览、下载、提取和转换Unity Asset Store软件包。与Claude Code和其他MCP兼容的AI代理配合使用。

安装

# Clone and install dependencies
git clone <repo-url> && cd UnityStoreMCP
bun install

可选:转换依赖关系

  • FBX到glTF: brew install fbx2gltf (macOS)或安装 FBX2glTF
  • TGA/PSD转换为PNG:使用macOS sips 默认情况下,或 ffmpeg 作为后备

设置

添加到MCP客户端配置中(例如。 ~/.claude/settings.json):

{
  "mcpServers": {
    "unity-store": {
      "command": "bun",
      "args": ["run", "/path/to/UnityStoreMCP/src/index.ts"]
    }
  }
}

认证

服务器使用来自的Cookie进行身份验证 assetstore.unity.com:

  1. 登录https://assetstore.unity.com在浏览器中
  2. 打开DevTools(F12)→ 网络选项卡
  3. 复制完整 Cookie 任何请求的标头值
  4. 使用 configure-auth 随着 method: "session_token" 并粘贴cookie字符串

服务器将这些Cookie交换为下载所需的内部令牌。

工具

工具 说明
configure-auth 通过Unity资产商店进行身份验证
search-assets 按查询搜索店铺
get-asset-details 获取特定资产ID的详细信息
list-my-assets 列出您购买/拥有的资产
download-asset 下载a .unitypackage 按ID
list-local-packages 列出Unity编辑器缓存的包
inspect-package 预览包内容而不提取
extract-package 提取物 .unitypackage 到磁盘
convert-assets 将Unity资源转换为Three.js格式(FBX→glTF、材料、纹理)
list-extracted 列出提取/转换的目录
browse-files 浏览资产目录中的文件

数据目录

下载、提取和转换的资产存储在 ~/.unity-mcp/.用覆盖 UNITY_MCP_DATA_DIR 环境变量。

包解密

Unity Asset Store包作为AES-256-CBC加密的blob提供。这 download-asset 工具会自动处理此问题:

  1. 从Unity的Kharma API获取下载URL和96字符十六进制解密密钥
  2. 通过流媒体下载加密文件(支持大于2GB的文件)
  3. 拆分密钥:前32个字节→ AES密钥,最后16个字节→ IV
  4. 解密 openssl 并输出标准 .unitypackage (gzip tar)