VFX Parsers MCP Server
mcp-vfx-parsers
用于 VFX 文件格式解析的 MCP 服务器。通过 MCP stdio 协议解析并生成 Nuke .nk、MaterialX .mtlx 和 USD ASCII .usda 文件。支持往返稳定性。
工具
工具 | 描述 |
| 解析 |
| 解析 |
| 解析 |
| JSON AST → |
| JSON AST → |
| JSON AST → |
所有工具均为只读 — 它们仅转换文本,绝不触碰文件系统。
Related MCP server: YAML to JSON Converter MCP Server
安装
npx -y mcp-vfx-parsers与 Claude Code 一起使用
添加到您的 Claude Code MCP 设置 (~/.claude/settings.json) 中:
{
"mcpServers": {
"vfx-parsers": {
"command": "npx",
"args": ["-y", "mcp-vfx-parsers"]
}
}
}与 Claude Desktop 一起使用
添加到 claude_desktop_config.json 中:
{
"mcpServers": {
"vfx-parsers": {
"command": "npx",
"args": ["-y", "mcp-vfx-parsers"]
}
}
}支持的格式
Nuke .nk
Foundry Nuke 合成脚本。解析基于 TCL 的堆栈式节点图格式:
节点类型、属性、位置
通过
set/push堆栈指令进行的输入连接根设置(合并重复的 Root 块)
TCL 表达式和 UserKnob 块(作为不透明文本保留)
引号值中的转义序列 (
\",\\,\n,\t,\r,\0)
MaterialX .mtlx
MaterialX 着色网络定义。解析基于 XML 的格式:
带有类型化输入/输出的节点图
材质分配
nodename连接引用(DAG 边提取)属性保留(引号样式、顺序)
注释和 XML 序言
XML 实体编码/解码 (
&,{,)
USD ASCII .usda
Pixar 通用场景描述(ASCII 层格式)。完全支持语法:
Prim 层级 (
def,over,class)带有
uniform/custom修饰符的类型化属性.connect连接 (UsdShade 节点图).timeSamples动画数据关系(单个 + 数组目标)
带有嵌套变体体的 VariantSets
组合弧:引用、载荷、继承、特化
层和 Prim 元数据
三引号字符串和资产路径 (
@...@,@@@...@@@)
往返保证
所有解析器都保持严格的往返不变性:
parse(generate(parse(input))) === parse(input)Nuke 和 MaterialX 生成字节完全相同的输出。USDA 以规范的格式化打印形式生成语义相同的输出(注释会被剥离 — 这是已知的局限性)。
安全性与稳健性
输入大小限制:所有工具拒绝超过 10 MB 的输入
格式错误的 JSON:生成工具返回清晰的错误消息,而不是崩溃
无文件系统访问:纯文本转换,对沙盒环境安全
无 eval/exec:无动态代码执行
无外部依赖:仅依赖
@modelcontextprotocol/sdkXXE 安全:MaterialX 解析器不评估 DOCTYPE/实体声明
Unicode:所有三个解析器均全面支持 UTF-8
开发
git clone https://github.com/MABAAM/mcp-vfx-parsers.git
cd mcp-vfx-parsers
npm install
npm test
node src/server.mjs更新日志
v0.2.0
服务器加固:
JSON.parse()被包裹在安全处理程序中 — 格式错误的输入会返回错误,而不是导致 MCP 服务器崩溃输入大小限制:所有 6 个工具拒绝 > 10 MB 的输入,以防止内存耗尽
Nuke 重复 Root:多个 Root 块会被合并(后面的值胜出),而不是静默丢弃第一个
Nuke 转义序列:
unquote()现在除了\"和\\外,还处理\n,\t,\r,\0USDA 数据保留:
.connect数组和关系目标中的非路径值被保留为<INVALID:kind:value>,而不是被静默丢弃
v0.1.0
初始版本:3 个解析器(Nuke, MaterialX, USDA),6 个 MCP 工具,13 个测试
许可证
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Parse PDF/Word/PPT/HTML to Markdown; tables as JSON, image extraction, RAG chunking, page ranges.
Read and write typed fictional worlds (22 linked element types) via the OnlyWorlds open standard.
Geometry and CAD file metadata extraction for STL, OBJ, PLY, PCD, LAS/LAZ, glTF/GLB.
Deterministic JSON repair, validate, example-gen, schema-coerce for agents. Zero LLM, sub-10ms.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to read, inspect, and manipulate OpenUSD 3D scenes, including scene graph traversal, property querying, mesh export, and variant switching.10MIT
- FlicenseNot gradedqualityDmaintenanceProvides deterministic conversion between YAML and JSON formats, enabling autonomous agents to flawlessly translate complex configurations without LLM formatting errors.6 npm3-
- AlicenseNot gradedqualityDmaintenanceConnects AI assistants to Nuke for compositing tasks via natural language.9MIT
- AlicenseBqualityDmaintenanceA production-grade MCP server for Foundry Nuke that enables AI assistants to understand and manipulate compositing environments, including AOVs, deep workflows, distortion, tracking, OCIO/ACEScct, and CopyCat ML.45MIT