Schema
Fields
| Field | Type | Required | Description |
|---|---|---|---|
uni_version | string | ✓ | Protocol version (e.g., “1.1.0”) |
passport_id | string | ✓ | Unique identifier for this passport |
identity.agent_id | string | ✓ | Unique identifier for the agent |
permissions | array | ✓ | List of granted permissions |
provenance.issuer.id | string | ✓ | Who issued the passport |
provenance.issuer.type | string | ✓ | Issuer type: “self”, “internal”, “verified”, “certified” |
provenance.issued_at | string | ✓ | ISO 8601 timestamp |
provenance.expires_at | string | ✓ | ISO 8601 timestamp |
public_key | string | ✓ | Base64-encoded Ed25519 public key |
signature | string | ✓ | Base64-encoded signature over canonical JSON |
Permissions
Permissions use pattern matching:| Pattern | Matches |
|---|---|
* | Everything |
mcp:* | All MCP actions |
mcp:search | Exact match only |
Signature
The signature is computed over the canonical JSON (sorted keys, no whitespace) of all fields exceptsignature.