Get started
Five-minute introduction
Read a real ECZ-ID record, check it with the published verifier, and see where each link of the Accountability Chain lives. Two commands, no account.
Live in production and publicly readable, with no account and no key. Measured read-only on 2026-10-10.
Accountability Chain:IdentityCurrent stateRe-verify
Minute 1: read a real record
This is the production record of the organisation that operates this site.
curl -s https://api.ecocitizenz.com/api/p/ECZ-GB-RBS1NW.json{
"ecz_id": "ECZ-GB-RBS1NW",
"resolver_v2": {
"record_type": "ECZ_ID_PARENT",
"state": {
"lifecycle_state": "ACTIVE",
"parent_tier": "VERIFIED",
"reliance_level": "PARENT_IDENTITY_ONLY"
},
"reliance": {
"can_rely_on": ["record_existence", "active_parent_state",
"current_parent_tier", "public_resolver_visibility"],
"reverify_before_reliance": true
}
}
}Look at resolver_v2.state.lifecycle_state (ACTIVE), resolver_v2.state.parent_tier (VERIFIED), and resolver_v2.reliance.do_not_infer, the list of things this record refuses to let you conclude.
Minute 2: check it with the verifier
npx -y @ecocitizenz/ecz-id-mcp-verifier check --target ECZ-GB-RBS1NW{
"target": "ECZ-GB-RBS1NW",
"target_type": "ecz_id",
"policy_mode": "OPEN",
"result_state": "RESOLVER_VERIFIABLE",
"reason_codes": [],
"primary_action": "VIEW_RESOLVER_PROOF",
"verifier_writes_truth": false,
"exit_code": 0
}Now ask for proof that does not exist. Under --policy REQUIRE, absence fails: that is the line you would put in CI.
npx -y @ecocitizenz/ecz-id-mcp-verifier check --target ECZ-ZZ-NOPE00 --policy REQUIRE{
"target": "ECZ-ZZ-NOPE00",
"target_type": "ecz_id",
"policy_mode": "REQUIRE",
"result_state": "NO_PUBLIC_RESOLVER_PROOF_FOUND",
"reason_codes": ["NO_PUBLIC_RESOLVER_PROOF_FOUND", "RESOLVER_READ_ONLY",
"LOCAL_POLICY_DECIDES"],
"machine_json_url": null,
"primary_action": "CHOOSE_OPERATOR_PATH"
}
# exit code 1Minute 3: see the chain
What you just read covers identity, current state and re-check. Authority, delegation and Intent are recorded in ECZ-ID Core when an owner authorises an ECZ-ID Intent. The decision belongs to IntentControl, which is documented ahead of release. The action always runs in your system, and the Receipt records what happened.
- 01IdentityWho or what is acting?Live · public
- 02AuthorityWho or what authorised it?Live · signed in
- 03DelegationWhat authority was delegated?Live · signed in
- 04IntentWhat does it intend to do?Live · signed in
- 05Current stateWhat state and policy apply now?Live · public
- 06DecisionShould the action proceed?Release-gated
- 07ActionWhat action was taken?Your system
- 08ReceiptWhat receipt exists?No public retrieval
- 09EvidenceWhat evidence supports it?No public retrieval
- 10Re-verifyHow can it be re-verified?Live · public
Minutes 4 and 5: choose a path
- I operate a machineGet a free Passport for an agent, MCP server, plugin, API, device, SDK or service.
- I rely on machinesPut a policy on live Resolver state and hold it in CI.
- I want the exact path for my machineSeven guided flows, one per machine family, step by step through the chain.
- I want the whole pathOne integration, end to end, every command measured.
- I want the modelIdentity through re-check, one concept at a time.
Related
This page is explanation, not authority. Current state is only ever the live Resolver record. Live facts on this page were measured read-only on 2026-10-10.
