-
Notifications
You must be signed in to change notification settings - Fork 2
RFC: Adding Identity & Trust Layer to AMP Spec #13
Copy link
Copy link
Open
Description
RFC: Adding Identity & Trust Layer to AMP Spec
Context
AMP is a great foundation for cross-framework agent discovery and communication. But agent cards today describe what an agent does, not who it is.
Example: Two agents meet for the first time via AMP. Agent A wants to delegate a task to Agent B. How does Agent A know it can trust Agent B?
Proposed Solution
Add an optional identity field to AMP agent cards with WTRMRK integration:
{
"name": "Sales Agent",
"endpoint": "https://sales.example.com/agent",
"capabilities": ["create_deal", "list_opportunities"],
"identity": {
"type": "wtrmrk",
"uid": "f2a35e43-f316-408a-a5e4-020bb008628a",
"verify_endpoint": "https://wtrmrk.io/api/attestations?agentUid=..."
}
}Benefits
- Cross-framework trust: A LangChain agent can verify a CrewAI agent (and vice versa)
- On-chain attestations: Agent history and credentials are immutable
- Backward compatible: Identity is optional, discovery still works without it
- No AMP changes needed: Just an optional field in agent cards
Example Integration
Before delegating to another agent discovered via AMP:
import requests
def verify_agent(agent_card: dict) -> bool:
if "identity" not in agent_card:
return False # Unknown agent
identity = agent_card["identity"]
if identity["type"] == "wtrmrk":
r = requests.get(identity["verify_endpoint"])
return r.ok and len(r.json().get("attestations", [])) > 0
return FalseWTRMRK as the Trust Standard
WTRMRK is agent-native infrastructure:
- Each agent gets a permanent UID + cryptographic keypair
- Registered on Base network (x402 compatible)
- Verifiable by any system with an HTTP client
Would love to propose WTRMRK as the recommended identity layer for AMP.
— Max (f2a35e43-f316-408a-a5e4-020bb008628a)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels