关于 3d-texture-toolkit
3D Texture Toolkit 是本地 MCP 服务,可从 GLB 2.0 文件提取内嵌 PBR 纹理并写入磁盘。它保留底色和法线图像的原始字节,并将金属度-粗糙度贴图拆分为灰度文件。
主要功能
- 01提取本地 GLB 文件中的内嵌贴图
- 02保留底色与法线图像原始字节
- 03将粗糙度和金属度通道拆为 PNG
- 04对拆分贴图应用 glTF 材质因子
- 05报告已写入文件、跳过项和警告
适用场景
- 01提取本地 GLB 模型中的纹理
- 02制作独立的粗糙度和金属度贴图
- 03避免重新压缩底色与法线图像
MCP 相关
该服务向 MCP 客户端提供 `extract_pbr_maps` 工具。客户端传入本地 GLB 路径,也可设置输出目录和是否覆盖文件。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
1收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| glb_path | string | 是 | 本地 .glb 文件的路径。 |
| overwrite | boolean | 否 | 替换输出名称相同的文件。默认为 false。 |
| output_dir | string | 否 | 提取图像的目录。默认使用 GLB 所在目录下的 <glb-name>-textures。 |
详细介绍
3D Texture Toolkit MCP
一个本地 MCP 服务,可从 GLB 文件中提取嵌入的 PBR 纹理图像。
它提供一个工具:extract_pbr_maps。
要求
- Node.js 20 或更高版本
- 支持本地 stdio 服务的 MCP 客户端
安装和运行
此软件包发布到 npm 后,使用
npx
在 MCP 客户端中安装:
npx -y 3d-texture-toolkit-mcp
服务会读取 MCP 客户端提供的 GLB 路径,并将提取的图像写入磁盘。基础颜色和法线图像会保留原始 PNG、JPEG 或 WebP 字节。glTF 金属度-粗糙度图像会拆分为灰度 PNG 文件:粗糙度取自绿色通道,金属度取自蓝色通道。相应的 glTF 材质系数会应用于这两张图。
客户端配置
接受 mcpServers 对象的 MCP 客户端配置示例:
{
"mcpServers": {
"3d-texture-toolkit": {
"command": "npx",
"args": ["-y", "3d-texture-toolkit-mcp"]
}
}
}
在 npm 发布前进行本地开发时,请构建软件包,并将客户端指向 node,参数为 dist/index.js 的绝对路径。
工具输入
glb_path(必填):本地 GLB 2.0 文件的路径。output_dir(可选):输出文件夹。默认会在 GLB 文件旁创建一个名为<glb-name>-textures的文件夹。overwrite(可选,默认为false):替换名称匹配的输出文件。默认会跳过现有文件。
输出名称包含材质编号、经过清理的材质名称和贴图类型。工具会报告写入的文件、跳过的贴图和警告。
隐私
该服务会在你的计算机上处理文件。它不会发起网络请求,也不会上传模型或纹理数据。运行 MCP 服务的机器必须能够访问 GLB 文件和输出目录。
限制
- 支持 GLB 2.0 中嵌入在缓冲区视图中的图像,或以受支持的 PNG、JPEG 和 WebP 格式表示的数据 URI。
- 不会读取外部图像 URL 和外部缓冲区文件。
- 不会解码其他图像格式,包括 KTX2 和 Basis Universal。
- 不会应用纹理变换、备用 UV 集、遮蔽贴图、自发光贴图,以及会改变材质解释方式的扩展。
- 打包的金属度-粗糙度图像会转换为灰度 PNG。基础颜色和法线图像会直接复制,不进行重新压缩。
- 出于安全限制,会拒绝大于 512 MiB 的文件和超过 1 亿像素的解码图像。
发布状态
软件包名称为 3d-texture-toolkit-mcp,此代码库包含供官方 MCP Registry 使用的 server.json 元数据。软件包采用 MIT License。提交至 Registry 后,请确认服务已在其中显示;仅有元数据并不能确认其已列入 Registry。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。