TACO Security Model

Scopes, Trust Tiers & Agent Card Extensions

The three constructs TACO adds to A2A's authentication framework: a construction-specific scope taxonomy, a registry trust model, and security metadata in the Agent Card extension.

taco:{dimension}:{value}[:{action}]
Dimension Example Scopes Use Case
trade taco:trade:mechanical taco:trade:electrical taco:trade:plumbing Gate access by trade. A mechanical sub's agent rejects tokens without taco:trade:mechanical.
task taco:task:estimate taco:task:rfi-generation taco:task:material-procurement Limit what task types can be submitted. Token exchange narrows to just the needed task.
csi taco:csi:22 taco:csi:23 taco:csi:26 Scope to CSI MasterFormat divisions. Division 22 = plumbing, 23 = HVAC, 26 = electrical.
project taco:project:PRJ-0042:read taco:project:PRJ-0042:write Bind tokens to a specific project. Ensures data from Project A can't leak to Project B workflows.
registry taco:registry:read taco:registry:publish Control access to the TACO Agent Registry. Read = discover agents. Publish = register/update Agent Cards.
Combination rules: Scopes are additive. taco:trade:mechanical + taco:task:estimate = can only submit estimate tasks to mechanical agents. Project scopes require a task or trade scope to be meaningful.
Trust
0
Unverified
Agent Card is indexed by the registry. No claims are validated. Suitable for development, sandbox, and internal testing.
How to achieve Self-publish via taco:registry:publish scope. No verification required.
1
Org Verified
The agent URL's domain belongs to a verified organization. Organization identity is trusted; certifications are still self-declared.
How to achieve Pass domain ownership verification: DNS TXT record or HTTPS challenge on the agent URL's domain.
2
Cert Attested
Certification claims (SOC2, ISO27001, FedRAMP) have been verified by the registry against third-party audit reports.
How to achieve Upload audit report or connect attestation service. Registry confirms each certification.
Tier 0
Higher Trust →
Tier 2
Important distinction: The existing certifications field in x-construction is self-declared metadata. The trustTier field is registry-assigned after verification. An agent declaring "certifications": ["SOC2"] at Tier 0 means "we claim SOC2 but the registry hasn't confirmed it."
Agent Card Extension
// Agent Card excerpt { "x-construction": { "trade": "mechanical", "csiDivisions": ["22", "23"], "certifications": ["SOC2"], "security": { "trustTier": 1, "scopesOffered": [ "taco:trade:mechanical", "taco:task:estimate", "taco:task:value-engineering" ], "projectScoped": true, "delegationSupported": true, "extendedCardUrl": "https://api.buildright.io/ a2a/agent-extended.json" } } }
trustTier
integer — optional
Registry-assigned verification level (0/1/2). Not self-declared. Defaults to 0 for newly published agents.
scopesOffered
string[] — optional
TACO scopes this agent accepts. Enables registry filtering by scope without a full OAuth discovery flow.
projectScoped
boolean — optional
If true, requests must include a taco:project:{id} scope. Tells orchestrators to acquire project-specific tokens.
delegationSupported
boolean — optional
If true, the agent can participate in Token Exchange (RFC 8693) chains, enabling multi-hop delegation.
extendedCardUrl
string — optional
URL to an extended Agent Card (per A2A spec) that reveals additional capabilities after initial authentication.
scopesOffered is informational. It enables quick registry filtering. The authoritative scope declaration remains in the Agent Card's securitySchemes field. See spec/security.md for the full specification.