关于 ecz-id-mcp-verifier
ecz-id-mcp-verifier 是本地优先、只读的验证工具,可对目标分类,并在适用时检查公开 ECZ-ID Resolver 状态。它面向开发者、CI 维护者和 MCP 宿主,提供确定性结果与后续指引,且不上传源码或发送遥测。
主要功能
- 01无需 LLM 即可确定性地分类目标
- 02检查有效 ECZ-ID 的公开 Resolver 状态
- 03输出 JSON、可读报告或 SARIF
- 04按本地策略生成确定性退出码
- 05可用作 CLI、GitHub Action、Node 库或 MCP 服务
- 06离线运行且不发起网络请求
适用场景
- 01在开发环境检查 ECZ-ID
- 02按指定策略为 CI 流水线设置门禁
- 03通过 MCP 宿主检查目标
- 04离线分类目标并确定后续操作
MCP 相关
它通过 stdio 服务提供三个只读 MCP 工具,用于分类和检查目标、报告结果并指引后续操作;不会检查工件内容,也不会写入 Resolver。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
ECZ-ID MCP Verifier(TM)
通过命令行、CI 或 MCP 宿主检查 ECZ-ID Resolver 的公开状态。无需登录、上传源代码或遥测。由本地策略决定。
这是一款本地优先、隐私优先的工具,可对目标进行分类,在适用时检查其 ECZ-ID Resolver 的公开状态,报告确定性结果,说明结果,并为你提供后续指引。它只读取、报告和提供指引——绝不会写入事实、激活证明、将任何内容标记为 BOUND、执行结账或检查制品内容。
快速开始
npx @ecocitizenz/ecz-id-mcp-verifier check --target ECZ-GB-A93K7Q
check 是可接受的前置子命令;实际执行由 --target 完成。添加 --report 可生成易读的简要报告,添加 --policy REQUIRE 可在缺少证明时采取默认拒绝策略,添加 --offline 可在不联网的情况下进行分类并提供指引。
**不到一分钟即可获得第一个有用结果:**运行上面的命令,查看真实的 JSON 结果,并按照指引采取后续行动。无需登录、账户或配置。使用普通的
npm install @ecocitizenz/ecz-id-mcp-verifier即可安装;只有在需要可复现性时才固定具体版本(参见固定可复现版本)。
代表性结果
--target ECZ-GB-A93K7Q --policy OPEN --offline 的真实输出(代表性摘录;完整 JSON 还包含 setup_handoff、request_to_resolve 和其他边界标记):
{
"schema_version": 1,
"verifier": "ECZ-ID MCP Verifier",
"verifier_version": "0.9.1",
"target": "ECZ-GB-A93K7Q",
"target_type": "ecz_id",
"policy_mode": "OPEN",
"result_state": "NO_PUBLIC_RESOLVER_PROOF_FOUND",
"reason_codes": ["NO_PUBLIC_RESOLVER_PROOF_FOUND", "RESOLVER_READ_ONLY", "LOCAL_POLICY_DECIDES"],
"resolver_url": "https://resolver.ecocitizenz.org/p/ECZ-GB-A93K7Q",
"machine_json_url": null,
"local_policy_decides": true,
"recheck_before_reliance": true,
"no_safety_or_approval_inference": true,
"no_source_uploaded": true,
"no_secrets_uploaded": true,
"no_telemetry": true,
"exit_code": 0
}
这里的 NO_PUBLIC_RESOLVER_PROOF_FOUND 表示未找到公开证明(离线运行);并不表示目标不安全。由本地策略决定。
使用方式
| 入口 | 方式 |
|---|---|
| CLI | npx @ecocitizenz/ecz-id-mcp-verifier check --target <value> |
| CI / GitHub Action | uses: Ecocitizenz/[email protected] |
| MCP 宿主 | 运行 ecz-id-mcp-server stdio 二进制文件(三个只读工具) |
| Node 库 | import { verify } from "@ecocitizenz/ecz-id-mcp-verifier" |
后续操作:检查目标 · 添加到 CI · 添加到 MCP 宿主 · 检查公开 Resolver 证明 · 改进你所运营目标的状态 · 构建集成。
常见工作流
| 你的角色是…… | 操作 | 结果 |
|---|---|---|
| 检查目标的开发者 | npx @ecocitizenz/ecz-id-mcp-verifier check --target <value> | 确定性分类和公开 Resolver 状态,并提供指引。 |
| 添加门禁的 CI 负责人 | 添加GitHub Action并设置 policy,或使用 --policy REQUIRE 运行 CLI | 获得确定性退出代码,以及供流水线使用的 JSON/SARIF。 |
| MCP 宿主用户 | --print-mcp-config → 粘贴到宿主中 | 通过 stdio 使用三个只读 MCP 工具。 |
| Node 开发者 | import { verify } from "@ecocitizenz/ecz-id-mcp-verifier" | 在进程内获取规范结果契约,不产生副作用。 |
| 平台审核者 | 使用 --capabilities 并检查公开 Resolver 状态 | 获得对范围和限制的真实、机器可读说明。 |
| 改进自有目标的运营者 | 按照结果中的 TrustOps 指引操作 | 获得改进目标公开 Resolver 状态的指导。 |
| 机器或 Agent | 读取 --capabilities 和规范机器发现指引 | 获取可供 Agent 读取的能力和发现信息;这些信息绝不会被视为证明。 |
支持的目标形式
分类器是确定性的(仅使用正则表达式,不使用大模型,也不联网)。只有有效的 ECZ-ID 才会执行公开的 Resolver 查询;其他所有形式都会被分类并路由,但不会进行解析,且不会检查任何形式的制品内容、清单或运行时协议。
| 目标形式 | 示例 | 已分类 | Resolver 查询 | 是否检查制品/清单/运行时 |
|---|---|---|---|---|
| ECZ-ID(父级) | ECZ-GB-A93K7Q | 是 | 是(GET …/api/p/{parent}.json,在线) | 否/否/否 |
| ECZ-ID(子级) | ECZ-GB-A93K7Q::AGENT-4F9Q2A | 是 | 否(仅提供人工可读 URL;没有子级机器端点) | 否/否/否 |
| MCP 服务 URL | https://api.example.com/.well-known/ecz-mcp.json | 是 | 否(无法直接解析) | 否/否/否 |
| Agent 清单 URL | …/.well-known/ecz-agent.json | 是 | 否 | 否/否/否 |
| API URL | https://api.example.com/... | 是 | 否 | 否/否/否 |
| GitHub 仓库 | https://github.com/org/repo | 是 | 否 | 否/否/否 |
| npm 包 | left-pad 或 npm:left-pad | 是 | 否 | 否/否/否 |
| PyPI 包 | pypi:requests | 是 | 否 | 否/否/否 |
| 容器镜像 | ghcr.io/org/img@sha256:… | 是 | 否 | 否/否/否 |
| 其他任何内容 | 自由文本、空白字符、格式错误的 ECZ-ID | 分类为 unsupported_target | 否 | 否/否/否 |
对于非 ECZ-ID 形式,验证器会返回 NO_PUBLIC_RESOLVER_PROOF_FOUND,并将 resolver_url 设为 null(不会伪造 Resolver 路径)。分类不等同于安全检查。
此软件包的功能
- 以确定性的方式对目标分类(不使用大模型)。
- 对于有效的 ECZ-ID,通过 GET 请求获取公开的 Resolver 机器可读投影(只读),并报告其状态。
- 报告规范的
ResultState和大写的ReasonCode。 - 输出 JSON、可选的人类可读简要报告、可选的本地 Action Envelope(仅包含路由元数据),以及可选的 SARIF 2.1.0 文件。
- 提供用于 CI 集成的确定性退出代码。
- 附带 GitHub Action 封装和只读 MCP stdio 服务。
此软件包不做什么
- 不写入事实。
- 不激活证明。
- 不将任何内容标记为 BOUND。
- 不检查任何目标的制品内容、清单或运行时协议。
- 不认证任何服务、Agent、产品或 API 的安全性。
- 不批准 Agent。
- 不判定全局信任。
- 不上传源代码。
- 不上传机密、API 密钥、提示词或工具负载。
- 不发送遥测数据、分析数据、Sentry 或 PostHog 信标。
- 不调用 Backend/Core。
- 不写入 Resolver。
- 不将 TrustOps 用作验证后端。
- 不执行检出操作。
- 不创建客户端信任徽章。
- 不颁发可重复使用的信任凭证。
- 不将 npm 或 Official MCP Registry 中的收录视为 ECZ-ID 证明。
- 不推断任何第三方的安全性或批准状态。
- 不运行自主大模型或 Agent 行为。
隐私
验证器:
- 不上传源代码;
- 不上传机密(不上传 API 密钥或环境变量);
- 从不上传提示词或工具负载;
- 从不上传私有日志或原始遥测数据;
- 从不上传客户数据;
- 从不向 Resolver 发送请求正文(仅使用 GET);
- 从不发送私有标头;
- 从不发送分析数据、Sentry 或 PostHog 信标;
- 从不主动连接外部服务器;
- 从不自动更新。
可通过 --offline / --no-network 选择禁用网络。常规检查无需登录。公开的 Resolver 仍是证明依据;软件包和 Registry 元数据仅用于发现,绝非证明。
安装
从公共 Registry 安装(获取当前版本):
npm install @ecocitizenz/ecz-id-mcp-verifier
# or global: npm install -g @ecocitizenz/ecz-id-mcp-verifier
或者按需运行,无需安装:
npx @ecocitizenz/ecz-id-mcp-verifier check --target ECZ-GB-A93K7Q
从源代码安装(贡献者):
git clone https://github.com/Ecocitizenz/ecz-id-mcp-verifier.git
cd ecz-id-mcp-verifier
npm install
npm run build
node dist/bin/cli.js --help
CLI
ecz-mcp-verify --target <value> [options]
安装了两个等效的命令名称:ecz-id-mcp-verifier 和 ecz-mcp-verify(两者运行相同的 CLI)。第三个二进制文件 ecz-id-mcp-server 会启动 MCP stdio 服务。
选项
| 标志 | 默认值 | 描述 |
|---|---|---|
--target | (required) | URL、软件包、仓库、镜像或 ECZ-ID。 |
--target-type | auto | mcp_server | agent_manifest | api_url | github_repo | npm_package | pypi_package | container_image | ecz_id | auto |
--policy | OPEN | OPEN | PREFER | REQUIRE |
--operator | unknown | self | third_party | unknown(绝不自动推断)。 |
--json | on | 输出 JSON。 |
--report | off | 输出易于阅读的软报告。 |
--actions | off | 在 JSON 输出中包含操作封套。 |
--resolver-base | https://resolver.ecocitizenz.org | 覆盖解析器基址。 |
--trustops-url | https://trustops.ecocitizenz.com/start | 覆盖 TrustOps URL。 |
--developer-base | https://developers.ecocitizenz.com | 覆盖 Developer Gateway。 |
--offline | off | 离线模式(不联网)。 |
--no-network | off | 与 --offline 相同。 |
--timeout-ms | 10000 per attempt | 每次尝试的查询超时(毫秒)。在 32 s 的总时限内最多尝试 3 次。将此值设得过低,可能会在 Core 尚未就绪时将良好记录报告为不可用。 |
--output <path> | stdout | 将输出写入文件。 |
--sarif <path> | off | 另外写入一个最简 SARIF 2.1.0 文件。 |
--capabilities | 打印机器可读的能力配置文件(JSON)并退出。 | |
--print-mcp-config | 打印可直接粘贴的 MCP 主机配置(JSON)并退出。 | |
--doctor | 运行本地自检(不联网、不使用密钥);添加 --report 可输出人类可读的结果。 | |
--version | 打印版本并退出。 | |
--help | 打印帮助并退出。 |
CLI 示例
# Offline classification + JSON output
ecz-mcp-verify --target "ECZ-GB-A93K7Q" --offline
# REQUIRE policy with action envelope
ecz-mcp-verify --target "https://api.example.com/.well-known/ecz-mcp.json" \
--policy REQUIRE --actions
# Human-readable soft report
ecz-mcp-verify --target "https://github.com/org/repo" --report
# Write JSON + SARIF files for CI
ecz-mcp-verify --target "ECZ-GB-A93K7Q" --output result.json --sarif result.sarif
自检、能力和 MCP 配置
三个确定性的离线辅助功能可让设置和集成更快捷——它们都不需要目标、网络调用或密钥:
# Confirm a healthy install (no network, no secret):
ecz-id-mcp-verifier --doctor
# Print the machine-readable capability profile (what it does and does not do):
ecz-id-mcp-verifier --capabilities
# Print a ready-to-paste MCP host configuration:
ecz-id-mcp-verifier --print-mcp-config
--capabilities 会返回稳定的 capability_profile(ecz-resolver-posture-v1),其中包含支持的目标类型、结果状态、输出、退出代码、MCP 工具、隐私态势和明确的范围标志(artifact_binding_performed: false、manifest_inspection_performed: false、runtime_protocol_inspection_performed: false、local_policy_decides: true)——这是对该工具真实且可供 Agent 阅读的描述。
操作方模式
--operator 绝不自动推断。调用方声明自己是目标的运营方,还是第三方读者。验证器仅使用此信息来引导用户(运营方转至 TrustOps,第三方读者转至 Developer Gateway)。
# You operate the target -> routes to TrustOps setup.
ecz-mcp-verify --target "https://api.example.com/.well-known/ecz-mcp.json" \
--operator self --actions
# You are a third party reader -> routes to Developer Gateway guidance.
ecz-mcp-verify --target "https://api.example.com/.well-known/ecz-mcp.json" \
--operator third_party --actions
策略模式
| 模式 | 缺少公开证明 | 不匹配 / 已撤销 / 已暂停 / 已过期 |
|---|---|---|
OPEN | 提示性信息,退出码为 0 | 确定性非零退出码 |
PREFER | 在 stderr 上发出警告,退出码为 0 | 确定性非零退出码 |
REQUIRE | 失败时默认拒绝(退出码为 1,网络故障时为 5) | 确定性非零退出码 |
由本地策略决定。验证器不会强制执行全局门槛。
结果状态和原因代码
共有 18 个规范的 result_state 值,包括 RESOLVER_VERIFIABLE、NO_PUBLIC_RESOLVER_PROOF_FOUND、DEGRADED、MISMATCH、EXPIRED、SUSPENDED、REVOKED、NOT_APPLICABLE 和 UNSUPPORTED_TARGET。仅有 HTTP 200 绝不构成证明:只有明确处于活动/当前状态的 Resolver 投影才会产生 RESOLVER_VERIFIABLE;格式错误、架构未知、主体不匹配、已撤销、已暂停、已过期、陈旧或带有滥用标记的正文会被确定性地映射为非正向状态,且绝不会作为证明缓存。
原因代码采用大写蛇形命名(例如 NO_PUBLIC_RESOLVER_PROOF_FOUND、RESOLVER_READ_ONLY、RESOLVER_RESPONSE_UNVERIFIABLE、PULSEGUARD_STALE、LOCAL_POLICY_DECIDES)。请使用 ecz_explain_result(MCP),或读取库导出的规范列表。
退出码
| 代码 | 含义 |
|---|---|
| 0 | 正常 / 提示性信息 / Resolver 可验证 / OPEN 模式下缺少证明 |
| 1 | REQUIRE 模式下缺少策略要求的证明,或未能解析 |
| 2 | 确定性不匹配 |
| 3 | 已撤销 / 已暂停 / 已过期 |
| 4 | 不支持的目标或无效输入 |
| 5 | 策略要求失败时默认拒绝时发生的网络/超时错误 |
| 6 | 验证器内部错误 |
机器可读输出
默认输出为 JSON(见上方代表性结果)。关键字段:schema_version、verifier、verifier_version、target、target_type、policy_mode、result_state、reason_codes、resolver_url、machine_json_url、trustops_action_url、developer_guidance_url、边界标志(local_policy_decides、recheck_before_reliance、no_safety_or_approval_inference、no_source_uploaded、no_secrets_uploaded、no_telemetry)、timestamp 和 exit_code。
--sarif <path>还会为代码扫描界面写入一个精简的 SARIF 2.1.0 文件。--actions会添加action_envelope(仅包含路由/指导元数据——不是证明权限来源)。
Node 库
import { verify, RESULT_STATES, REASON_CODES } from "@ecocitizenz/ecz-id-mcp-verifier";
const result = await verify({ target: "ECZ-GB-A93K7Q", policy: "OPEN", noNetwork: true });
console.log(result.result_state, result.reason_codes);
导入此软件包不会产生任何副作用——它不会运行 CLI,也不会在导入时发起网络请求。库会导出规范的 RESULT_STATES、REASON_CODES、退出码常量和结果类型,供集成方使用。
MCP stdio 服务
此软件包附带一个通过 stdio 运行的只读 MCP 服务,包含恰好三个工具,全部委托给同一个规范验证器核心。启动时无需机密或环境变量;该服务不会写入任何事实,也不会公开远程传输。运行 ecz-id-mcp-verifier --print-mcp-config,即可为你的宿主生成下方配置块。
| 工具 | 用途 |
|---|---|
ecz_check_target | 对目标进行分类,并返回规范结果契约。 |
ecz_recheck_resolver | 只读地重新检查公开 Resolver 状态(仅 GET)。 |
ecz_explain_result | 对现有 result_state / reason_codes 提供安全公开的说明。 |
MCP 主机配置
添加到 MCP 主机中(例如 mcpServers 块)。使用已安装/全局二进制文件:
{
"mcpServers": {
"ecz-id": {
"command": "ecz-id-mcp-server",
"args": []
}
}
}
或者通过 npx 使用,无需全局安装:
{
"mcpServers": {
"ecz-id": {
"command": "npx",
"args": ["-y", "-p", "@ecocitizenz/ecz-id-mcp-verifier", "ecz-id-mcp-server"]
}
}
}
这是本地 stdio用法。Official MCP Registry 是独立的发现渠道,而 Registry 发现不能作为 ECZ-ID 证明——证明仅来自公共 Resolver。
Official MCP Registry(发现)
可在 Official MCP Registry 中通过 io.github.Ecocitizenz/ecz-id-mcp-verifier 发现:
Registry 发现不能作为 ECZ-ID 证明。依赖之前,请重新检查公共 Resolver。
GitHub Action
此仓库提供一个封装了相同 CLI 的 node24 Action。
name: ECZ-ID MCP Verifier
on: [push]
# Minimum recommended permissions. The Action only reads and reports — it never
# writes to the repository, opens PRs/issues, or needs any write scope.
permissions:
contents: read
jobs:
verify:
runs-on: ubuntu-latest
steps:
- uses: Ecocitizenz/[email protected]
with:
target: "ECZ-CC-ABC123"
target-type: "ecz_id"
policy: "PREFER"
resolver-base: "https://resolver.ecocitizenz.org"
no-network: "false"
# timeout-ms: left unset so the bounded-retry defaults apply
输出:result-state、reason-codes、action-envelope-json、setup-handoff-json、mcp-action-envelope-json、request-to-resolve-json、primary-action、trustops-action-url、developer-guidance-url。Action 还会写入简明的 GitHub 步骤摘要。
最低权限: contents: read。此 Action 不会上传源代码。它不会上传机密。它不会写入真相。它不会修改仓库、创建 PR 或创建 issue。它不会调用 TrustOps checkout。它检查公共信息不需要 ECZ-ID 令牌。
离线模式
--offline(别名 --no-network)会在不进行任何网络调用的情况下执行确定性分类和路由。它会跳过 Resolver 查询,并将任何 ECZ-ID 报告为 NO_PUBLIC_RESOLVER_PROOF_FOUND(验证器绝不会编造证明)。在气隙 CI 中,或只需要分类和路由时,请使用离线模式。
人类可读报告
人类可读报告仅使用经批准的软性文案。未找到公共 Resolver 证明时,验证器会输出以下原文:
尚未找到此 MCP 目标的公共 Resolver 证明。这并不意味着该目标不安全。这意味着 ECZ-ID 无法找到该责任运营方的机器可读公共证明。采取何种操作由你的本地策略决定。
随后是运营方指引:
运营此服务?改善其 Resolver 状态:https://trustops.ecocitizenz.com/start
结尾提醒为:“依赖之前请重新检查。”和“由本地策略决定。”如果你不是该目标的运营方,请将 Resolver 指引分享给运营方。
故障排除
- 没有输出? 运行
npx @ecocitizenz/ecz-id-mcp-verifier --doctor,确认安装正常;每条命令都会打印 JSON(或通过--report输出报告),并返回确定性的退出代码。 UNSUPPORTED_TARGET(退出代码 4): 目标为空、包含空白字符,或 ECZ-ID 格式错误。请用引号括住目标,并检查受支持的形状表。- 离线时
REQUIRE以代码 1 退出: 这是预期行为——未确认公共证明时,REQUIRE会默认拒绝;用于信息性运行时请改用OPEN/PREFER,或移除--offline。 - 非 ECZ-ID 目标显示
resolver_url: null: 这是预期行为——只有 ECZ-ID 可解析;其他形状会进行分类和路由,而不会解析。 REQUIRE下发生网络错误: 退出代码为 5。查询已在 32 秒的预算内,针对冷启动或暂时不可用的 Core 最多重试 3 次,因此此处失败意味着 Core 在整个预算期间都不可用。只有当你的 Core 响应比这更慢时,才提高--timeout-ms;或者运行--offline。不可用结果绝不代表对该身份作出判断。
公共路由
- Resolver(公开证明):
https://resolver.ecocitizenz.org - Developer Gateway(文档/集成):
https://developers.ecocitizenz.com - TrustOps(运营方设置):
https://trustops.ecocitizenz.com/start - 规范机器发现入口:
https://machine.ecocitizenz.org/.well-known/ecz-machine.json(供 Agent 和机器使用的只读指针;仅用于发现,绝非证明)
需要设置时,验证器会将运营方引导至 TrustOps;它绝不会自行执行设置。需要文档或指导时,验证器会将用户引导至 Developer Gateway。验证器只会从 Resolver 发起 GET 请求,要求使用 HTTPS,将任何非 2xx 响应视为缺少证明,而不会凭空编造证明;也绝不会发起 POST、PUT、PATCH 或 DELETE 请求。
如果你运营目标对象,TrustOps 可以指导你完成设置并改善其状况。验证器运行时绝不要求购买,绝不要求第三方购买 ECZ-ID;缺少公开证明绝不意味着“不安全”——由本地策略决定。
角色分工
| 组件 | 职责 | 此验证器可以做什么 |
|---|---|---|
| 后端 / Core | 写入事实。 | 绝不写入。 |
| Resolver | 提供公开证明。 | 只读(GET)。 |
| TrustOps | 设置、获取、生命周期管理。 | 引导用户前往。 |
| Developer Gateway | 向开发者说明并提供路由。 | 引导用户前往。 |
| MCP Verifier | 本地检查、报告、路由。 | 此项。 |
后端仍是最终权威。本地策略决定。此验证器不会写入事实。
不作认证 / 安全 / 批准 / 合规 / 保险声明
验证器不会声称任何目标可信、风险低、获准、已投保,或获得任何注册机构、平台或监管机构的认可。它不对任何目标作出安全、认证、批准或合规声明。每份报告都会说明:依赖前请重新核查;由本地策略决定;后端仍是最终权威。
ECZ-ID 格式
只有严格有效的标识符才会被归类为 ecz_id、构建 Resolver URL 或触发查询;格式错误的标识符会被报告为不受支持的 / 无效目标,且绝不会发出 Resolver 请求。
| 形式 | 模板 | 示例 |
|---|---|---|
| 父级(运营方) | ECZ-CC-XXXXXX | ECZ-GB-A93K7Q |
| 子级(护照实例) | ECZ-CC-XXXXXX::PASSPORT_CODE-YYYYYY | ECZ-GB-A93K7Q::AGENT-4F9Q2A |
CC恰好是两个大写字母(运营方国家/类别代码)。XXXXXX和YYYYYY均恰好是六个大写 Base36 字符(0-9A-Z)。PASSPORT_CODE是下方 33 个公开护照编号代码之一;其中可以包含连字符,六字符实例后缀从最后一个连字符处分割。只有这些公开代码有效;其他标识符和已弃用代码均不是有效的公开子级代码。
Resolver 路由:父级解析为 …/p/{parent};子级解析为 …/p/{parent}/{passport_code}/{instance_suffix}。
公开护照编号代码(33 个)
| # | 护照 | 公开代码 |
|---|---|---|
| 1 | Agent 凭证 | AGENT |
| 2 | 网络弹性 | CYBER |
| 3 | API 护照 | API |
| 4 | AI 模型 | AI |
| 5 | 数据集 | DATASET |
| 6 | IoT 设备 | IOT |
| 7 | 软件供应链 | SSCM |
| 8 | 产品 | PRODUCT |
| 9 | 托管权转移 | CUSTODY |
| 10 | 风险策略 | RISKPOL |
| 11 | 工业机器人 | ROBOT-IND |
| 12 | 公共空间机器人 | ROBOT-PUB |
| 13 | 家用机器人 | ROBOT-DOM |
| 14 | Robotaxi | ROBOTAXI |
| 15 | 自动驾驶汽车 | AUTO-CAR |
| 16 | 自动驾驶运输卡车 | AUTO-TRUCK |
| 17 | 跨境运输卡车 | XHAUL |
| 18 | 高价值货物卡车 | HV-CARGO |
| 19 | D1 无人机 | D1-DRONE |
| 20 | D2 无人机 | D2-DRONE |
| 21 | D3 无人机 | D3-DRONE |
| 22 | D4 无人机 | D4-DRONE |
| 23 | 多式联运转运 | INTERMODAL |
| 24 | 工业场地 | IND-SITE |
| 25 | 关键基础设施 | CRITICAL-INFRA |
| 26 | 金融监管机构与资金流 | FUNDS-FLOW |
| 27 | 海上船舶 | MARINE-VESSEL |
| 28 | 货运集装箱 | CARGO-CONTAINER |
| 29 | 航空器 | AIRCRAFT |
| 30 | 航空部件 | AVIATION-COMP |
| 31 | 平台安全港 | SAFE-HARBOUR |
| 32 | 身份连续性 | ID-CONTINUITY |
| 33 | 持牌基础设施运营方 | LIC-INFRA |
此处仅显示公开护照名称和代码。子级 machine_json_url 为 null(没有经过验证的子级机器端点);父级机器投影 …/api/p/{parent}.json 为只读。
安全与负责任披露
请通过仓库的 GitHub 安全选项卡私下报告疑似漏洞:https://github.com/Ecocitizenz/ecz-id-mcp-verifier/security(使用 报告漏洞 / 私密安全公告)——安全报告请勿通过公开议题提交。请附上受影响的版本和复现步骤。另请参阅 docs/PRIVACY.md 和 docs/ROLE_SPLIT.md。
支持与卸载
- 支持 / 议题: https://github.com/Ecocitizenz/ecz-id-mcp-verifier/issues
- 卸载:
npm uninstall -g @ecocitizenz/ecz-id-mcp-verifier(全局安装),或将其从项目中移除并删除node_modules。对于 GitHub Action,请移除uses:步骤。不会留下后台服务、守护进程或缓存的凭据。
可复现的版本固定
普通安装会使用当前版本。仅在需要可复现性时固定到确切版本:
npm install @ecocitizenz/[email protected]
npx @ecocitizenz/[email protected] --doctor
发布状态
- npm:
@ecocitizenz/ecz-id-mcp-verifier已在公共注册表发布;直接运行npm install(或npx)会使用当前版本。 - GitHub Action: GitHub Actions Marketplace 上的
Ecocitizenz/[email protected]。 - 可信发布: npm 发布通过 GitHub
npm-release环境,使用受保护的 OIDC 可信发布,并附带已发布的来源证明。已配置规范的 Git 远程地址(https://github.com/Ecocitizenz/ecz-id-mcp-verifier.git),且package.json中的repository/bugsURL 与其完全一致。 - 已发布的软件包版本和 Action 发布标签均不可变更。
许可证
官方、未经修改的软件包及其捆绑的 GitHub Action 永远免费,遵循 ECZ-ID 专有限制使用许可证(LICENSE.md)——可免费安装和运行,用于个人、组织、开发、CI/CD 和内部业务用途。
这不是开源软件。公开源代码(用于提高透明度或供安装)不代表授予再分发、修改、衍生作品或竞品的权利——请参阅 LICENSE.md。
后端写入事实。TrustOps 处理设置。Resolver 提供证明。机器会重新检查。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。