iqa-mcp · v1.0.1 · PyPI / npm / crates.io 三注册表 · Apache-2.0 · 姊妹柱:rttp://(CRI 27)· iqa://
前两篇讲了双柱的设计:地址是派生的(rttp://),证据是信封(iqa://)。设计讲得再多,不如让读者亲手把一条密码学证据跑通——这一篇只做一件事:带你在 30 秒内,从拿到证据到验证它、再亲手破坏它。
一、它是什么
iqa-mcp 是一个小 MCP server,把双柱协议的能力打包成四个工具。任何 MCP 兼容的客户端——Claude Desktop、Cline、你自己的 agent 栈——都能直接调用。
三条工程纪律先立此存照:无状态(server 不存储任何东西,密钥由调用方每次传入,用完即弃);fail-closed(畸形输入一律拒绝,永不"好心"降级);离线(全部验证逻辑本地完成,零网络、零第三方)。
二、装(三条路,同一个命令)
pip install iqa-mcp # Python ≥ 3.11
npm install -g iqa-mcp # 或一次性:npx iqa-mcp
cargo install iqa-mcp
客户端配置(Claude Desktop / Cline 风格):
{
"mcpServers": {
"iqa": {
"command": "iqa-mcp" }
}
}
三条路装完都是同一个 iqa-mcp 命令,配置通用。
三、30 秒上手链
第 1 步 · published_vector:拿到公开一致性向量 AE128-VECTOR-1——权威字符串、文档化的测试钥、租约、完整 128 字节帧(hex)。这是规范里钉死的固定值。
第 2 步 · parse_envelope(帧):结构化解码。无需任何密钥,逐字段读出魔数、版本、租约、主体分片、地位……格式有一丝不合规即拒绝——畸形输入不会被"解析出部分结果"。
第 3 步 · verify_envelope(帧, 测试钥):常时时间全帧 HMAC-SHA256 验证 + 租约检查。输出:[PASS]——逐字节,任何人复现结果一致。
第 4 步 · 翻一个字节:把帧里随便哪个字节改掉,再验一次。输出:REJECT。
没有报错弹窗,没有"检测到篡改"的提示。帧只是安静地停止了验证——篡改不需要有人盯着才能被挡住,它自己就过不了那道数学的门。

四、四工具分工
- derive_route_shard:从任意权威字符串派生 16 字节意图分片——地址即数学事实,无注册表;
- parse_envelope:结构解码(无钥),fail-closed 于每一条布局规则;
- verify_envelope:全帧验证 + 租约检查,fail-closed,REJECT 是结论不是异常;
- published_vector:公开一致性向量——让"可复现"三个字有据可查。
一个值得停留的设计点:organ 密钥由调用方传入而非托管——谁见到密钥,谁就持有验证权。server 有意不碰它。

五、诚实的边界
iqa-mcp 是工具面,不是新协议——协议在双柱(RTTP+IQA)与草案里;它不托管密钥;不做实时风控;四个工具的拆分是否最优,正在公开征集意见(规范仍在审核中,不是刻在石头上)。
仓库:github.com/Aicent-Stack/iqa-mcp · 落地页与全部证据链:iqa.org · 寻址柱官网:rttp.com
一句话:别信这篇文档——把向量跑一遍,30 秒,你就有自己的答案。