mcpField
I
IAMF Sentinel

IAMF Sentinel

本地服务
github.com/jlivingston-Cipher媒体与设计04 周前更新

关于 IAMF Sentinel

IAMF Sentinel 是供 Agent 检查和验证 IAMF 音频文件、编译 iamf-loom 打包清单的 MCP 服务。默认不执行操作,只有启动时显式启用才可运行打包流程。

主要功能

  1. 01生成 IAMF 一致性报告
  2. 02检查 IAMF 文件结构
  3. 03将清单编译为打包计划
  4. 04说明已编译的计划
  5. 05按需启用打包执行

适用场景

  1. 01依据一致性规则检查 IAMF 文件
  2. 02检查配置文件、编解码器和流结构
  3. 03打包前审阅目标路由
  4. 04启用后执行并验证打包任务

MCP 相关

向 MCP 客户端提供 iamf-sentinel 验证与检查工具,以及 iamf-loom 编译和说明工具。只有使用 `--enable-run` 启动时才会注册执行工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"jlivingston-cipher-iamf-sentinel": {
"command": "uvx",
"args": [
"iamf-sentinel-mcp"
]
}
}
}
启动命令uvx iamf-sentinel-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypiiamf-sentinel-mcp0.2.4

工具

4

收录的工具列表 · 更新于 2 周前

参数类型必填说明
pathstring是
strictboolean否
profilestring否

详细介绍

iamf-sentinel-mcp

一个 MCP 服务,向 MCP 客户端——Claude Desktop、 Claude Code 以及任何支持该协议的 Agent 运行时——提供 iamf-sentinel(IAMF 一致性验证器)和 iamf-loom(IAMF 打包器)。

IAMF 是开放媒体联盟的沉浸式音频模型与格式(v1.1.0)。此服务背后的验证器也能读取 IAMF v2.0.0 流, 识别其六种配置文件并检查相关限制,还能读取基于对象的元素及 v2.0.0 渲染设置并进行检查;时间变化的位置 和参数块仍未经验证。此服务让 Agent 能根据规范的一致性规则验证 IAMF 文件,并将打包清单编译为可检查、确定性的计划——且不会执行任何操作(执行是每次启动时单独选择加入的选项,详见下文)。

各处代码注释均引用内部编号设计文档集(doc NN)、ADR 和预先注册的预期标签——DESIGN-NOTES.md 解释了这些标记的含义,并为所有引用的文档编制索引。

工具

工具功能需要工具链
iamf_validate对 .iamf / IAMF-in-MP4 文件生成完整的一致性报告:包含带严重级别的 S 代码问题、摘要和流信息。strict 会将 WARN 提升为失败。否
iamf_inspect结构概览:配置文件、编解码器配置(包括 Opus 预跳过)、元素/演示/帧计数、OBU 剪裁总量、MP4 edts/elst 是否存在。否
loom_compile将 Loom 清单(YAML/JSON)编译为打包计划——仅验证。按目标进行后端/复用器路由并提供理由,或生成 M 代码诊断。否
loom_explain以文本形式运行 loom explain:将已编译的计划作为其自身的说明。否
loom_run编译并执行清单:编码、复用、测量,并通过 Sentinel 验证器对每个输出进行门控。返回各目标的输出(sha256)、门控判定、测得的响度和运行记录路径。只有在启动服务时使用 --enable-run 才会注册。是

资源

  • checks://catalog — 验证器可能生成的所有 S 代码检查项:严重级别、 层、标题、描述和相关 F 注册表条目。
  • mcodes://catalog — 打包器可能报告的所有 M 代码编译诊断及其稳定摘要(已弃用代码也会保留记录)。
  • fregister://catalog — 失效模式注册表(F_TO_CHECK.md):将 WP1/WP3 失效目录映射到 Sentinel 检查项,并以 Markdown 格式提供。

已验证的平台。 每次推送都会在 Linux、macOS 和 Windows 上,使用 Python 3.11 和 3.12 运行此服务的测试套件——ci.yml 是 声明,矩阵是证据。这也有两个边界。首先,此软件包只是一个 薄封装:此处矩阵通过只说明服务在这些平台上的行为正常,而非一致性逻辑正常——后者由 iamf-sentinel 和 iamf-loom 各自的矩阵验证。 其次,CI 中未安装任何编码器工具链,因此 loom_run 的执行路径 仅通过其失败行为进行测试——缺少二进制文件时会提供可执行的错误信息,而非回溯信息。其子进程部分按设计未在此处验证;相关声明由 iamf-loom 负责。矩阵还包含一个没有同级源码检出的 wheel-only 测试项,这正是实际运行 pip install iamf-sentinel-mcp 时会得到的环境。在该环境中,样本门控测试按设计跳过。这里不对未通过测试的任何平台作出声明。

运行

pip install iamf-sentinel-mcp
iamf-sentinel-mcp                # stdio transport, read-only (default)
iamf-sentinel-mcp --enable-run   # additionally registers loom_run (executes)

Claude Desktop / Code 配置:

{ "mcpServers": { "iamf-sentinel-mcp": { "command": "iamf-sentinel-mcp" } } }

范围与立场

  • 默认只读。 未启用 --enable-run 时,工具只会解析和编译;不会执行任何内容、写入文件或访问网络。
  • 执行需在每次启动时主动启用。 --enable-run 会注册 loom_run,它会将编码工具链作为子进程运行并写入文件;loom run 内部的 Sentinel 门禁默认仍处于启用状态。缺少工具链时,会显示可操作的错误,并指出预期的二进制文件路径。Sentinel L3 渲染响度 QC 仍未开放。
  • 该服务是对产品公共 API 的轻量封装;一致性逻辑位于产品内部,并受其各自的测试门禁保护。

与 iamf-sentinel / iamf-loom 堆栈中的其他所有内容一样,采用 Apache-2.0 许可证(参见 LICENSE / NOTICE)。支持政策:参见核心代码库的 SUPPORT.md。

相关项目

  • Inseglet — 面向创作端的配套项目:用于沉浸式创作(床声道、Ambisonics、ADM)的原生 REAPER MCP 扩展,其 spatial.export_loom_manifest 会写入清单,供此服务的 loom_compile / loom_run 接受。在同一个 Agent 会话中同时运行两个服务,即可完成作者 → 打包 → 验证的流程。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。