Feature Request
Add DNS-AID (DNS-based Agent Identification and Discovery) tools to Google ADK, enabling agents to discover, publish, and unpublish other agents via DNS SVCB records.
Motivation
AI agent ecosystems need a decentralized, standards-based discovery mechanism. DNS-AID (IETF draft-mozleywilliams-dnsop-dnsaid-01) uses DNS SVCB records to publish agent metadata — capabilities, endpoints, protocols, and versions — making agents discoverable without centralized registries.
Google ADK already supports A2A (Agent-to-Agent) protocol. DNS-AID complements A2A by providing the discovery layer: agents publish their A2A endpoints to DNS, and other agents find them via standard DNS queries. This enables:
- Decentralized discovery: No central registry needed
- DNS-native: Leverages existing DNS infrastructure, caching, and security (DNSSEC)
- A2A bridge: DNS-discovered agents with
protocol=a2a can be converted to ADK RemoteAgent references
Proposed Implementation
- FunctionTool wrappers:
discover_agents, publish_agent, unpublish_agent async functions wrapped as FunctionTool objects
- Tool factory:
get_dns_aid_tools(backend_name=...) for convenient tool creation with DNS backend binding
- A2A bridge:
a2a_agent_from_record() to convert DNS-AID discovered agents into ADK-compatible RemoteAgent references
Related PR
PR #4856 implements this feature.
Feature Request
Add DNS-AID (DNS-based Agent Identification and Discovery) tools to Google ADK, enabling agents to discover, publish, and unpublish other agents via DNS SVCB records.
Motivation
AI agent ecosystems need a decentralized, standards-based discovery mechanism. DNS-AID (IETF draft-mozleywilliams-dnsop-dnsaid-01) uses DNS SVCB records to publish agent metadata — capabilities, endpoints, protocols, and versions — making agents discoverable without centralized registries.
Google ADK already supports A2A (Agent-to-Agent) protocol. DNS-AID complements A2A by providing the discovery layer: agents publish their A2A endpoints to DNS, and other agents find them via standard DNS queries. This enables:
protocol=a2acan be converted to ADKRemoteAgentreferencesProposed Implementation
discover_agents,publish_agent,unpublish_agentasync functions wrapped asFunctionToolobjectsget_dns_aid_tools(backend_name=...)for convenient tool creation with DNS backend bindinga2a_agent_from_record()to convert DNS-AID discovered agents into ADK-compatible RemoteAgent referencesRelated PR
PR #4856 implements this feature.