Extract embedded PBR texture maps from local GLB files.
A local MCP server that extracts embedded PBR texture images from GLB files.
It exposes one tool: extract_pbr_maps.
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.
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.
glb_path (required): path to a local GLB 2.0 file.output_dir (optional): output folder. By default, a folder named
<glb-name>-textures is created beside the GLB.overwrite (optional, defaults to false): 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.
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.
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.
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
npx -y 3d-texture-toolkit-mcpMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"io-github-jiangshan118-3d-texture-toolkit": {
"command": "npx",
"args": [
"-y",
"3d-texture-toolkit-mcp"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup reference3d-texture-toolkit-mcpnpmio.github.JiangShan118/3d-texture-toolkit works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.