Verified Digital Agents → Blocks → Witness
Witness
The evidence substrate. Seals a governed decision to a tamper-evident, hash-chained record — and on the Anchored tier commits that trail to external transparency logs, so it is provable even against us.
Live · signed A2A card + live MCP server · free tier
Why "provable even against us" is the whole point
An audit trail held by the vendor whose behaviour it records is worth exactly as much as trust in that vendor. The Anchored tier commits the chain to Sigstore Rekor and RFC-3161 timestamp authorities — infrastructure we do not control. An auditor re-verifies against those, not against a claim we make.
Custody — who holds the pen
| Mode | Who signs | What it proves |
|---|---|---|
| Custodial | Witness signs on your behalf | Simplest to adopt. The record is Witness asserting what you said. |
| Customer-managed | You sign with your own key, via prepare → sign → submit | The record is provable against Witness, because we never held the key that made it. |
Anyone can verify an issuer with verify_record_issuer / check_valid,
which resolves the signer's did:web document and matches the signing key. That is
what returns issuer_verified — a third party checking cryptography, not taking our word.
Shaped record types
agent_action | What an agent did, under which governance version. |
hitl_decision | A human decision on an escalated action — who decided, and what they were deciding. |
attestation | A point-in-time statement, e.g. a governance version going live against a git commit hash. |
Records sharing a chainKey are hash-linked into a set that is retrievable and
provable as a set — which is how a bundle of related evidence is grouped without
hand-rolling a manifest.
Start in about a minute
Witness runs a live MCP server — the standard way agents connect to tools. Point your agent at it and ask in plain language.
MCP server: https://witness.getvda.ai/api/witness/mcp
No key needed to: discover the tools, verify a record, or mint a free
key (get_test_key). Sealing writes to your account, so set that free
key as the connector's token once.
Free Sealed tier: 5,000 seals/month.
Nothing else in your stack has to change to start here — which is why Witness is usually the first block adopted. See where it sits in the full cycle →
Reading the trail back as evidence
A sealed trail is only useful if it answers a regulator's question. C2MD reads it back as an EU AI Act article-by-article Evidence & Readiness Report — including an attested mode where the verification happens offline and no key is shared with anyone, including us.
Example: EU AI Act conformance summary Demo data