Standardized method for uniquely identifying and referencing JSON Agents manifests
The ajson:// URI scheme provides a standardized method for uniquely identifying and referencing agent manifests, capabilities, and other JSON Agents resources.
ajson-uri = "ajson://" authority path [ "?" query ] [ "#" fragment ]
authority = [ userinfo "@" ] host [ ":" port ]
path = "/" segment *( "/" segment )
segment = *pcharajson://jsonagents.org/examples/router-hubajson://example.com/agents/summarizer/v2.1.0ajson://registry.internal/capabilities/routingajson://localhost:8080/test/agent#metadataThe authority SHOULD represent:
localhost for developmentThe path MUST:
/)MAY include:
The fragment MAY reference:
#runtime#capability/summarization#node/routerImplementations SHOULD resolve ajson:// URIs through one of the following methods:
ajson://example.com/agents/routerhttps://example.com/.well-known/agents/router.agents.jsonQuery a configured registry service using the full URI as an identifier.
Check local manifest cache before attempting network resolution.
function resolve(ajsonURI):
1. Parse URI into components (authority, path, fragment)
2. Check local cache for authority + path
3. If cached and not expired, return cached manifest
4. Transform to HTTPS well-known URI
5. Perform HTTP GET with Accept: application/agents+json
6. Validate response against json-agents.json schema
7. Cache response if valid
8. If fragment present, extract referenced component
9. Return resolved manifest or component| Condition | Behavior |
|---|---|
| Network unavailable | Use cached version if available, otherwise fail |
| 404 Not Found | Return resolution error with original URI |
| Invalid manifest | Return validation error with details |
| Timeout | Retry with exponential backoff, max 3 attempts |
A conformant registry service MUST:
ajson:// URIs as identifiersGET /resolve?uri=ajson://example.com/agents/router
Accept: application/agents+json
Response:
200 OK
Content-Type: application/agents+json
{
"manifest_version": "1.0",
...
}URIs MAY encode version information:
ajson://example.com/agent/v1.2.3ajson://example.com/agentajson://example.com/agent/v1Recommendation: For production deployments, manifests SHOULD reference immutable versioned URIs to ensure reproducibility.
The ajson:// URI scheme is intended for registration with IANA under the Uniform Resource Identifier (URI) Schemes registry.
| Scheme Name: | ajson |
| Status: | Provisional |
| Applications/Protocols: | JSON Agents Portable Agent Manifest |
| Contact: | JSON Agents Working Group |
| Change Controller: | JSON Agents Steering Committee |
Continue exploring JSON AGENTS
Complete normative specification including URI scheme definition, resolution algorithm, and IANA registration
Learn how to implement ajson:// URI resolution, caching, and registry integration in your runtime
Quick introduction to JSON Agents with examples using ajson:// URIs for agent identification
Browse the JSON Schema definitions showing how URIs are used in agent manifests and capabilities