关于 nomue Record Verifier
nomue Record Verifier 是供 MCP 客户端使用的本地记录验证器,面向需要检查 nomue Protocol Record 的用户。当前实验版仅支持指定 Release 1 Welch bundle,并将验证工作交给固定版本的验证器依赖;检查结果不代表科学真伪或有效性。
主要功能
- 01本地验证 nomue Protocol Record
- 02支持指定的 Release 1 Welch bundle
- 03检查结构、摘要、可采纳性与可计算性
- 04重新计算双侧 Welch 检验
- 05保留验证器输出及输入输出摘要
适用场景
- 01检查完整记录是否符合支持的 bundle
- 02核对记录摘要与双侧 Welch 计算
- 03将验证结果及摘要提供给后续流程
MCP 相关
通过 stdio MCP 服务提供 verify_nomue_record 工具,输入为记录 JSON 文本。服务仅支持指定 bundle,拒绝不支持的 bundle,不连接托管服务,也不需要运行时网络。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
1收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| record_json | string | 是 | 完整的 nomue Record,采用 JSON 文本格式。传入原始文本,包括空候选文本或格式错误的候选文本,以便由验证器负责严格解析、拒绝重复成员、验证摘要和执行资源限制。 |
详细介绍
nomue 记录验证器
面向 MCP 客户端,对 nomue 协议记录进行本地、独立于发行方的验证。
状态
@licklider/nomue-verifier-mcp 是面向第一阶段本地使用的实验性候选发布版本。它仅支持 stdio。它不会公开 HTTP 端点、要求账户、使用 API 密钥,也不会调用 Licklider 托管的服务。
该服务是对以下精确 npm 依赖项的轻量封装:
@licklider/[email protected]
它不会独立实现统计或协议语义。
已发布的 CLI tarball 除精确锁定的直接依赖项外,还包含 npm-shrinkwrap.json,因此遵循依赖包 shrinkwrap 文件的 npm 版本可以安装经过审查的运行时依赖树。
版本 0.2.0-rc.1 更新了精确的验证器依赖项,以修正 df=1 Student-t 中心精度。它是首个以明确的 verifier-MCP 软件包标识发布的候选版本。实验性的 @licklider/nomue-mcp 软件包仍是历史版本,不会被重新用作未来的 nomue 产品 MCP。面向用户的名称仍为 nomue Record Verifier,客户端配置键仍为 nomue-verify,唯一的工具仍为 verify_nomue_record。此次标识迁移不会扩大科学范围:此版本仍只接受下文所述的精确 Release 1 Welch bundle。
添加到 MCP 客户端
在客户端的 mcpServers 对象中添加以下单行条目:
"nomue-verify":{"command":"npx","args":["--yes","@licklider/[email protected]"]}
完整的配置文件如下:
{"mcpServers":{"nomue-verify":{"command":"npx","args":["--yes","@licklider/[email protected]"]}}}
这是适用于 macOS、Linux 以及可直接解析 npx 的 MCP 客户端的标准格式。无需设置环境变量。首次启动 npx 时可能会下载 npm 依赖项;安装后,验证过程将在本地运行,无需网络访问。
在无法直接解析 npm 命令 shim 的 Windows 客户端上,可以使用以下等效条目:
"nomue-verify":{"command":"cmd.exe","args":["/d","/s","/c","npx --yes @licklider/[email protected]"]}
仓库 CI 矩阵会验证已安装的 npm 命令 shim,并在 Windows、macOS 和 Linux 上测试已安装的软件包入口点。仓库和 npm 候选版本公开后,还需在 Claude Desktop、Cursor 和 Cline 中使用干净配置进行启动测试,作为发布门槛。
将 nomue Record Verifier 添加到 Cursor
Cursor Plugin 封装
此仓库还包含一个 Cursor Plugin 清单 .cursor-plugin/plugin.json 及其精确锁定版本的 mcp.json。此封装不会添加规则、提示词、凭据、环境变量或远程服务;它安装的是上文所示的同一项本地 stdio 服务配置。清单将该软件包标记为候选版本,不会使其看起来像稳定版本。
仓库中检入的配置如下:
{"mcpServers":{"nomue-verify":{"command":"npx","args":["--yes","@licklider/[email protected]"]}}}
此清单使仓库可用于干净配置下的 Cursor Plugin 测试和 Marketplace 审核。它并不能证明 Cursor Marketplace 上已有在线列表;只有在 Cursor 接受提交后,才能单独记录此事。
工具
verify_nomue_record
该工具名称与方法无关,因为适用哪种已注册的验证语义由 bundle 分发决定,而不是由 MCP 服务或调用方决定。当前版本仅支持以下精确的 Welch bundle。对于不受支持的 bundle,系统会直接拒绝,不会回退或静默切换方法。
适用场景: 你已有一份完整的 nomue Record,其中声明了精确的公开 Release 1 bundle
urn:nomue:bundle:itgc-guarantee:0.2.1-draft.1,并需要进行范围限定的结构、摘要、可接受性、可计算性或双侧 Welch 重新计算检查。
不适用场景: 你只有原始样本,需要进行新的 Welch 计算;需要选择方法;需要对整体科学有效性或因果关系作出判断;需要使用配对 t 检验、Wilcoxon 检验、Mann-Whitney 检验或其他方法;或者使用了不受支持的 Protocol bundle。
输入:
{
"record_json": "{...complete nomue Record JSON text...}"
}
record_json 是 JSON 文本,不是已解析的对象。适配器接受空字符串和格式错误的字符串,并将其传递给验证器。保留原始文本可让严格 JSON 解析、重复成员拒绝、摘要验证和资源限制行为由验证器处理。MCP 字符串无法表示格式错误的 UTF-8 字节序列;请直接使用 npm 验证器 CLI 测试此类字节级拒绝。
结果约定
第一个 MCP 文本内容块是固定版本验证器 CLI 实现输出的原始 stdout,包含末尾换行符。structuredContent 包含相同的已解析验证器产物,不会添加新的适配器判定。MCP 结果元数据包含:
- 验证器退出代码;
- 输入 JSON 文本以 UTF-8 编码后精确内容的 SHA-256 摘要;
- stdout 字节精确内容的 SHA-256 摘要;以及
- 精确的验证器 npm 包标识;以及
- 验证器生成的字段(
generated_at),该字段在独立重放时会变化。
这些元数据字段描述调用和重放证据;它们不是新的判定或保证。
验证器退出代码保留原有含义:
| 代码 | 含义 |
|---|---|
0 | 报告存在,且所有适用的范围限定检查结果均为 pass。 |
2 | 范围限定检查失败,或发生了解析/规范化拒绝。 |
3 | 路由失败或 bundle 不受支持;不存在报告。 |
4 | 因资源限制而安全拒绝。 |
5 | 验证器内部拒绝。 |
代码 2 至 5 仍是正常的、机器可读的验证器产物。仅当适配器自身无法生成验证器报告或拒绝结果时,MCP 调用才会标记为工具错误。
没有一概而论的 VERIFIED 字段。请读取每项范围限定检查、其版本和原因代码,以及 guarantee_boundary。报告结果干净并不能证明科学真相或科学有效性。
精确性与重放
MCP 响应会保留同一次底层验证器调用产生的字节;输入和输出的 SHA-256 元数据可用于验证这一点。使用 @licklider/[email protected] 单独重放时,实质性产物完全一致,但验证器会在每次运行时故意生成新的顶层 generated_at 时间戳。因此,不能如实声称两次独立调用的字节完全相同。测试要求除该字段外的所有字段均相等,并要求 MCP 调用内部逐字节保留原始内容。
如需独立重放,请保存相同的 record_json 文本并运行:
npx --yes @licklider/[email protected] verify ./record.json --format json-compact
支持的环境
| 传输方式 | 操作系统 | Node.js | 身份验证 | 运行时网络 |
|---|---|---|---|---|
| stdio | Linux、macOS、Windows | 20 或 22 | 无 | 不需要 |
该软件包声明 node >=20;版本发布 CI 矩阵配置为在全部三种操作系统上测试 Node.js 20 和 22。在对应的公开 CI 作业和干净配置客户端检查通过之前,不要声称某个操作系统/客户端组合经过了发布测试。
Registry 元数据
server.json 和软件包 mcpName 已为官方 MCP Registry 对齐:
io.github.licklider-ai/nomue-verifier-mcp
Registry 工件仅声明 npm 软件包和 stdio 传输。托管 HTTP、SLA、身份验证、日志记录和速率限制有意不纳入第一阶段。
已准备好的发布和目录提交步骤见
registry/SUBMISSIONS.md。
开发
在此目录中:
npm ci
npm test
npm run test:cursor-plugin
npm run test:package
软件包冒烟测试会将 tarball 打包并安装到包含空格的路径中,启动生成的 npm 可执行文件 shim,列出工具,调用有效、不匹配和空的 Records,检查输出是否保留,并强制执行 10 秒的启动预算。 该预算仅涵盖 MCP 进程启动和工具发现。每次验证器调用都是一个独立的资源受限子进程,设有 60 秒的失败关闭上限,避免在受支持的主机上将 Node.js/tsx 冷启动误判为 MCP 启动失败。
安全性、非声明事项和许可证
请参阅 SECURITY.md、NON-CLAIMS.md 和 LICENSE。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。