About 3d-texture-toolkit
3D Texture Toolkit is a local MCP server that extracts embedded PBR textures from GLB 2.0 files and writes image files to disk. It preserves base-color and normal image bytes while splitting metallic-roughness maps into grayscale files.
Key features
- 01Extract embedded maps from local GLB files
- 02Preserve base-color and normal image bytes
- 03Split roughness and metallic channels into PNGs
- 04Apply glTF material factors to split maps
- 05Report written files, skips, and warnings
Use cases
- 01Extract textures from a local GLB model
- 02Prepare separate roughness and metallic maps
- 03Avoid recompressing base-color and normal images
MCP support
The server exposes the `extract_pbr_maps` tool to MCP clients. Clients provide a local GLB path and may set an output directory and overwrite behavior.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
1Saved tool list · updated 2w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| glb_path | string | Yes | Path to a local .glb file. |
| overwrite | boolean | No | Replace files with matching output names. Defaults to false. |
| output_dir | string | No | Directory for extracted images. Defaults to <glb-name>-textures beside the GLB. |
Details
From the project README3D Texture Toolkit MCP
A local MCP server that extracts embedded PBR texture images from GLB files.
It exposes one tool: extract_pbr_maps.
Requirements
- Node.js 20 or newer
- An MCP client that supports local stdio servers
Install and run
After this package is published to npm, install it in an MCP client using
npx:
npx -y 3d-texture-toolkit-mcp
The server reads the GLB path supplied by the MCP client and writes extracted images to disk. Base color and normal images keep their original PNG, JPEG, or WebP bytes. The glTF metallic-roughness image is split into grayscale PNG files: roughness comes from the green channel and metallic comes from the blue channel. The corresponding glTF material factors are applied to those two maps.
Client configuration
Example configuration for an MCP client that accepts a mcpServers object:
{
"mcpServers": {
"3d-texture-toolkit": {
"command": "npx",
"args": ["-y", "3d-texture-toolkit-mcp"]
}
}
}
For local development before an npm release, build the package and point the
client at node with the absolute path to dist/index.js as its argument.
Tool inputs
glb_path(required): path to a local GLB 2.0 file.output_dir(optional): output folder. By default, a folder named<glb-name>-texturesis created beside the GLB.overwrite(optional, defaults tofalse): replace files with matching output names. Existing files are skipped by default.
Output names include the material number, a sanitized material name, and the map type. The tool reports written files, skipped maps, and warnings.
Privacy
The server processes files on your computer. It makes no network requests and does not upload model or texture data. The GLB and output directory must be accessible to the machine running the MCP server.
Limitations
- Supports GLB 2.0 with embedded images in buffer views or supported PNG, JPEG, and WebP data URIs.
- External image URLs and external buffer files are not read.
- Other image formats, including KTX2 and Basis Universal, are not decoded.
- Texture transforms, alternate UV sets, occlusion maps, emissive maps, and extensions that alter material interpretation are not applied.
- Packed metallic-roughness images are converted to grayscale PNGs. Base color and normal images are copied without recompression.
- Files larger than 512 MiB and decoded images above 100 million pixels are rejected by safety limits.
Publication status
The package name is 3d-texture-toolkit-mcp, and this repository includes
server.json metadata for the official MCP Registry. The package uses the MIT
License. After submitting it to the Registry, verify that the server is visible
there; the metadata alone does not confirm a Registry listing.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.