mcp服务器openexr
MCP服务器,允许Claude直接访问本地OpenEXR、TX纹理和DPX文件, 包括元数据、频道信息、像素统计、部分提取、纵横比重构、, 以及EXR序列到视频的转换。
需求
- Python 3.11+
- 紫外线
安装
git clone https://github.com/chordee/mcp-server-openexr.git
cd mcp-server-openexr
uv sync跑步
uv run main.py工具
EXR
| 工具 | 说明 |
|---|---|
get_exr_info | 分辨率、部件计数、通道列表、压缩 |
get_exr_header | 完整的标头属性,包括自定义元数据 |
get_exr_channels | 通道像素类型(HALF/FLOAT/UINT)和采样 |
get_exr_pixel_stats | 像素统计:最小值/最大值/平均值、百分位数、NaN/Inf |
get_exr_sequence_info | 扫描EXR序列,检测缺失帧 |
compare_exr_channels | 比较两个EXR文件之间的通道差异 |
check_exr_validity | 验证EXR完整性并检测NaN/Inf像素 |
extract_exr_part | 将一个零件提取到新的单个零件EXR文件中 |
reframe_exr | 通过扩展(黑色边框)或裁剪来调整纵横比 |
exr_sequence_to_video | 通过颜色空间转换将EXR序列转换为mp4或mov |
reframe_exr 详情
将EXR调整到目标纵横比(宽度/高度)。
mode:expand在一个轴上添加零值填充;crop从一个轴上删除像素target_ratio:例如。2.35,1.85,1.7778(16:9),1.0anchor:控制哪一侧保持固定(默认center)
- 宽度变化(水平): left · center · right - 高度变化(垂直): top · center · bottom
exr_sequence_to_video 详情
将EXR图像序列转换为视频。自动使用捆绑的ffmpeg二进制文件-- 无需安装外部ffmpeg。
codec:h264(.mp4)·h265(.mp4)·prores_hq(.mov)·prores_4444(.mov)input_colorspace:linear(Rec.709线性,默认)·acescg(AP1线性)·srgb(伽玛编码)output_colorspace:srgb(显示就绪,默认)·linear(Rec.709线性)·acescg(AP1线性)tonemap:none(夹紧,默认)·reinhard(软滚降,当源的HDR值大于1时有用)crf:h264/h265的CRF质量(0-51,较低=较好;默认值:h264=18,h265=20)。被ProRes忽略。exposure:在色调映射之前应用乘数(默认值1.0)scale:输出分辨率比例,例如。0.5=50%(默认值1.0)channels:null=自动检测(R/G/B或包装好RGBA);或明确指定,例如。["beauty.R","beauty.G","beauty.B"]
典型用法:
| 源EXR | 目标 | 设置 |
|---|---|---|
| ACEScg渲染 | sRGB评测(mp4) | input_colorspace='acescg', output_colorspace='srgb' |
| 线性渲染 | sRGB评测(mp4) | input_colorspace='linear', output_colorspace='srgb' |
| ACEScg渲染 | ACEScg社论(ProRes) | input_colorspace='acescg', output_colorspace='acescg', codec='prores_hq' |
TX(MIP映射纹理)
TX文件是由生成的MIP映射纹理 maketx (OpenImageIO/Arnold), 用于RenderMan和Arnold渲染管道。
| 工具 | 说明 |
|---|---|
get_tx_info | 分辨率、MIP金字塔、通道列表、图块大小、颜色空间 |
get_tx_header | 给定MIP级别的完整元数据 |
get_tx_channels | 通道名称、像素类型和平铺信息 |
get_tx_pixel_stats | 每个通道的像素统计数据;使用更高 mip_level 用于大纹理的快速近似统计 |
get_tx_sequence_info | 扫描TX序列,检测丢失的帧和不一致性 |
双工器
DPX(数字图像交换)文件通常用于胶片扫描, 数字中间(DI)和VFX流水线。支持8位、10位、12位和16位格式。
| 工具 | 说明 |
|---|---|
get_dpx_info | 分辨率、通道列表、像素格式、位深度和颜色空间 |
get_dpx_header | 完整的DPX标头元数据,包括电影/电视特定字段 |
get_dpx_pixel_stats | 像素统计:最小值/最大值/平均值、百分位数、NaN/Inf计数 |
Claude桌面配置
添加以下内容 claude_desktop_config.json:
{
"mcpServers": {
"openexr": {
"command": "uv",
"args": [
"run",
"--directory",
"/path/to/mcp-server-openexr",
"main.py"
]
}
}
}