VFX Parsers MCP Server
mcp-vfx-parsers
MCP-сервер для парсинга форматов файлов VFX. Выполняйте парсинг и генерацию файлов Nuke .nk, MaterialX .mtlx и USD ASCII .usda — всё через протокол MCP stdio. Стабильность при обратном преобразовании.
Инструменты
Инструмент | Описание |
| Парсинг скрипта |
| Парсинг XML |
| Парсинг текста |
| JSON AST → скрипт |
| JSON AST → XML |
| JSON AST → текст |
Все инструменты работают только для чтения — они преобразуют текст и никогда не обращаются к файловой системе.
Related MCP server: YAML to JSON Converter MCP Server
Установка
npx -y mcp-vfx-parsersИспользование с Claude Code
Добавьте в настройки MCP Claude Code (~/.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 (сохраняются как непрозрачный текст)
Escape-последовательности в значениях в кавычках (
\",\\,\n,\t,\r,\0)
MaterialX .mtlx
Определения сетей шейдинга MaterialX. Парсинг формата на основе XML:
Графы узлов с типизированными входами/выходами
Назначения материалов
Ссылки на соединения
nodename(извлечение ребер DAG)Сохранение атрибутов (стиль кавычек, порядок)
Комментарии и XML-пролог
Кодирование/декодирование XML-сущностей (
&,{,)
USD ASCII .usda
Pixar Universal Scene Description (формат слоев ASCII). Полная поддержка грамматики:
Иерархия примитивов (
def,over,class)Типизированные атрибуты с модификаторами
uniform/customСоединения
.connect(графы узлов UsdShade)Данные анимации
.timeSamplesОтношения (одиночные цели + массивы)
VariantSets с вложенными телами вариантов
Композиционные дуги: ссылки (references), payloads, inherits, specializes
Метаданные слоев и примитивов
Строки в тройных кавычках и пути к ассетам (
@...@,@@@...@@@)
Гарантия обратного преобразования
Все парсеры поддерживают строгий инвариант обратного преобразования:
parse(generate(parse(input))) === parse(input)Nuke и MaterialX создают побайтово идентичный вывод. USDA создает семантически идентичный вывод в канонической форме (комментарии удаляются — задокументированное ограничение).
Безопасность и надежность
Ограничение размера входных данных: Все инструменты отклоняют ввод размером более 10 МБ
Некорректный JSON: Инструменты генерации возвращают понятные сообщения об ошибках вместо аварийного завершения
Отсутствие доступа к файловой системе: Чистые текстовые преобразования, безопасны для песочницы
Без eval/exec: Нет выполнения динамического кода
Без внешних зависимостей: Только
@modelcontextprotocol/sdkБезопасность XXE: Парсер 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 МБ для предотвращения исчерпания памяти
Дубликаты Root в Nuke: Несколько блоков Root объединяются (побеждают последние значения) вместо молчаливого отбрасывания первого
Escape-последовательности Nuke:
unquote()теперь обрабатывает\n,\t,\r,\0в дополнение к\"и\\Сохранение данных USDA: Значения, не являющиеся путями, в массивах
.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