Resolution & Discovery

NANDA provides a DNS-like resolution system for agents. The Lean Index maps agent IDs to signed endpoint records (AgentAddr), while the adaptive resolver selects the best endpoint using multi-strategy scoring. SafeSearch filters results by trust and compliance, and the Switchboard bridges across protocols.

Lean Index & AgentAddr

Every registered agent gets an AgentAddr record — an Ed25519-signed, KV-cached record containing the agent's endpoint URLs, TTL, and cryptographic provenance.

AgentAddr Record Fields

FieldDescription
agent_idUnique agent identifier
public_key_hexEd25519 public key (hex-encoded) used for signature verification
facts_urlPrimary URL pointing to the agent's AgentFacts document
private_urlOptional private/internal URL (not publicly advertised)
resolver_urlOptional override URL for adaptive resolution
ttl_secondsCache TTL (default: 300s). KV minimum is 60s.
signature_hexEd25519 signature over canonical JSON of all signable fields
signer_idIdentity of the signing node (e.g. nexartis-nanda-node)
quilt_typeFederation quilt type: native, mirror, or proxy
# Resolve an agent by ID
curl https://nanda.nexartis.com/resolve/my-agent-id

# Public discovery of all AgentAddr records
curl https://nanda.nexartis.com/.well-known/nanda-index

Signature Verification

AgentAddr records use canonical JSON serialization (sorted keys, no whitespace) for deterministic signing. Any party can verify a record by importing the embedded public_key_hex as an Ed25519 key and verifying the signature_hex against the canonical form.

Adaptive Resolution

The POST /resolve endpoint performs context-aware resolution. The resolver selects one of three strategies based on the request:

Resolution Strategies

Static

No context provided → returns endpoints from AgentFacts in order, scored by position (1.0, 0.9, 0.8…). Used for simple lookups.

Rotating

Agent has a resolver_url but no context → round-robin across the endpoint pool with health awareness. Unhealthy endpoints are deprioritized (moved to end) rather than removed.

Adaptive

Context body provided → full composite scoring with geo proximity, trust, capability match, and health. Returns endpoints ranked by composite score.

Scoring Weights

The adaptive strategy computes a composite score per endpoint:

composite = (geo × w_geo) + (trust × w_trust) + (capability × w_cap) + (health × w_health)
FactorScoring
Geo proximitySame country = 1.0, same region = 0.7, different region = 0.3, unknown = 0.5
Trust scoreNormalized 0.0–1.0 from reputation snapshots
Capability matchIntersection / required capabilities (1.0 if no requirements)
Health70% success rate + 30% latency score (p95 < 5s). Unknown = 0.5

Context Parameters

{
  "requester_location": "US",
  "required_capabilities": ["text-to-text"],
  "protocol_preference": "a2a",
  "min_trust_score": 0.7
}

SafeSearch

SafeSearch mode filters agents by trust thresholds, jurisdictions, and compliance status. Enable it by passing SafeSearch parameters to the /search endpoint:

curl "https://nanda.nexartis.com/search?q=translation&min_trust=0.7&jurisdiction=EU"

SafeSearch filters include:

  • min_trust — Minimum trust score threshold (0.0–1.0)
  • required_certs — Only return agents with specific certifications
  • jurisdiction — Filter by compliance jurisdiction (e.g. EU, US)
  • content_flags — Exclude agents with specific content flags

Switchboard (Protocol Bridge)

The Switchboard bridges between protocols (A2A ↔ MCP ↔ NLWeb), allowing agents registered with one protocol to be discovered and called via another. It auto-discovers an agent's supported protocols by probing well-known endpoints.

  • Auto-discoverynanda_discover_agent probes a URL for A2A, MCP, and NLWeb support
  • Protocol adapters — Registered per-agent in the protocol_adapters table
  • Exportnanda_export_agent generates metadata in any target protocol format

API Endpoints

MethodPathDescription
POST/resolveAdaptive resolution with context body
GET/resolve/:agent_idAgentAddr lookup by ID (KV cache → D1 fallback)
GET/.well-known/nanda-indexAll AgentAddr records (public)
GET/search?min_trust=&jurisdiction=SafeSearch filtered discovery
POST/api/switchboard/discoverAuto-discover agent protocols
GET/api/switchboard/adapters/:agent_idList protocol adapters

MCP Integration

Resolution and discovery are available via MCP tools: nanda_resolve_agent, nanda_discover_agent, nanda_list_adapters, and nanda_export_agent.

See also Trust & Security for trust scoring · Federation for cross-node resolution · MCP Tools for programmatic access
Related reading Adaptive Resolution — how the resolver selects the best strategy at runtime · Building Agent DNS — the architecture behind agent discovery at scale

Coming Soon

By Invitation Only