<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.18 (Ruby 2.6.10) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>


<rfc ipr="trust200902" docName="draft-jimenez-dawn-discovery-landscape-00" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="AI Agent Discovery">A Survey of AI Agent Discovery Mechanisms</title>

    <author initials="J." surname="Jimenez" fullname="Jaime Jimenez">
      <organization>Ericsson</organization>
      <address>
        <email>jaime@iki.fi</email>
      </address>
    </author>
    <author initials="J." surname="Feng" fullname="Jim Feng">
      <organization>Ericsson</organization>
      <address>
        <email>jim.feng@ericsson.com</email>
      </address>
    </author>
    <author initials="J." surname="Arkko" fullname="Jari Arkko">
      <organization>Ericsson</organization>
      <address>
        <email>jari.arkko@ericsson.com</email>
      </address>
    </author>
    <author initials="M." surname="Kuehlewind" fullname="Mirja Kuehlewind">
      <organization>Ericsson</organization>
      <address>
        <email>mirja.kuehlewind@ericsson.com</email>
      </address>
    </author>
    <author initials="R." surname="Kandoi" fullname="Rajat Kandoi">
      <organization>Ericsson</organization>
      <address>
        <email>rajat.kandoi@ericsson.com</email>
      </address>
    </author>

    <date year="2026" month="July" day="03"/>

    <area>Applications</area>
    <workgroup>Discovery of Agents, Workloads, and Named entities (DAWN)</workgroup>
    <keyword>agent discovery</keyword> <keyword>AI agents</keyword> <keyword>MCP</keyword> <keyword>A2A</keyword> <keyword>dawn</keyword>

    <abstract>


<?line 162?>

<t>This document surveys mechanisms for AI agent discovery being developed at the IETF, at AAIF, at 3GPP, and in open-source projects. It compares them by discovery model, scope, dynamism, cross-domain reach, and semantic capability. It identifies gaps, overlaps, and conflicts between the approaches to inform future standardization work.</t>



    </abstract>

    <note title="About This Document" removeInRFC="true">
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-jimenez-dawn-discovery-landscape/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Discovery of Agents, Workloads, and Named entities Working Group mailing list (<eref target="mailto:dawn@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/dawn/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/dawn/"/>.
      </t>
    </note>


  </front>

  <middle>


<?line 166?>

<section anchor="introduction"><name>Introduction</name>

<t>An AI agent is an LLM-driven system that operates as a loop (see <xref target="fig-agent-loop"/>): it consults a Large Language Model to plan, acts on external tools and services, observes the results, and repeats. Discovery is one of the action types available within this loop. When the agent determines that its current tool set is insufficient for the task, it queries a discovery source and adds the returned references to its working set for subsequent iterations.</t>

<figure title="AI Agent with Discovery as an Action Type" anchor="fig-agent-loop"><artset><artwork  type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="352" width="584" viewBox="0 0 584 352" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
<path d="M 8,176 L 8,240" fill="none" stroke="black"/>
<path d="M 64,176 L 64,240" fill="none" stroke="black"/>
<path d="M 152,32 L 152,80" fill="none" stroke="black"/>
<path d="M 152,176 L 152,336" fill="none" stroke="black"/>
<path d="M 176,88 L 176,112" fill="none" stroke="black"/>
<path d="M 176,144 L 176,176" fill="none" stroke="black"/>
<path d="M 256,80 L 256,112" fill="none" stroke="black"/>
<path d="M 256,144 L 256,168" fill="none" stroke="black"/>
<path d="M 288,32 L 288,80" fill="none" stroke="black"/>
<path d="M 320,176 L 320,336" fill="none" stroke="black"/>
<path d="M 440,176 L 440,240" fill="none" stroke="black"/>
<path d="M 440,272 L 440,320" fill="none" stroke="black"/>
<path d="M 576,176 L 576,240" fill="none" stroke="black"/>
<path d="M 576,272 L 576,320" fill="none" stroke="black"/>
<path d="M 152,32 L 288,32" fill="none" stroke="black"/>
<path d="M 152,80 L 288,80" fill="none" stroke="black"/>
<path d="M 8,176 L 64,176" fill="none" stroke="black"/>
<path d="M 152,176 L 320,176" fill="none" stroke="black"/>
<path d="M 440,176 L 576,176" fill="none" stroke="black"/>
<path d="M 72,192 L 88,192" fill="none" stroke="black"/>
<path d="M 120,192 L 144,192" fill="none" stroke="black"/>
<path d="M 328,192 L 360,192" fill="none" stroke="black"/>
<path d="M 392,192 L 432,192" fill="none" stroke="black"/>
<path d="M 328,208 L 432,208" fill="none" stroke="black"/>
<path d="M 72,224 L 96,224" fill="none" stroke="black"/>
<path d="M 128,224 L 144,224" fill="none" stroke="black"/>
<path d="M 8,240 L 64,240" fill="none" stroke="black"/>
<path d="M 440,240 L 576,240" fill="none" stroke="black"/>
<path d="M 440,272 L 576,272" fill="none" stroke="black"/>
<path d="M 328,288 L 344,288" fill="none" stroke="black"/>
<path d="M 416,288 L 432,288" fill="none" stroke="black"/>
<path d="M 328,304 L 432,304" fill="none" stroke="black"/>
<path d="M 440,320 L 576,320" fill="none" stroke="black"/>
<path d="M 152,336 L 320,336" fill="none" stroke="black"/>
<polygon class="arrowhead" points="440,288 428,282.4 428,293.6" fill="black" transform="rotate(0,432,288)"/>
<polygon class="arrowhead" points="440,192 428,186.4 428,197.6" fill="black" transform="rotate(0,432,192)"/>
<polygon class="arrowhead" points="336,304 324,298.4 324,309.6" fill="black" transform="rotate(180,328,304)"/>
<polygon class="arrowhead" points="336,208 324,202.4 324,213.6" fill="black" transform="rotate(180,328,208)"/>
<polygon class="arrowhead" points="264,168 252,162.4 252,173.6" fill="black" transform="rotate(90,256,168)"/>
<polygon class="arrowhead" points="184,88 172,82.4 172,93.6" fill="black" transform="rotate(270,176,88)"/>
<polygon class="arrowhead" points="152,192 140,186.4 140,197.6" fill="black" transform="rotate(0,144,192)"/>
<polygon class="arrowhead" points="80,224 68,218.4 68,229.6" fill="black" transform="rotate(180,72,224)"/>
<g class="text">
<text x="184" y="52">Large</text>
<text x="244" y="52">Language</text>
<text x="200" y="68">Model</text>
<text x="248" y="68">(LLM)</text>
<text x="176" y="132">context</text>
<text x="260" y="132">action</text>
<text x="36" y="196">User</text>
<text x="104" y="196">req</text>
<text x="376" y="196">act</text>
<text x="484" y="196">Target</text>
<text x="536" y="196">tool,</text>
<text x="36" y="212">or</text>
<text x="212" y="212">AI</text>
<text x="248" y="212">Agent</text>
<text x="492" y="212">service,</text>
<text x="540" y="212">or</text>
<text x="36" y="228">Sys.</text>
<text x="112" y="228">res</text>
<text x="236" y="228">(loop)</text>
<text x="492" y="228">resource</text>
<text x="196" y="260">action</text>
<text x="264" y="260">selected:</text>
<text x="176" y="276">-</text>
<text x="212" y="276">reason</text>
<text x="264" y="276">(LLM)</text>
<text x="176" y="292">-</text>
<text x="200" y="292">act</text>
<text x="380" y="292">discover</text>
<text x="488" y="292">Discovery</text>
<text x="176" y="308">-</text>
<text x="220" y="308">discover</text>
<text x="484" y="308">source</text>
</g>
</svg>
</artwork><artwork  type="ascii-art"><![CDATA[
                  +----------------+
                  | Large Language |
                  |   Model (LLM)  |
                  +------------+---+
                     ^         |
                     |         |
                  context    action
                     |         |
                     |         v
+------+          +--+-----------------+              +----------------+
| User |---req--->|                    |-----act----->|  Target tool,  |
|  or  |          |      AI Agent      |<-------------|  service, or   |
| Sys. |<---res---|       (loop)       |              |  resource      |
+------+          |                    |              +----------------+
                  |  action selected:  |
                  |  - reason (LLM)    |              +----------------+
                  |  - act             |---discover-->| Discovery      |
                  |  - discover        |<-------------|  source        |
                  |                    |              +----------------+
                  +--------------------+
]]></artwork></artset></figure>

<t>An agent's ability to find the right tool or another agent, and to learn enough about it to interact, is what this document calls agent discovery. The term covers finding entities (agents, tools, services) and discovering their capabilities. Discovery can occur before a task begins, through static configuration such as reading a local file, resolving a fixed DNS name, or fetching a well-known URI at startup. It can also occur dynamically during a task, when the agent queries a discovery source in response to a need identified at runtime. The same discovery sources can serve both paths; what differs is when and why they are consulted. This document surveys what those discovery sources are, how they compare, and where gaps remain. It does not prescribe which mechanism an agent should select for a given task.</t>

<t>Agent discovery mechanisms are already being built. Protocols, well-known URIs, directory services, and DNS extensions have emerged in parallel from different organizations, often addressing overlapping problems with incompatible approaches. No single IETF document yet inventories this work. A Discovery of Agents, Workloads, and Named entities (DAWN) working group is proposed in the IETF to address this space. DAWN's proposed charter targets interoperable discovery across organizational boundaries, with planned deliverables including terminology <xref target="I-D.farrel-dawn-terminology"/>, a problem statement <xref target="I-D.akhavain-moussa-dawn-problem-statement"/>, requirements <xref target="I-D.king-dawn-requirements"/>, and a gap analysis. This document contributes to that gap analysis by surveying the existing mechanisms, comparing them, and identifying gaps. It does not propose a new discovery mechanism.</t>

<t>This document is organized as follows. <xref target="use-cases"/> defines five use cases that motivate the survey. <xref target="discovery-framework"/> establishes the analytical framework: five functional components that any discovery system must address, and how they compose. <xref target="discovery-mechanisms"/> surveys existing mechanisms grouped by approach. <xref target="comparison"/> compares them across multiple dimensions. <xref target="gap-analysis"/> identifies where standardization gaps remain.</t>

</section>
<section anchor="use-cases"><name>Use Cases</name>

<t>The surveyed discovery mechanisms address different scenarios that differ mainly in the assumed trust based on who controls the set of discoverable agents.</t>

<dl>
  <dt>Curated set:</dt>
  <dd>
    <t>A general-purpose AI agent application ships with a bundled set of subagents and tools. The provider selects the initial set. The implementations, or references to them, are part of the application.</t>
  </dd>
  <dt>Local context:</dt>
  <dd>
    <t>Agents and tools are deployed in a single administrative context such as a corporate network. A local administrator controls the set. Applications receive static configuration or discover through local mechanisms, for example multicast within a subnet or resolution within a configured domain such as <spanx style="verb">agents.example.com</spanx>.</t>
  </dd>
  <dt>Known partner:</dt>
  <dd>
    <t>An agent contacts a specific collaboration partner whose capabilities and addresses it does not yet know. Discovery targets that partner, typically starting from their domain name. For instance, a travel service agent discovers a hotel chain's booking agent.</t>
  </dd>
  <dt>Federated consortium:</dt>
  <dd>
    <t>Multiple organizations establish mutual trust agreements and share agent registrations across their domains. Discovery spans the consortium but not the open Internet. Each organization publishes its own agents; federated peers propagate or proxy discovery queries across domain boundaries. For instance, a supply-chain consortium lets each member's logistics agents discover partner agents in peer domains without exposing them to the public.</t>
  </dd>
  <dt>Free-form search:</dt>
  <dd>
    <t>An agent searches across the Internet for agents or tools suitable for a task, without restricting who can provide them. Search engines or curated directories of agent services support this mode. Discovery can also proceed transitively: an agent or tool reached through an initial search may itself reference further agents or tools, and the agent follows those references as it explores. This hypermedia-driven pattern lets the discoverable surface grow during a task rather than being fixed up front.</t>
  </dd>
</dl>

<t>These scenarios differ along three axes: the trust assumptions between parties, whether a prior contract exists, and the discovery techniques available. Local-network discovery applies in the first two cases; discovery anchored in a partner's domain name applies in the third; federated registries with pre-negotiated trust apply in the fourth; Internet-wide search through a third-party directory, followed by hypermedia-driven traversal, applies in the fifth.</t>

</section>
<section anchor="discovery-framework"><name>Discovery Framework</name>

<t>This section defines the functional components that discovery systems address. The components serve as the analytical framework for the mechanism survey and comparison that follow.</t>

<section anchor="discovery-components"><name>Discovery Components</name>

<t>Agent systems address five functional components: lookup, name, description, trust, and interaction. Lookup is the act of finding candidates; the other components handle what happens once candidates are known. The mechanisms surveyed later combine these components in different ways, and the combinations determine which mechanisms can be compared to which.</t>

<figure title="Discovery Components and Their Relationships" anchor="fig-components"><artset><artwork  type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="384" width="296" viewBox="0 0 296 384" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
<path d="M 8,32 L 8,64" fill="none" stroke="black"/>
<path d="M 8,128 L 8,160" fill="none" stroke="black"/>
<path d="M 8,224 L 8,256" fill="none" stroke="black"/>
<path d="M 8,320 L 8,352" fill="none" stroke="black"/>
<path d="M 40,72 L 40,120" fill="none" stroke="black"/>
<path d="M 40,168 L 40,216" fill="none" stroke="black"/>
<path d="M 40,264 L 40,312" fill="none" stroke="black"/>
<path d="M 64,128 L 64,160" fill="none" stroke="black"/>
<path d="M 80,32 L 80,64" fill="none" stroke="black"/>
<path d="M 120,224 L 120,256" fill="none" stroke="black"/>
<path d="M 120,320 L 120,352" fill="none" stroke="black"/>
<path d="M 224,224 L 224,256" fill="none" stroke="black"/>
<path d="M 240,144 L 240,216" fill="none" stroke="black"/>
<path d="M 240,264 L 240,336" fill="none" stroke="black"/>
<path d="M 288,224 L 288,256" fill="none" stroke="black"/>
<path d="M 8,32 L 80,32" fill="none" stroke="black"/>
<path d="M 8,64 L 80,64" fill="none" stroke="black"/>
<path d="M 8,128 L 64,128" fill="none" stroke="black"/>
<path d="M 72,144 L 240,144" fill="none" stroke="black"/>
<path d="M 8,160 L 64,160" fill="none" stroke="black"/>
<path d="M 8,224 L 120,224" fill="none" stroke="black"/>
<path d="M 224,224 L 288,224" fill="none" stroke="black"/>
<path d="M 128,240 L 216,240" fill="none" stroke="black"/>
<path d="M 8,256 L 120,256" fill="none" stroke="black"/>
<path d="M 224,256 L 288,256" fill="none" stroke="black"/>
<path d="M 8,320 L 120,320" fill="none" stroke="black"/>
<path d="M 128,336 L 240,336" fill="none" stroke="black"/>
<path d="M 8,352 L 120,352" fill="none" stroke="black"/>
<polygon class="arrowhead" points="224,240 212,234.4 212,245.6" fill="black" transform="rotate(0,216,240)"/>
<polygon class="arrowhead" points="136,336 124,330.4 124,341.6" fill="black" transform="rotate(180,128,336)"/>
<polygon class="arrowhead" points="80,144 68,138.4 68,149.6" fill="black" transform="rotate(180,72,144)"/>
<polygon class="arrowhead" points="48,312 36,306.4 36,317.6" fill="black" transform="rotate(90,40,312)"/>
<polygon class="arrowhead" points="48,216 36,210.4 36,221.6" fill="black" transform="rotate(90,40,216)"/>
<polygon class="arrowhead" points="48,120 36,114.4 36,125.6" fill="black" transform="rotate(90,40,120)"/>
<g class="text">
<text x="44" y="52">Lookup</text>
<text x="84" y="100">produces</text>
<text x="176" y="132">validates</text>
<text x="36" y="148">Name</text>
<text x="76" y="196">points</text>
<text x="116" y="196">to</text>
<text x="168" y="228">specifies</text>
<text x="64" y="244">Description</text>
<text x="256" y="244">Trust</text>
<text x="84" y="292">declares</text>
<text x="176" y="324">validates</text>
<text x="64" y="340">Interaction</text>
</g>
</svg>
</artwork><artwork  type="ascii-art"><![CDATA[
      +--------+
      | Lookup |
      +--------+
          |
          | produces
          v
      +------+         validates
      | Name |<--------------------+
      +------+                     |
          |                        |
          | points to              |
          v                        |
      +-------------+ specifies  +-------+
      | Description |----------->| Trust |
      +-------------+            +-------+
          |                        |
          | declares               |
          v                        |
      +-------------+  validates   |
      | Interaction |<-------------+
      +-------------+
]]></artwork></artset></figure>

<dl>
  <dt>Lookup:</dt>
  <dd>
    <t>The act of finding a candidate agent or tool. It produces a pointer, typically a name, that the rest of the stack can resolve. A DHT query returning a CID and a DNS-SD browse returning an FQDN are both instances of lookup.</t>
  </dd>
  <dt>Name:</dt>
  <dd>
    <t>The stable name or address under which an agent is referenced. FQDNs, DIDs, and content identifiers are all naming schemes. A name anchors trust: a lookup produces one, and a trust mechanism validates it.</t>
  </dd>
  <dt>Description:</dt>
  <dd>
    <t>The metadata that tells a caller what an agent is and how to use it. Capabilities, supported protocols, authentication schemes, and endpoints live here. A2A Agent Cards and MCP Server Cards are description formats; JSON-LD agent descriptions and OASF records are richer alternatives.</t>
  </dd>
  <dt>Trust:</dt>
  <dd>
    <t>The mechanisms that establish whether a discovered name and description can be relied on. DNSSEC and DANE anchor trust in the DNS hierarchy; DID documents anchor trust in public keys; OAuth, SPIFFE, and mTLS authenticate the session once interaction begins.</t>
  </dd>
  <dt>Interaction:</dt>
  <dd>
    <t>The protocols used once trust is established: JSON-RPC, HTTPS, gRPC, SSE. Discovery is only useful if the caller can then talk to the agent, so description formats must declare which interaction protocols are on offer.</t>
  </dd>
</dl>

<t>Mechanisms differ in how many of these components they bundle. DNS-AID bundles lookup and name. A2A's <spanx style="verb">/.well-known</spanx> fetch bundles lookup and description. ANP spans all five. These differences explain why the mechanisms surveyed later are not drop-in replacements for each other. Note also that a target resource may itself serve as a discovery source - for example, when an agent fetches another agent's capability description via a well-known URI. The "act" and "discover" roles shown in <xref target="fig-agent-loop"/> are conceptually distinct but not necessarily distinct endpoints.</t>

</section>
<section anchor="illustrative-flow-known-partner"><name>Illustrative Flow: Known Partner</name>

<t>To illustrate how the components compose in practice, consider the Known Partner use case. An agent that knows a partner's domain name but nothing else might proceed as follows: resolve the domain (Name), fetch a well-known URI to retrieve an Agent Card or description (Lookup + Description), discover authentication requirements from the card (Trust), and then connect using the declared protocol (Interaction). This sequence is not normative; mechanisms differ in which steps they require, which they skip, and which they collapse. MCP, for instance, goes directly from local configuration to interaction with no resolution or trust step. ANP may perform all five components in a single protocol exchange.</t>

</section>
</section>
<section anchor="discovery-mechanisms"><name>Discovery Mechanisms</name>

<t>This section surveys mechanisms drawn from IETF (httpapi drafts, CATALIST contributions, DNS-based proposals), AAIF (A2A Agent Cards, MCP Server Cards), 3GPP (6G architecture studies on agent discovery), and open-source projects (ANP Agent Discovery Service Protocol, AGNTCY Agent Directory Service, the IoA framework, and related efforts). They are grouped by approach: DNS-based resolution, host-level self-description, and registries and directories.</t>

<section anchor="dns-based-resolution"><name>DNS-Based Resolution</name>

<t>Maps agent identifiers to network locations. Answers "where does this agent live" using DNS primitives (A/AAAA, SVCB, DNS-SD), with optional agent-specific record types.</t>

<section anchor="dns-aid"><name>DNS-AID</name>

<t><xref target="I-D.mozleywilliams-dnsop-dnsaid"/> uses a structured namespace under _agents subdomains (e.g., <spanx style="verb">_chat._agents.example.com</spanx>) with SVCB records to publish agent metadata. It requires no new DNS protocol elements and integrates with DNSSEC and DANE for trust. An accompanying problem statement <xref target="I-D.mozley-aidiscovery"/> argues that decentralized publication through known entry points is preferable to centralized registries.</t>

</section>
<section anchor="dn-anr"><name>DN-ANR</name>

<t><xref target="I-D.cui-dns-native-agent-naming-resolution"/> proposes a 3-layer model (discovery, resolution, connection) using FQDNs as stable identifiers and SVCB/HTTPS records <xref target="RFC9460"/> for endpoint resolution. Its scope is deliberately limited to the resolution layer; discovery and connection are delegated to other mechanisms.</t>

</section>
<section anchor="aid"><name>AID</name>

<t><xref target="I-D.nemethi-aid-agent-identity-discovery"/> takes a minimal approach: a DNS TXT record at <spanx style="verb">_agent.&lt;domain&gt;</spanx> with semicolon-delimited key-value pairs (version, URI, protocol token, authentication hint, optional Ed25519 public key). It is protocol-agnostic, delegating interaction to A2A, MCP, or other protocols. AID requests IANA registration of the <spanx style="verb">_agent</spanx> DNS node name.</t>

</section>
<section anchor="agentdns"><name>AgentDNS</name>

<t><xref target="I-D.liang-agentdns"/> proposes a root domain naming system for LLM agents with unified namespace, semantic service discovery, protocol-aware interoperability, and unified authentication. This draft has expired.</t>

<t>All four proposals agree that DNS handles naming and location; they differ on record type (SVCB vs. TXT), namespace convention (_agents vs. _agent), and how much metadata belongs in DNS versus a fetched document.</t>

</section>
</section>
<section anchor="host-level-self-description"><name>Host-Level Self-Description</name>

<t>These approaches are based on self-publication at a known location. A host serves its own machine-readable description at a well-known URI; the client dereferences the URL rather than querying a registry.</t>

<section anchor="ietf-httpapi-api-catalog-rfc-9727"><name>IETF httpapi: api-catalog (RFC 9727)</name>

<t><xref target="RFC9727"/> defines /.well-known/api-catalog as a well-known URI for advertising available APIs on a given host. It was not designed with agents in mind, but the pattern serves the same function as A2A Agent Cards and MCP Server Cards: "here is what this host offers, in machine-readable form." Companion drafts cover link hints <xref target="I-D.ietf-httpapi-link-hint"/> and authentication links <xref target="I-D.ietf-httpapi-authentication-link"/>.</t>

<t>The A2A community has adopted this pattern for multi-agent hosts. A2A now allows an api-catalog <xref target="RFC9727"/> at /.well-known/api-catalog to advertise several agents under a single origin, each entry linking to that agent's card. This addresses the one-agent-per-host assumption of the base Agent Card discovery model.</t>

</section>
<section anchor="a2a-agent-cards"><name>A2A Agent Cards</name>

<t>The Agent-to-Agent protocol <xref target="A2A-spec"/> uses Agent Cards as the primary discovery artifact: a JSON document served at /.well-known/agent-card.json describing identity, capabilities, skills, and authentication requirements. Discovery is pull-based and static; you need to know the agent's host to fetch its card.</t>

</section>
<section anchor="mcp-server-discovery"><name>MCP Server Discovery</name>

<t>The Model Context Protocol <xref target="MCP-spec"/> focuses on agent-to-tool communication via JSON-RPC 2.0 over Streamable HTTP or stdio. Discovery is local configuration: clients are pre-configured with server URLs or launch commands. Once connected, capability negotiation occurs via a JSON-RPC <spanx style="verb">initialize</spanx> exchange where client and server declare supported features (tools, resources, prompts). MCP defines OAuth discovery endpoints (/.well-known/oauth-protected-resource and /.well-known/oauth-authorization-server) for authentication. The base protocol has no mechanism for discovering available servers; clients learn about servers out of band. A separate MCP Registry <xref target="MCP-registry"/> addresses this: it is a centralized catalog of publicly available MCP servers, with namespace ownership validated at publication through GitHub, DNS, or HTTP verification. The registry is a hosted service rather than a peer-to-peer or federated protocol, and it indexes only MCP servers.</t>

</section>
<section anchor="anp-agent-descriptions"><name>ANP Agent Descriptions</name>

<t>The Agent Network Protocol <xref target="ANP-spec"/> defines a /.well-known/agent-descriptions endpoint for JSON-LD metadata documents, with agent identity anchored in Decentralized Identifiers (DIDs). ANP also specifies an Agent Discovery Service Protocol (ADSP) for cross-domain indexing; ADSP is covered under Registries and Directories below.</t>

</section>
<section anchor="aidip-agent-discovery-and-invocation"><name>AIDIP: Agent Discovery and Invocation</name>

<t><xref target="I-D.cui-ai-agent-discovery-invocation"/> (referred to as AIDIP in the comparison tables below) proposes patterns for agent discovery and invocation with an optional Agent Semantic Resolution (ASR) layer, contributing to the CATALIST discussion space <xref target="I-D.yao-catalist-problem-space-analysis"/>.</t>

</section>
<section anchor="other-community-efforts"><name>Other Community Efforts</name>

<t>The .well-known pattern is being independently reinvented outside standards bodies. For example, the Agent Discovery Protocol (ADP) publishes a /.well-known/agent-discovery.json document that bundles service endpoints for identity, memory, governance, reputation, and other agent services into a single JSON file served identically across all subdomains of an operator. ADP is a single-author effort (Walko Systems, April 2025) with one implementation. It illustrates the pull toward self-describing discovery documents but lacks IANA registration, formal specification, or multi-implementer review.</t>

</section>
</section>
<section anchor="registries-and-directories"><name>Registries and Directories</name>

<t>A discovery and registration layer provides aggregation across hosts. A registry accepts agent metadata and answers capability-centric queries, trading per-host autonomy for cross-domain search.</t>

<section anchor="gpp-network-assisted-agent-discovery"><name>3GPP Network-Assisted Agent Discovery</name>

<t>3GPP is studying agent registration and discovery as part of the 6G system architecture across multiple working groups. <xref target="TR22.870"/> defines service requirements for AI agent communication in 6G, establishing that 6G systems shall support mechanisms for AI agents (on-device, 3rd-party, and network-internal) to register their attributes and enable discovery. A companion IETF draft <xref target="I-D.yu-dmsc-ai-agent-use-cases-in-6g"/> reframes these requirements for protocol design and notes that existing 3GPP discovery mechanisms (e.g., NRF) may not be sufficient for cross-platform and cross-domain agent discovery.</t>

<t>Two parallel paths are emerging within 3GPP:</t>

<t>The SA6 application enablement study <xref target="TR23.801-02"/> examines how to extend the exposure framework, including the Common API Framework (CAPIF) <xref target="TS23.222"/>, so that 3rd-party AI agents can act as API Invokers. Key Issue 1.3 ("Enabling Exposure to 3rd Party AI Agents") identifies that current CAPIF has no semantic API discovery mechanism aligned to AI agent interaction patterns, and that CAPIF's existing structured API descriptions are not suitable for AI agents that interact through intent-based or less structured requests. The study considers enabling AI agents to discover and consume CAPIF-published services, as well as supporting the publication and discovery of services provided by service producers' AI agents. Because CAPIF operates at the application layer, this path is potentially applicable to any 3rd-party AI agent regardless of where it resides.</t>

<t>The SA2 6G system architecture study <xref target="TR23.801"/> addresses agent discovery in Key Issue #19 ("6G Network for AI"). It studies whether and how the 6G core network can support an AI agent on a UE discovering another AI agent on a different UE, enable inter-agent communication including identification and authorization, and enhance network capability exposure to AI agents on Application Functions (AFs). The study proposes new 3GPP-specific network functionalities - an AI agent Management Functionality (registration, authentication, authorization) and an AI agent Discovery Functionality. Discovery options under study include signalling via NAS (control plane), via user plane, or via AF-triggered queries, with support for both identity-based lookup and skill-based discovery. The study also considers exposing network capabilities as tools to external AI agents using agentic protocols such as MCP. This path is more UE-agent oriented, with the operator-managed network acting as an active mediator of agent identity, authorization, and discovery.</t>

<t>Both paths are in study phase (Rel-20, target completion 2027) and have not yet produced normative specifications.</t>

</section>
<section anchor="ioa-framework-semantic-discovery"><name>IoA Framework (Semantic Discovery)</name>

<t>The Internet of Agents framework <xref target="IoA"/> coordinates heterogeneous AI agents using structured protocols. Its discovery mechanism is semantic: agents register capability metadata and others find them via semantic queries rather than URL-based lookups. IoA is an academic framework (OpenBMB), open source.</t>

</section>
<section anchor="anp-agent-discovery-service-protocol-adsp"><name>ANP Agent Discovery Service Protocol (ADSP)</name>

<t>ANP's ADSP <xref target="ANP-spec"/> is the aggregation layer above the per-host /.well-known/agent-descriptions endpoint described in <xref target="discovery-mechanisms"/>. It operates in two modes. In active discovery, an indexing service queries domains' well-known endpoints to retrieve paginated collections of agent descriptions in JSON-LD format. In passive discovery, agents submit their description URLs to an indexing service, analogous to submitting a sitemap to a search engine. Agent identity in ADSP is anchored in <spanx style="verb">did:wba</spanx> identifiers resolved via HTTPS-hosted DID documents. ADSP does not define soft-state lifetimes or federation between indexers; each indexer maintains its own crawl scope.</t>

</section>
<section anchor="agntcy-agent-directory-service-ads"><name>AGNTCY Agent Directory Service (ADS)</name>

<t>The Agent Directory Service <xref target="I-D.mp-agntcy-ads"/> is a distributed directory that stores and discovers AI agent metadata using a federated network of interconnected servers. ADS combines three building blocks: a libp2p Kad-DHT for content routing and server discovery, the Open Agentic Schema Framework (OASF) <xref target="OASF"/> for capability-based matching, and OCI Distribution-compliant storage (ORAS/zot) for record retrieval.</t>

<t>OASF is a schema system for describing agent capabilities and metadata, created by Cisco/Outshift. It defines a record format whose key fields include skills drawn from a hierarchical taxonomy (15 top-level categories such as NLP, computer vision, security, agent orchestration, and advanced reasoning, with 100+ specific skills underneath), domain classifications, locators (endpoint URLs), author information, and extensible modules for additional metadata. Skills and domains are the routable attributes: when an OASF record is published into ADS, its skill annotations are extracted and announced into the DHT so that capability-based queries can locate relevant servers.</t>

<t>Discovery is two-phase: a client queries the DHT with skill taxonomy terms, receiving both matching record identifiers (CIDs) and the addresses of servers hosting them, then fetches the full OASF records from the relevant server's OCI-compliant store. ADS also includes a runtime discovery component that automatically detects labeled containers and pods in Docker and Kubernetes environments.</t>

<t>The specification is published as an Internet-Draft. A reference implementation in Go with gRPC/protobuf interfaces is open source, and a production instance is operated by Cisco/Outshift. ADS is the most complete federated directory implementation surveyed: it addresses cross-domain search (via DHT-routed skill queries), federation (via Kad-DHT), and structured capability matching (via OASF taxonomy). Its main limitations are that OASF is not yet adopted by other discovery systems (A2A, MCP, and ANP each define their own metadata formats), and ADS does not natively index A2A Agent Cards or MCP Server Cards.</t>

</section>
<section anchor="agent-registration-and-discovery-protocol-ardp"><name>Agent Registration and Discovery Protocol (ARDP)</name>

<t><xref target="I-D.pioli-agent-discovery"/> specifies a lightweight federated protocol for registering and discovering agents. Agents obtain stable identifiers in the form <spanx style="verb">agent:&lt;local-id&gt;@&lt;authority&gt;</spanx>, register with endpoints, capabilities, and time-to-live values, and are discovered via direct AID resolution or capability-based queries. Registration requires cryptographic proof-of-control via JWS signatures (ES256 mandatory). ARDP supports cross-domain federation through explicit trust relationships. Its scope is deliberately narrow: it excludes interaction protocols, identity governance, and runtime authorization.</t>

</section>
<section anchor="agent-directory-ad"><name>Agent Directory (AD)</name>

<t><xref target="I-D.jimenez-agent-directory"/> defines the Agent Directory (AD), an HTTP/JSON service that adapts the CoRE Resource Directory <xref target="RFC9176"/> from constrained IoT devices to software agents. Agents register their identity, capabilities, and reachable endpoints via POST to /ad/r; clients discover them via GET to /ad/l with filters on agent name, capability name, capability type, protocol, and tags. Registrations are soft state with configurable lifetimes, following the same lifecycle model as <xref target="RFC9176"/>.</t>

<t>The AD is discoverable at /.well-known/ad, which returns the paths to the registration and lookup interfaces. On local networks, DNS-SD with service name _ad._tcp provides zero-configuration discovery. The lookup interface supports two views: agent view (default) groups results by agent with capability summaries; capability view returns individual capabilities across all matching agents with the owning agent's base URI and protocols inlined.</t>

<t>Capability types defined by the AD are tool, skill, resource, and prompt. Registrations carry optional identity and identity_type fields that point to external identity metadata (Agent Identity Profiles, OpenID Connect, WIMSE, or DID documents), letting clients verify agents beyond trusting the directory. The AD requires TLS and mandates OAuth 2.0 bearer tokens or mTLS for registration; errors use RFC 9457 Problem Details.</t>

<t>Federation across multiple AD instances is acknowledged but not specified in the initial version. The soft-state model bounds staleness: federated entries carry the original lifetime and expire without explicit deletion if synchronization lapses.</t>

<t>A public prototype is deployed at ad.jaime.win (Cloudflare Worker, MIT license).</t>

</section>
<section anchor="a2a-registry"><name>A2A Registry</name>

<t>The A2A Registry (a2aregistry.org) is a curated web directory of A2A-compatible agents. Entries are persistent and include periodic health checks to verify agent availability. The registry is human-browsable but provides no programmatic query API; discovery requires manual search through the web interface. It is A2A-only and does not index agents using other protocols.</t>

</section>
</section>
</section>
<section anchor="comparison"><name>Comparison</name>

<t>This section compares the surveyed mechanisms along three dimensions: discovery model and scope (<xref target="tab-model"/>), coverage of the five components defined in <xref target="discovery-components"/> (<xref target="tab-components"/>), and applicability to the use cases defined in <xref target="use-cases"/> (<xref target="tab-usecases"/>). It concludes with a summary of the key structural differences that cut across all three tables.</t>

<section anchor="discovery-model-and-scope"><name>Discovery Model and Scope</name>

<t><xref target="tab-model"/> characterizes each mechanism by its architectural model, the scope of agents it can reach, whether it supports dynamic updates, cross-domain queries, and semantic (capability-based) lookup.</t>

<texttable title="Discovery Model and Scope" anchor="tab-model">
      <ttcol align='left'>Approach</ttcol>
      <ttcol align='left'>Model</ttcol>
      <ttcol align='left'>Scope</ttcol>
      <ttcol align='left'>Dynamic</ttcol>
      <ttcol align='left'>Cross-domain</ttcol>
      <ttcol align='left'>Semantic</ttcol>
      <c>api-catalog</c>
      <c>Pull</c>
      <c>Per-host</c>
      <c>No</c>
      <c>No</c>
      <c>No</c>
      <c>A2A Agent Cards</c>
      <c>Pull</c>
      <c>Per-agent</c>
      <c>No</c>
      <c>Yes (known host)</c>
      <c>No</c>
      <c>MCP</c>
      <c>Config</c>
      <c>Per-tool</c>
      <c>No</c>
      <c>No</c>
      <c>No</c>
      <c>ANP ADSP</c>
      <c>Hybrid</c>
      <c>Internet</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Partial</c>
      <c>AGNTCY ADS</c>
      <c>DHT</c>
      <c>Cross-domain</c>
      <c>Yes</c>
      <c>Yes (DHT)</c>
      <c>Yes (OASF)</c>
      <c>3GPP 6G</c>
      <c>Registry</c>
      <c>Network</c>
      <c>Yes</c>
      <c>Operator</c>
      <c>Partial</c>
      <c>IoA</c>
      <c>Registry</c>
      <c>Cross-agent</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>ARDP</c>
      <c>Registry</c>
      <c>Federated</c>
      <c>Yes (TTL)</c>
      <c>Yes (federation)</c>
      <c>No</c>
      <c>Directory (AD)</c>
      <c>Registry</c>
      <c>Cross-domain</c>
      <c>Yes (TTL)</c>
      <c>Yes (federation)</c>
      <c>No</c>
      <c>A2A Registry</c>
      <c>Curated</c>
      <c>A2A agents</c>
      <c>Health check</c>
      <c>No</c>
      <c>No</c>
      <c>DNS-AID</c>
      <c>DNS</c>
      <c>Per-domain</c>
      <c>DNS TTL</c>
      <c>Per-domain</c>
      <c>No</c>
      <c>DN-ANR</c>
      <c>DNS</c>
      <c>Per-domain</c>
      <c>DNS TTL</c>
      <c>Per-domain</c>
      <c>No</c>
      <c>AID</c>
      <c>DNS</c>
      <c>Per-domain</c>
      <c>DNS TTL</c>
      <c>Per-domain</c>
      <c>No</c>
      <c>AgentDNS</c>
      <c>DNS</c>
      <c>Cross-domain</c>
      <c>Unknown</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>AIDIP</c>
      <c>Hybrid</c>
      <c>Cross-domain</c>
      <c>Unknown</c>
      <c>Unknown</c>
      <c>Yes (ASR)</c>
</texttable>

<t>Key observations from <xref target="tab-model"/>:</t>

<t><list style="symbols">
  <t>Pull-based self-description (api-catalog, A2A, MCP) is the most widely deployed pattern but offers neither cross-domain reach nor dynamic updates.</t>
  <t>DNS-based approaches are decentralized but limited to per-domain scope with no semantic capability.</t>
  <t>Registry and directory approaches (3GPP 6G, ADS, AD, ARDP) achieve cross-domain reach and dynamic updates but require centralization or federation.</t>
  <t>Semantic lookup - finding an agent by what it can do - remains rare, with partial support only in ADS (OASF taxonomy), IoA, 3GPP 6G (skill-based discovery), AgentDNS, and AIDIP.</t>
</list></t>

</section>
<section anchor="component-coverage"><name>Component Coverage</name>

<t><xref target="tab-components"/> maps each mechanism to the five discovery components. A cell indicates what the mechanism provides for that component; a dash indicates the component is out of scope or delegated elsewhere.</t>

<texttable title="Component Coverage by Mechanism" anchor="tab-components">
      <ttcol align='left'>Approach</ttcol>
      <ttcol align='left'>Lookup</ttcol>
      <ttcol align='left'>Name</ttcol>
      <ttcol align='left'>Description</ttcol>
      <ttcol align='left'>Trust</ttcol>
      <ttcol align='left'>Interaction</ttcol>
      <c>api-catalog</c>
      <c>Well-known URI</c>
      <c>-</c>
      <c>API list</c>
      <c>TLS</c>
      <c>-</c>
      <c>A2A Agent Cards</c>
      <c>Well-known URI</c>
      <c>-</c>
      <c>Agent Card</c>
      <c>Per-card auth</c>
      <c>-</c>
      <c>MCP</c>
      <c>Local config</c>
      <c>-</c>
      <c>JSON-RPC caps</c>
      <c>-</c>
      <c>JSON-RPC</c>
      <c>ANP ADSP</c>
      <c>Crawl/index</c>
      <c>DID</c>
      <c>JSON-LD</c>
      <c>DID</c>
      <c>HTTP</c>
      <c>AGNTCY ADS</c>
      <c>DHT query</c>
      <c>CID</c>
      <c>OASF record</c>
      <c>-</c>
      <c>-</c>
      <c>3GPP 6G</c>
      <c>Registry query</c>
      <c>Operator</c>
      <c>Capabilities</c>
      <c>Operator PKI</c>
      <c>Per-API</c>
      <c>IoA</c>
      <c>Registry query</c>
      <c>Platform</c>
      <c>Capabilities</c>
      <c>-</c>
      <c>Structured</c>
      <c>ARDP</c>
      <c>Query</c>
      <c>agent: URI</c>
      <c>Capabilities</c>
      <c>JWS proof</c>
      <c>-</c>
      <c>Directory (AD)</c>
      <c>Registry query</c>
      <c>Scoped</c>
      <c>Cap. views</c>
      <c>TLS + ident.</c>
      <c>-</c>
      <c>A2A Registry</c>
      <c>Web browse</c>
      <c>URL</c>
      <c>Card link</c>
      <c>-</c>
      <c>-</c>
      <c>DNS-AID</c>
      <c>DNS query</c>
      <c>FQDN</c>
      <c>-</c>
      <c>DNSSEC/DANE</c>
      <c>-</c>
      <c>DN-ANR</c>
      <c>DNS query</c>
      <c>FQDN</c>
      <c>-</c>
      <c>DNSSEC</c>
      <c>-</c>
      <c>AID</c>
      <c>DNS TXT query</c>
      <c>FQDN</c>
      <c>-</c>
      <c>Ed25519 (opt)</c>
      <c>-</c>
      <c>AgentDNS</c>
      <c>DNS query</c>
      <c>Domain</c>
      <c>Semantic</c>
      <c>-</c>
      <c>-</c>
      <c>AIDIP</c>
      <c>Semantic query</c>
      <c>-</c>
      <c>Capabilities</c>
      <c>-</c>
      <c>Invocation</c>
</texttable>

</section>
<section anchor="use-case-applicability"><name>Use Case Applicability</name>

<t><xref target="tab-usecases"/> maps mechanisms to the five use cases. "Yes" means the mechanism is designed for that scenario; "Partial" means it can be applied but with limitations; a dash means it does not address the scenario.</t>

<texttable title="Use Case Applicability by Mechanism" anchor="tab-usecases">
      <ttcol align='left'>Approach</ttcol>
      <ttcol align='left'>Curated set</ttcol>
      <ttcol align='left'>Local context</ttcol>
      <ttcol align='left'>Known partner</ttcol>
      <ttcol align='left'>Federated consortium</ttcol>
      <ttcol align='left'>Free-form search</ttcol>
      <c>api-catalog</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Partial</c>
      <c>Partial</c>
      <c>A2A Agent Cards</c>
      <c>-</c>
      <c>-</c>
      <c>Yes</c>
      <c>-</c>
      <c>-</c>
      <c>MCP</c>
      <c>Yes</c>
      <c>Partial</c>
      <c>-</c>
      <c>-</c>
      <c>-</c>
      <c>ANP ADSP</c>
      <c>-</c>
      <c>-</c>
      <c>Yes</c>
      <c>Partial (DID)</c>
      <c>Yes</c>
      <c>AGNTCY ADS</c>
      <c>-</c>
      <c>-</c>
      <c>-</c>
      <c>Yes (DHT)</c>
      <c>Yes</c>
      <c>3GPP 6G</c>
      <c>-</c>
      <c>Yes</c>
      <c>-</c>
      <c>Partial (operator)</c>
      <c>-</c>
      <c>IoA</c>
      <c>-</c>
      <c>-</c>
      <c>-</c>
      <c>-</c>
      <c>Yes</c>
      <c>ARDP</c>
      <c>-</c>
      <c>Partial</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>-</c>
      <c>Directory (AD)</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Partial</c>
      <c>Partial</c>
      <c>A2A Registry</c>
      <c>-</c>
      <c>-</c>
      <c>-</c>
      <c>-</c>
      <c>Partial (human)</c>
      <c>DNS-AID</c>
      <c>-</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>-</c>
      <c>-</c>
      <c>DN-ANR</c>
      <c>-</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>-</c>
      <c>-</c>
      <c>AID</c>
      <c>-</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>-</c>
      <c>-</c>
      <c>AgentDNS</c>
      <c>-</c>
      <c>-</c>
      <c>-</c>
      <c>-</c>
      <c>Partial</c>
      <c>AIDIP</c>
      <c>-</c>
      <c>-</c>
      <c>Partial</c>
      <c>-</c>
      <c>Yes (ASR)</c>
</texttable>

<t>No single mechanism spans all five use cases; a complete system requires composing mechanisms from different approaches. <xref target="gap-analysis"/> expands on the gaps visible from this mapping.</t>

</section>
</section>
<section anchor="gap-analysis"><name>Gap Analysis</name>

<t>This section identifies gaps that emerge from the comparison in <xref target="comparison"/>. Each gap represents a problem that no surveyed mechanism fully solves.</t>

<section anchor="no-standard-for-semantic-discovery"><name>No Standard for Semantic Discovery</name>

<t>Most mechanisms require prior knowledge of an agent's URL or host (see the Semantic column in <xref target="tab-model"/>). No standardized way exists to discover agents by capability alone. The Free-form search use case depends on this capability, yet existing solutions (ADS via OASF taxonomy, ANP ADSP via crawling, IoA via semantic queries) are each single-implementer with incompatible metadata formats. No IETF standard addresses capability-based agent search.</t>

</section>
<section anchor="no-interoperable-federation"><name>No Interoperable Federation</name>

<t>The Federated consortium use case has emerging support from ARDP (explicit trust relationships), ADS (DHT peering), and AD (acknowledged but unspecified), as shown in the Cross-domain column of <xref target="tab-model"/> and the Federated consortium column of <xref target="tab-usecases"/>. Each uses a different trust model, propagation mechanism, and identity scheme. No interoperable standard lets federated directories from different implementations exchange agent registrations.</t>

</section>
<section anchor="network-and-application-layer-integration"><name>Network and Application Layer Integration</name>

<t>3GPP is studying two approaches to agent discovery: extending the application-layer exposure framework (CAPIF) for AI agent interactions, and defining new 3GPP-specific network functionalities for UE agent discovery. Neither path has yet defined how agents discovered through these mechanisms relate to agents discoverable via application-layer protocols such as A2A or MCP. No bridging mechanism exists between network-registered agents and A2A Agent Cards or MCP tool schemas. The Local context use case within operator networks may require both network-assisted and application-layer discovery to interoperate.</t>

</section>
<section anchor="metadata-schema-fragmentation"><name>Metadata Schema Fragmentation</name>

<t>Each approach defines its own metadata format: A2A Agent Cards, MCP tool schemas, ANP agent descriptions (JSON-LD), OASF records, 3GPP capability metadata, DNS-AID agent indexes (see the Description column in <xref target="tab-components"/>). No common schema or mapping exists between them. An agent discovered via one mechanism cannot be described to a client expecting another format without bespoke translation. A unified "AI Card" format merging A2A Agent Cards and MCP Server Cards has been announced under the AAIF umbrella, but no specification has been published.</t>

</section>
<section anchor="trust-bootstrapping"><name>Trust Bootstrapping</name>

<t>DNS lookup is not enough to establish trust. TLS gives a domain certificate, but a domain certificate alone does not establish trust in the agent behind it. Discovery mechanisms generally assume trust is established out of band. <xref target="I-D.klrc-aiagent-auth"/> maps existing IETF standards to agent auth, but the mapping between WIMSE workload identifiers and MCP server identity, or between SPIFFE trust domains and A2A Agent Card authentication, has not been written down. The Known partner use case requires verifying a partner's identity and capabilities before interaction, but no standard connects the identity returned by DNS-based lookup to the trust required for interaction. Establishing a root of trust - whether via a registry, WIMSE workload identity, or another mechanism - remains an open problem.</t>

</section>
<section anchor="no-lifecycle-management"><name>No Lifecycle Management</name>

<t>Most pull-based mechanisms (api-catalog, A2A Agent Cards, ANP descriptions) serve static metadata with no way to propagate capability changes to previously discovered clients. Soft-state registration with TTLs (as in <xref target="RFC9176"/>) addresses this for directory-based approaches; <xref target="I-D.jimenez-agent-directory"/> and <xref target="I-D.pioli-agent-discovery"/> both adopt this model. Well-known URI approaches have no equivalent, leaving the Curated set and Known partner use cases without change notification.</t>

</section>
<section anchor="well-known-namespace-pressure"><name>Well-Known Namespace Pressure</name>

<t>The .well-known URI namespace is under pressure from AI-related registrations. At IETF 125 DISPATCH, the designated expert reported agents.json, ai.txt, and /.well-known/ai were all filed without real specs. Multiple discovery approaches depend on .well-known URIs, making namespace coordination a practical concern.</t>

</section>
<section anchor="no-mechanism-spans-all-use-cases"><name>No Mechanism Spans All Use Cases</name>

<t><xref target="tab-usecases"/> shows that no single mechanism addresses all five scenarios. A complete discovery system requires composing multiple mechanisms, but no standard defines how they compose or interoperate.</t>

</section>
</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>Agent discovery introduces security considerations around metadata integrity, impersonation, and information disclosure. <xref target="I-D.klrc-aiagent-auth"/> provides a framework for agent authentication and authorization using existing standards. <xref target="I-D.beyer-agent-identity-architecture"/> addresses human-anchored agent identity and delegation chains.</t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>This document has no IANA actions.</t>

</section>


  </middle>

  <back>




    <references title='Informative References' anchor="sec-informative-references">

<reference anchor="A2A-spec" target="https://google.github.io/A2A/">
  <front>
    <title>Agent-to-Agent Protocol Specification</title>
    <author >
      <organization></organization>
    </author>
    <date year="2025"/>
  </front>
</reference>
<reference anchor="MCP-spec" target="https://modelcontextprotocol.io/specification">
  <front>
    <title>Model Context Protocol Specification</title>
    <author >
      <organization></organization>
    </author>
    <date year="2025"/>
  </front>
</reference>
<reference anchor="MCP-registry" target="https://github.com/modelcontextprotocol/registry">
  <front>
    <title>Model Context Protocol Registry</title>
    <author >
      <organization></organization>
    </author>
    <date year="2025"/>
  </front>
</reference>


<reference anchor="RFC9727">
  <front>
    <title>api-catalog: A Well-Known URI and Link Relation to Help Discovery of APIs</title>
    <author fullname="K. Smith" initials="K." surname="Smith"/>
    <date month="June" year="2025"/>
    <abstract>
      <t>This document defines the "api-catalog" well-known URI and link relation. It is intended to facilitate automated discovery and usage of published Application Programming Interfaces (APIs). A request to the api-catalog resource will return a document providing information about, and links to, the Publisher's APIs.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9727"/>
  <seriesInfo name="DOI" value="10.17487/RFC9727"/>
</reference>
<reference anchor="RFC9176">
  <front>
    <title>Constrained RESTful Environments (CoRE) Resource Directory</title>
    <author fullname="C. Amsüss" initials="C." role="editor" surname="Amsüss"/>
    <author fullname="Z. Shelby" initials="Z." surname="Shelby"/>
    <author fullname="M. Koster" initials="M." surname="Koster"/>
    <author fullname="C. Bormann" initials="C." surname="Bormann"/>
    <author fullname="P. van der Stok" initials="P." surname="van der Stok"/>
    <date month="April" year="2022"/>
    <abstract>
      <t>In many Internet of Things (IoT) applications, direct discovery of resources is not practical due to sleeping nodes or networks where multicast traffic is inefficient. These problems can be solved by employing an entity called a Resource Directory (RD), which contains information about resources held on other servers, allowing lookups to be performed for those resources. The input to an RD is composed of links, and the output is composed of links constructed from the information stored in the RD. This document specifies the web interfaces that an RD supports for web servers to discover the RD and to register, maintain, look up, and remove information on resources. Furthermore, new target attributes useful in conjunction with an RD are defined.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9176"/>
  <seriesInfo name="DOI" value="10.17487/RFC9176"/>
</reference>
<reference anchor="RFC9460">
  <front>
    <title>Service Binding and Parameter Specification via the DNS (SVCB and HTTPS Resource Records)</title>
    <author fullname="B. Schwartz" initials="B." surname="Schwartz"/>
    <author fullname="M. Bishop" initials="M." surname="Bishop"/>
    <author fullname="E. Nygren" initials="E." surname="Nygren"/>
    <date month="November" year="2023"/>
    <abstract>
      <t>This document specifies the "SVCB" ("Service Binding") and "HTTPS" DNS resource record (RR) types to facilitate the lookup of information needed to make connections to network services, such as for HTTP origins. SVCB records allow a service to be provided from multiple alternative endpoints, each with associated parameters (such as transport protocol configuration), and are extensible to support future uses (such as keys for encrypting the TLS ClientHello). They also enable aliasing of apex domains, which is not possible with CNAME. The HTTPS RR is a variation of SVCB for use with HTTP (see RFC 9110, "HTTP Semantics"). By providing more information to the client before it attempts to establish a connection, these records offer potential benefits to both performance and privacy.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9460"/>
  <seriesInfo name="DOI" value="10.17487/RFC9460"/>
</reference>
<reference anchor="RFC8414">
  <front>
    <title>OAuth 2.0 Authorization Server Metadata</title>
    <author fullname="M. Jones" initials="M." surname="Jones"/>
    <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
    <author fullname="J. Bradley" initials="J." surname="Bradley"/>
    <date month="June" year="2018"/>
    <abstract>
      <t>This specification defines a metadata format that an OAuth 2.0 client can use to obtain the information needed to interact with an OAuth 2.0 authorization server, including its endpoint locations and authorization server capabilities.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8414"/>
  <seriesInfo name="DOI" value="10.17487/RFC8414"/>
</reference>
<reference anchor="RFC9728">
  <front>
    <title>OAuth 2.0 Protected Resource Metadata</title>
    <author fullname="M.B. Jones" initials="M.B." surname="Jones"/>
    <author fullname="P. Hunt" initials="P." surname="Hunt"/>
    <author fullname="A. Parecki" initials="A." surname="Parecki"/>
    <date month="April" year="2025"/>
    <abstract>
      <t>This specification defines a metadata format that an OAuth 2.0 client or authorization server can use to obtain the information needed to interact with an OAuth 2.0 protected resource.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9728"/>
  <seriesInfo name="DOI" value="10.17487/RFC9728"/>
</reference>

<reference anchor="I-D.ietf-httpapi-link-hint">
   <front>
      <title>HTTP Link Hints</title>
      <author fullname="Mark Nottingham" initials="M." surname="Nottingham">
         </author>
      <date day="10" month="August" year="2025"/>
      <abstract>
	 <t>   This memo specifies &quot;HTTP Link Hints&quot;, a mechanism for annotating Web
   links to HTTP(S) resources with information that otherwise might be
   discovered by interacting with them.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-httpapi-link-hint-04"/>
   
</reference>

<reference anchor="I-D.ietf-httpapi-authentication-link">
   <front>
      <title>Link relationship types for authentication</title>
      <author fullname="Evert Pot" initials="E." surname="Pot">
         </author>
      <date day="3" month="March" year="2024"/>
      <abstract>
	 <t>   This specification defines a set of relationships that may be used to
   indicate where a user may authenticate, log out, register a new
   account or find out who is currently authenticated.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-httpapi-authentication-link-01"/>
   
</reference>

<reference anchor="I-D.cui-ai-agent-discovery-invocation">
   <front>
      <title>AI Agent Discovery and Invocation Protocol</title>
      <author fullname="Yong Cui" initials="Y." surname="Cui">
         <organization>Tsinghua University</organization>
      </author>
      <author fullname="Yihan Chao" initials="Y." surname="Chao">
         <organization>Zhongguancun Laboratory</organization>
      </author>
      <author fullname="Chenguang Du" initials="C." surname="Du">
         <organization>Zhongguancun Laboratory</organization>
      </author>
      <date day="12" month="February" year="2026"/>
      <abstract>
	 <t>   This document proposes a standardized protocol for discovery and
   invocation of AI agents.  It defines a common metadata format for
   describing AI agents (including capabilities, I/O specifications,
   supported languages, tags, authentication methods, etc.), a
   capability-based discovery mechanism, and a unified RESTful
   invocation interface.

   This revision additionally specifies an optional extension that
   enables intent-based agent selection prior to discovery and
   invocation, without changing existing discovery or invocation
   semantics.

   The goal is to enable cross-platform interoperability among AI agents
   by providing a discover-and-match mechanism and a unified invocation
   entry point.  Security considerations, including authentication and
   trust measures, are also discussed.  This specification aims to
   facilitate the formation of multi-agent systems by making it easy to
   find the right agent for a task and invoke it in a consistent manner
   across different vendors and platforms.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-cui-ai-agent-discovery-invocation-01"/>
   
</reference>

<reference anchor="I-D.yao-catalist-problem-space-analysis">
   <front>
      <title>Problem Space Analysis of AI Agent Protocols in IETF</title>
      <author fullname="Kehan Yao" initials="K." surname="Yao">
         <organization>China Mobile</organization>
      </author>
      <author fullname="Zaheduzzaman Sarker" initials="Z." surname="Sarker">
         <organization>Nokia</organization>
      </author>
      <date day="2" month="March" year="2026"/>
      <abstract>
	 <t>   This document aims to identify IETF-relevant problem space and
   potential areas and working groups, exploring internal and external
   coordination for AI Agent protocols by analyzing open source efforts.
   It may serve as a target for CATALIST BoF discussions.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-yao-catalist-problem-space-analysis-01"/>
   
</reference>

<reference anchor="I-D.beyer-agent-identity-architecture">
   <front>
      <title>Architecture for Human-Anchored Agent Identity, Delegation, and Provenance</title>
      <author fullname="Brandon Beyer" initials="B." surname="Beyer">
         <organization>Independent</organization>
      </author>
      <date day="1" month="April" year="2026"/>
      <abstract>
	 <t>   Software agents increasingly act on behalf of people across
   communication, automation, and decision-making contexts.  These
   agents initiate actions, delegate tasks, and interact with other
   agents without a consistent model for representing the human who
   authorized them, the scope of authority they possess, or the
   provenance of their actions across ecosystems.

   This document defines an architectural model for human-anchored agent
   identity.  The model introduces a human identity root, explicit
   delegation semantics, and a provenance structure that enables
   ecosystems to determine whether an agent is legitimate, whether it is
   acting within its intended authority, and how its actions relate to a
   responsible human.

   This document does not define a protocol or wire format.  It provides
   an architectural foundation that existing systems may bind to in
   order to support accountable, interoperable, and human-aligned agent
   ecosystems.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-beyer-agent-identity-architecture-00"/>
   
</reference>

<reference anchor="I-D.klrc-aiagent-auth">
   <front>
      <title>AI Agent Authentication and Authorization</title>
      <author fullname="Pieter Kasselman" initials="P." surname="Kasselman">
         <organization>Defakto Security</organization>
      </author>
      <author fullname="Jeff Lombardo" initials="J." surname="Lombardo">
         <organization>AWS</organization>
      </author>
      <author fullname="Yaroslav Rosomakho" initials="Y." surname="Rosomakho">
         <organization>Zscaler</organization>
      </author>
      <author fullname="Brian Campbell" initials="B." surname="Campbell">
         <organization>Ping Identity</organization>
      </author>
      <author fullname="Nick Steele" initials="N." surname="Steele">
         <organization>OpenAI</organization>
      </author>
      <author fullname="Aaron Parecki" initials="A." surname="Parecki">
         <organization>Okta</organization>
      </author>
      <date day="1" month="June" year="2026"/>
      <abstract>
	 <t>   This document proposes best practices for authentication and
   authorization of AI agent interactions.  It leverages existing
   standards such as the Workload Identity in Multi-System Environments
   (WIMSE) architecture and OAuth 2.0 family of specifications.  Rather
   than defining new protocols, this document describes how existing and
   widely deployed standards can be applied or extended to establish
   agent authentication and authorization.  By doing so, it aims to
   provide a framework within which to use existing standards, identify
   gaps and guide future standardization efforts for agent
   authentication and authorization.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-klrc-aiagent-auth-02"/>
   
</reference>

<reference anchor="I-D.mozleywilliams-dnsop-dnsaid">
   <front>
      <title>DNS for AI Discovery</title>
      <author fullname="Jim Mozley" initials="J." surname="Mozley">
         <organization>Infoblox, Inc.</organization>
      </author>
      <author fullname="Nic Williams" initials="N." surname="Williams">
         <organization>Infoblox, Inc.</organization>
      </author>
      <author fullname="Behcet Sarikaya" initials="B." surname="Sarikaya">
         <organization>Unaffiliated</organization>
      </author>
      <author fullname="Roland Schott" initials="R." surname="Schott">
         <organization>Deutsche Telekom</organization>
      </author>
      <author fullname="Jeffrey Damick" initials="J." surname="Damick">
         <organization>Amazon</organization>
      </author>
      <date day="27" month="May" year="2026"/>
      <abstract>
	 <t>   The document standardizes an approach for publishing AI agents in the
   Domain Name System (DNS) so that other agents can discover them.
   Discovery is then initiated based on one of three generic use cases,
   in increasing computational and latency cost: (1) the requestor knows
   both the organization and agent (2) the requestor knows the
   organization that provides a capability, but not the specific agent
   (3) the requestor knows the required capability, but not the
   organization or agent.  Of these use cases only (1) and (2) are in
   scope for this document, although (3) can be derived from this
   specification.

   DNS for AI Discovery (DNS-AID) is designed so that, once a client has
   learned an organization&#x27;s agents, subsequent transactions can utilize
   the first use case with the benefit of cacheable connectivity
   information that is learnable as an agentic skill.  The mechanism
   uses Service Binding (SVCB) records for connectivity information and
   key meta data, a well known entry point using DNS-Based Service
   Discovery (DNS-SD) labels into an organization&#x27;s agent index, and
   optionally DNS Security Extensions (DNSSEC) and DNS-Based
   Authentication of Named Entities (DANE) TLSA records for trust and
   security.  DNS-AID provides consumers of agent services with a direct
   connection method for agentic workloads not mediated by a third
   party.  Organizations can use the same approach across public and
   private networks networks, providing consistency and common
   operational models, including publishing agents that are hosted in
   service provider domains.

   This document introduces no new resource record types, opcodes, or
   response codes.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-mozleywilliams-dnsop-dnsaid-02"/>
   
</reference>

<reference anchor="I-D.cui-dns-native-agent-naming-resolution">
   <front>
      <title>DNS-Native AI Agent Naming and Resolution</title>
      <author fullname="Yong Cui" initials="Y." surname="Cui">
         <organization>Tsinghua University</organization>
      </author>
      <date day="2" month="March" year="2026"/>
      <abstract>
	 <t>   This document specifies DNS-Native Agent Naming and Resolution (DN-
   ANR) for AI agents.  DN-ANR has three goals: (1) use domain names
   (FQDNs) as stable Agent Identifiers, (2) resolve Agent Identifiers to
   verifiable endpoints and supported protocol/version information with
   a cryptographic integrity chain (DNSSEC preferred), and (3) provide
   only minimal and stable pointer/index capabilities that can be
   referenced by upper-layer discovery systems.  DN-ANR intentionally
   does not carry heavy semantic metadata in DNS, and does not define
   semantic discovery, ranking, or routing decisions.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-cui-dns-native-agent-naming-resolution-01"/>
   
</reference>

<reference anchor="I-D.nemethi-aid-agent-identity-discovery">
   <front>
      <title>Agent Identity and Discovery (AID)</title>
      <author fullname="Balazs Nemethi" initials="B." surname="Nemethi">
         <organization>Open Agent Registry, Inc.</organization>
      </author>
      <date day="16" month="March" year="2026"/>
      <abstract>
	 <t>   Agent Identity and Discovery (AID) is a minimal, DNS-first discovery
   protocol for locating agent service endpoints.  Given a domain name,
   an AID client queries a DNS TXT record at the well-known subdomain
   _agent.&lt;domain&gt; and learns the service endpoint URI, protocol token,
   authentication hint, and optional metadata for that agent.

   This document defines the AID v1.2 record format, client discovery
   algorithm, exact-host lookup rules, security requirements, and IANA
   registrations for the `_agent` DNS node name and the `agent` service
   name.  AID is intentionally small.  After discovery, protocol-
   specific mechanisms such as MCP or A2A handle communication and
   capability negotiation.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-nemethi-aid-agent-identity-discovery-00"/>
   
</reference>

<reference anchor="I-D.liang-agentdns">
   <front>
      <title>AgentDNS: A Root Domain Naming System for LLM Agents</title>
      <author fullname="梁致远" initials="" surname="梁致远">
         <organization>China Telecom Research Institute</organization>
      </author>
      <author fullname="Enfang Cui" initials="E." surname="Cui">
         <organization>China Telecom Research Institute</organization>
      </author>
      <author fullname="Yujun Cheng" initials="Y." surname="Cheng">
         <organization>University of Science and Technology Beijing</organization>
      </author>
      <date day="8" month="October" year="2025"/>
      <abstract>
	 <t>   This document describes AgentDNS, a root domain naming and service
   discovery system designed for Large Language Model (LLM) agents.
   Inspired by the traditional Domain Name System (DNS), AgentDNS
   enables agents to autonomously discover, resolve, and securely invoke
   third-party agent and tool services across different vendors.
   AgentDNS introduces a unified namespace, semantic service discovery,
   protocol-aware interoperability, and unified authentication and
   billing.  The system aims to address interoperability, service
   discovery, and trust management challenges in large-scale agent
   collaboration ecosystems.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-liang-agentdns-00"/>
   
</reference>

<reference anchor="I-D.pioli-agent-discovery">
   <front>
      <title>Agent Registration and Discovery Protocol (ARDP)</title>
      <author fullname="Roberto Pioli" initials="R." surname="Pioli">
         <organization>Independent</organization>
      </author>
      <date day="24" month="February" year="2026"/>
      <abstract>
	 <t>   This document specifies the Agent Registration and Discovery Protocol
   (ARDP), a lightweight protocol for registering, discovering, and
   reaching autonomous software agents in distributed and federated
   environments.  ARDP provides stable agent identities, dynamic
   endpoint resolution, capability advertisement (including protocol
   selection among MCP, A2A, HTTP, and gRPC), minimal presence
   signaling, and a security-first discovery control plane.  ARDP is
   transport-agnostic and complementary to existing agent interaction
   protocols.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-pioli-agent-discovery-01"/>
   
</reference>

<reference anchor="I-D.jimenez-agent-directory">
   <front>
      <title>Agent Directory</title>
      <author fullname="Jaime Jimenez" initials="J." surname="Jimenez">
         <organization>Ericsson</organization>
      </author>
      <date day="8" month="May" year="2026"/>
      <abstract>
	 <t>   This document defines the Agent Directory (AD), a service where
   agents register their identity, capabilities, and reachable endpoints
   and where clients discover them by capability.  The AD adapts the
   Constrained RESTful Environments (CoRE) Resource Directory (RFC 9176)
   from constrained IoT devices to software agents, reusing its
   registration, lookup, and soft-state lifecycle model.  The AD uses
   HTTP and JSON.  MCP and A2A define how agents interact; this document
   defines how they are found.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-jimenez-agent-directory-01"/>
   
</reference>

<reference anchor="I-D.farrel-dawn-terminology">
   <front>
      <title>Terminology for the Discovery of Agents, Workloads, and Named Entities (DAWN)</title>
      <author fullname="Adrian Farrel" initials="A." surname="Farrel">
         <organization>Old Dog Consulting</organization>
      </author>
      <author fullname="Kehan Yao" initials="K." surname="Yao">
         <organization>China Mobile</organization>
      </author>
      <author fullname="Roland Schott" initials="R." surname="Schott">
         <organization>Deutsche Telekom</organization>
      </author>
      <author fullname="Nic Williams" initials="N." surname="Williams">
         <organization>Infoblox</organization>
      </author>
      <date day="4" month="June" year="2026"/>
      <abstract>
	 <t>   The proliferation of distributed systems, Artificial Intelligence
   (AI) agents, cloud workloads, and network services has created a need
   for interoperable mechanisms to discover entities.  Entities may
   include AI agents, software services, compute workloads, and other
   named resources that need to be found and characterised before
   interaction can begin.

   This document defines terminology for Discovery of Agents, Workloads,
   and Named Entities (DAWN).  The intention is that this common set of
   terms can be used by other documents related to DAWN and so achieve
   consistency of meaning across the space.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-farrel-dawn-terminology-02"/>
   
</reference>

<reference anchor="I-D.akhavain-moussa-dawn-problem-statement">
   <front>
      <title>Problem Statement for the Discovery of Agents, Workloads, and Named Entities (DAWN)</title>
      <author fullname="Arashmid Akhavain" initials="A." surname="Akhavain">
         <organization>Huawei Technologies Canada</organization>
      </author>
      <author fullname="Hesham Moussa" initials="H." surname="Moussa">
         <organization>Huawei Technologies Canada</organization>
      </author>
      <author fullname="Daniel King" initials="D." surname="King">
         <organization>Old Dog Consulting</organization>
      </author>
      <date day="12" month="June" year="2026"/>
      <abstract>
	 <t>   Interacting entities such as agents, tasks, users, workloads, data,
   compute, etc., in AI ecosystem/network are proliferating, yet there
   is no standardised way to discover what entities exist, what
   attributes such as skills, capabilities, physical characteristics,
   etc., they posses, what services they offer, or how to reach them
   across organisational boundaries.

   Discovery today relies on proprietary directories or manual
   configuration, creating fragmented ecosystems that prevent cross-
   domain collaboration.

   This document describes the problem space that motivates Discovery of
   Agents, Workloads, and Named Entities (DAWN).  It clarifies the scope
   of work within entity ecosystems, identifies why current approaches
   are insufficient, and outlines the challenges a standardised
   discovery mechanism must address.  It does not propose a specific
   solution or protocol.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-akhavain-moussa-dawn-problem-statement-04"/>
   
</reference>

<reference anchor="I-D.king-dawn-requirements">
   <front>
      <title>Requirements for the Discovery of Agents, Workloads, and Named Entities (DAWN)</title>
      <author fullname="Daniel King" initials="D." surname="King">
         <organization>Old Dog Consulting</organization>
      </author>
      <author fullname="Adrian Farrel" initials="A." surname="Farrel">
         <organization>Old Dog Consulting</organization>
      </author>
      <date day="28" month="April" year="2026"/>
      <abstract>
	 <t>   The proliferation of distributed systems, Artificial Intelligence
   (AI) agents, cloud workloads, and network services has created a need
   for interoperable mechanisms to discover entities across
   administrative and network boundaries.  Entities may include AI
   agents, software services, compute workloads, and other named
   resources that need to be found and characterised before interaction
   can begin.

   This document defines the requirements for Discovery of Agents,
   Workloads, and Named Entities (DAWN) and sets out the objectives that
   a discovery mechanism for such entities must satisfy.  It describes
   what information must be discoverable, what properties a discovery
   mechanism needs to support, and what constraints apply to discovery
   in decentralised environments.

   This document does not specify any particular discovery protocol or
   solution.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-king-dawn-requirements-01"/>
   
</reference>

<reference anchor="I-D.mozley-aidiscovery">
   <front>
      <title>AI Agent Discovery (AID) Problem Statement</title>
      <author fullname="Jim Mozley" initials="J." surname="Mozley">
         <organization>Infoblox, Inc.</organization>
      </author>
      <author fullname="Nic Williams" initials="N." surname="Williams">
         <organization>Infoblox, Inc.</organization>
      </author>
      <author fullname="Behcet Sarikaya" initials="B." surname="Sarikaya">
         <organization>Unaffiliated</organization>
      </author>
      <author fullname="Roland Schott" initials="R." surname="Schott">
         <organization>Deutsche Telekom</organization>
      </author>
      <date day="16" month="April" year="2026"/>
      <abstract>
	 <t>   With the proliferation of AI agents comes a need for mechanisms to
   support agent-to-agent discovery.  This document discusses the scope,
   requirements and considerations to support discovery processes so
   that these are not reliant on manually defined configurations and
   relationships.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-mozley-aidiscovery-01"/>
   
</reference>

<reference anchor="I-D.yu-dmsc-ai-agent-use-cases-in-6g">
   <front>
      <title>AI Agent Use Cases and Requirements in 6G Network</title>
      <author fullname="Menghan Yu" initials="M." surname="Yu">
         <organization>China Telecom</organization>
      </author>
      <author fullname="Aijun Wang" initials="A." surname="Wang">
         <organization>China Telecom</organization>
      </author>
      <author fullname="Jinyan Li" initials="J." surname="Li">
         <organization>China Telecom</organization>
      </author>
      <author fullname="Zhen Li" initials="Z." surname="Li">
         <organization>China Telecom</organization>
      </author>
      <date day="11" month="January" year="2026"/>
      <abstract>
	 <t>   This draft introduces use cases related to AI Agents in 6G networks,
   primarily referencing the technical report of 3GPP SA1 R20 Study on
   6G Use Cases and Service Requirements (TR 22.870).  It also
   elaborates on some of the requirements for introducing AI Agents into
   6G networks from the perspective of operators.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-yu-dmsc-ai-agent-use-cases-in-6g-01"/>
   
</reference>

<reference anchor="ANP-spec" target="https://github.com/agent-network-protocol/AgentNetworkProtocol">
  <front>
    <title>Agent Network Protocol</title>
    <author >
      <organization></organization>
    </author>
    <date year="2025"/>
  </front>
</reference>
<reference anchor="IoA" target="https://github.com/OpenBMB/IoA">
  <front>
    <title>Internet of Agents: Weaving a Web of Heterogeneous Agents</title>
    <author >
      <organization></organization>
    </author>
    <date year="2024"/>
  </front>
</reference>
<reference anchor="OASF" target="https://docs.agntcy.org/oasf/open-agentic-schema-framework/">
  <front>
    <title>Open Agentic Schema Framework</title>
    <author >
      <organization></organization>
    </author>
    <date year="2025"/>
  </front>
</reference>
<reference anchor="I-D.mp-agntcy-ads" target="https://spec.dir.agntcy.org">
  <front>
    <title>Agent Directory Service</title>
    <author >
      <organization></organization>
    </author>
    <date year="2025"/>
  </front>
</reference>
<reference anchor="TR22.870" target="https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=4374">
  <front>
    <title>Study on 6G Use Cases and Service Requirements</title>
    <author >
      <organization>3GPP</organization>
    </author>
    <date year="2026"/>
  </front>
</reference>
<reference anchor="TS23.222" >
  <front>
    <title>Common API Framework for 3GPP Northbound APIs (CAPIF)</title>
    <author >
      <organization>3GPP</organization>
    </author>
    <date year="2024"/>
  </front>
</reference>
<reference anchor="TR23.801" target="https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=4542">
  <front>
    <title>Study on System Architecture for 6G</title>
    <author >
      <organization>3GPP</organization>
    </author>
    <date year="2026"/>
  </front>
</reference>
<reference anchor="TR23.801-02" target="https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=4574">
  <front>
    <title>Study on 6G Application Enablement</title>
    <author >
      <organization>3GPP</organization>
    </author>
    <date year="2026"/>
  </front>
</reference>


    </references>



<?line 515?>

<section anchor="acknowledgments"><name>Acknowledgments</name>

<t>The authors thank Heidi-Maria Back, Emil Zhang, Paul Ardeleanu, and Carlos Bravo for input and review.</t>

</section>
<section anchor="detailed-discovery-flow-example"><name>Detailed Discovery Flow Example</name>

<t>This appendix expands the Known Partner illustration from <xref target="illustrative-flow-known-partner"/> into a step-by-step sequence showing where existing standards apply. Not all mechanisms require all steps; this represents one possible composition.</t>

<figure title="Example End-to-End Agent Discovery Flow" anchor="fig-e2e"><artset><artwork  type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="800" width="544" viewBox="0 0 544 800" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
<path d="M 8,96 L 8,112" fill="none" stroke="black"/>
<path d="M 8,192 L 8,224" fill="none" stroke="black"/>
<path d="M 8,304 L 8,336" fill="none" stroke="black"/>
<path d="M 8,416 L 8,448" fill="none" stroke="black"/>
<path d="M 8,528 L 8,560" fill="none" stroke="black"/>
<path d="M 8,640 L 8,656" fill="none" stroke="black"/>
<path d="M 8,736 L 8,752" fill="none" stroke="black"/>
<path d="M 80,48 L 80,72" fill="none" stroke="black"/>
<path d="M 88,128 L 88,168" fill="none" stroke="black"/>
<path d="M 88,240 L 88,280" fill="none" stroke="black"/>
<path d="M 88,352 L 88,392" fill="none" stroke="black"/>
<path d="M 88,464 L 88,504" fill="none" stroke="black"/>
<path d="M 88,576 L 88,616" fill="none" stroke="black"/>
<path d="M 88,672 L 88,712" fill="none" stroke="black"/>
<path d="M 176,96 L 176,112" fill="none" stroke="black"/>
<path d="M 176,192 L 176,224" fill="none" stroke="black"/>
<path d="M 176,304 L 176,336" fill="none" stroke="black"/>
<path d="M 176,416 L 176,448" fill="none" stroke="black"/>
<path d="M 176,528 L 176,560" fill="none" stroke="black"/>
<path d="M 176,640 L 176,656" fill="none" stroke="black"/>
<path d="M 176,736 L 176,752" fill="none" stroke="black"/>
<path d="M 24,80 L 160,80" fill="none" stroke="black"/>
<path d="M 24,128 L 160,128" fill="none" stroke="black"/>
<path d="M 24,176 L 160,176" fill="none" stroke="black"/>
<path d="M 24,240 L 160,240" fill="none" stroke="black"/>
<path d="M 24,288 L 160,288" fill="none" stroke="black"/>
<path d="M 24,352 L 160,352" fill="none" stroke="black"/>
<path d="M 24,400 L 160,400" fill="none" stroke="black"/>
<path d="M 24,464 L 160,464" fill="none" stroke="black"/>
<path d="M 24,512 L 160,512" fill="none" stroke="black"/>
<path d="M 24,576 L 160,576" fill="none" stroke="black"/>
<path d="M 24,624 L 160,624" fill="none" stroke="black"/>
<path d="M 24,672 L 160,672" fill="none" stroke="black"/>
<path d="M 24,720 L 160,720" fill="none" stroke="black"/>
<path d="M 24,768 L 160,768" fill="none" stroke="black"/>
<path d="M 232,208 L 240,192" fill="none" stroke="black"/>
<path d="M 232,224 L 240,208" fill="none" stroke="black"/>
<path d="M 232,432 L 240,416" fill="none" stroke="black"/>
<path d="M 24,80 C 15.16936,80 8,87.16936 8,96" fill="none" stroke="black"/>
<path d="M 160,80 C 168.83064,80 176,87.16936 176,96" fill="none" stroke="black"/>
<path d="M 24,128 C 15.16936,128 8,120.83064 8,112" fill="none" stroke="black"/>
<path d="M 160,128 C 168.83064,128 176,120.83064 176,112" fill="none" stroke="black"/>
<path d="M 24,176 C 15.16936,176 8,183.16936 8,192" fill="none" stroke="black"/>
<path d="M 160,176 C 168.83064,176 176,183.16936 176,192" fill="none" stroke="black"/>
<path d="M 24,240 C 15.16936,240 8,232.83064 8,224" fill="none" stroke="black"/>
<path d="M 160,240 C 168.83064,240 176,232.83064 176,224" fill="none" stroke="black"/>
<path d="M 24,288 C 15.16936,288 8,295.16936 8,304" fill="none" stroke="black"/>
<path d="M 160,288 C 168.83064,288 176,295.16936 176,304" fill="none" stroke="black"/>
<path d="M 24,352 C 15.16936,352 8,344.83064 8,336" fill="none" stroke="black"/>
<path d="M 160,352 C 168.83064,352 176,344.83064 176,336" fill="none" stroke="black"/>
<path d="M 24,400 C 15.16936,400 8,407.16936 8,416" fill="none" stroke="black"/>
<path d="M 160,400 C 168.83064,400 176,407.16936 176,416" fill="none" stroke="black"/>
<path d="M 24,464 C 15.16936,464 8,456.83064 8,448" fill="none" stroke="black"/>
<path d="M 160,464 C 168.83064,464 176,456.83064 176,448" fill="none" stroke="black"/>
<path d="M 24,512 C 15.16936,512 8,519.16936 8,528" fill="none" stroke="black"/>
<path d="M 160,512 C 168.83064,512 176,519.16936 176,528" fill="none" stroke="black"/>
<path d="M 24,576 C 15.16936,576 8,568.83064 8,560" fill="none" stroke="black"/>
<path d="M 160,576 C 168.83064,576 176,568.83064 176,560" fill="none" stroke="black"/>
<path d="M 24,624 C 15.16936,624 8,631.16936 8,640" fill="none" stroke="black"/>
<path d="M 160,624 C 168.83064,624 176,631.16936 176,640" fill="none" stroke="black"/>
<path d="M 24,672 C 15.16936,672 8,664.83064 8,656" fill="none" stroke="black"/>
<path d="M 160,672 C 168.83064,672 176,664.83064 176,656" fill="none" stroke="black"/>
<path d="M 24,720 C 15.16936,720 8,727.16936 8,736" fill="none" stroke="black"/>
<path d="M 160,720 C 168.83064,720 176,727.16936 176,736" fill="none" stroke="black"/>
<path d="M 24,768 C 15.16936,768 8,760.83064 8,752" fill="none" stroke="black"/>
<path d="M 160,768 C 168.83064,768 176,760.83064 176,752" fill="none" stroke="black"/>
<polygon class="arrowhead" points="96,712 84,706.4 84,717.6" fill="black" transform="rotate(90,88,712)"/>
<polygon class="arrowhead" points="96,616 84,610.4 84,621.6" fill="black" transform="rotate(90,88,616)"/>
<polygon class="arrowhead" points="96,504 84,498.4 84,509.6" fill="black" transform="rotate(90,88,504)"/>
<polygon class="arrowhead" points="96,392 84,386.4 84,397.6" fill="black" transform="rotate(90,88,392)"/>
<polygon class="arrowhead" points="96,280 84,274.4 84,285.6" fill="black" transform="rotate(90,88,280)"/>
<polygon class="arrowhead" points="96,168 84,162.4 84,173.6" fill="black" transform="rotate(90,88,168)"/>
<polygon class="arrowhead" points="88,72 76,66.4 76,77.6" fill="black" transform="rotate(90,80,72)"/>
<g class="text">
<text x="24" y="36">Agent</text>
<text x="76" y="36">starts</text>
<text x="124" y="36">with</text>
<text x="172" y="36">intent</text>
<text x="216" y="36">and</text>
<text x="276" y="36">entrypoint</text>
<text x="344" y="36">(URI)</text>
<text x="28" y="100">1.</text>
<text x="72" y="100">Resolve</text>
<text x="128" y="100">entry</text>
<text x="208" y="100">DNS</text>
<text x="256" y="100">A/AAAA,</text>
<text x="332" y="100">SVCB/HTTPS</text>
<text x="412" y="100">records,</text>
<text x="64" y="116">point</text>
<text x="212" y="116">SRV,</text>
<text x="264" y="116">DNS-SD,</text>
<text x="336" y="116">DANE/TLSA</text>
<text x="208" y="132">Or:</text>
<text x="248" y="132">query</text>
<text x="348" y="132">directory/registry</text>
<text x="28" y="196">2.</text>
<text x="64" y="196">Fetch</text>
<text x="108" y="196">host</text>
<text x="208" y="196">GET</text>
<text x="232" y="196">/</text>
<text x="332" y="196">well-known/api-catalog</text>
<text x="76" y="212">metadata</text>
<text x="208" y="212">GET</text>
<text x="348" y="212">well-known/agent-card.json</text>
<text x="208" y="228">GET</text>
<text x="356" y="228">.well-known/agent-descriptions</text>
<text x="28" y="308">3.</text>
<text x="64" y="308">Fetch</text>
<text x="112" y="308">agent</text>
<text x="208" y="308">GET</text>
<text x="336" y="308">/agent/{id}/agent-card.json</text>
<text x="76" y="324">metadata</text>
<text x="228" y="324">JSON-RPC</text>
<text x="308" y="324">initialize</text>
<text x="376" y="324">(MCP)</text>
<text x="228" y="340">Returns:</text>
<text x="320" y="340">capabilities,</text>
<text x="396" y="340">auth</text>
<text x="436" y="340">reqs</text>
<text x="28" y="420">4.</text>
<text x="76" y="420">Discover</text>
<text x="132" y="420">auth</text>
<text x="208" y="420">GET</text>
<text x="232" y="420">/</text>
<text x="392" y="420">well-known/oauth-authorization-server</text>
<text x="92" y="436">requirements</text>
<text x="208" y="436">GET</text>
<text x="380" y="436">.well-known/oauth-protected-resource</text>
<text x="212" y="452">From</text>
<text x="256" y="452">Agent</text>
<text x="304" y="452">Card:</text>
<text x="364" y="452">required</text>
<text x="432" y="452">schemes</text>
<text x="28" y="532">5.</text>
<text x="92" y="532">Authenticate</text>
<text x="244" y="532">SPIFFE/WIMSE</text>
<text x="308" y="532">or</text>
<text x="344" y="532">other</text>
<text x="416" y="532">attestation</text>
<text x="56" y="548">and</text>
<text x="112" y="548">authorize</text>
<text x="216" y="548">OAuth</text>
<text x="256" y="548">2.0</text>
<text x="296" y="548">token</text>
<text x="368" y="548">acquisition</text>
<text x="212" y="564">mTLS</text>
<text x="256" y="564">setup</text>
<text x="28" y="644">6.</text>
<text x="80" y="644">Establish</text>
<text x="220" y="644">HTTPS,</text>
<text x="292" y="644">WebSocket,</text>
<text x="356" y="644">SSE,</text>
<text x="396" y="644">gRPC</text>
<text x="80" y="660">transport</text>
<text x="228" y="660">Protocol</text>
<text x="312" y="660">negotiation</text>
<text x="28" y="740">7.</text>
<text x="64" y="740">Begin</text>
<text x="212" y="740">Send</text>
<text x="252" y="740">task</text>
<text x="292" y="740">with</text>
<text x="332" y="740">auth</text>
<text x="380" y="740">tokens</text>
<text x="88" y="756">interaction</text>
<text x="220" y="756">Handle</text>
<text x="288" y="756">streaming</text>
<text x="368" y="756">responses</text>
</g>
</svg>
</artwork><artwork  type="ascii-art"><![CDATA[
 Agent starts with intent and entrypoint (URI)
          |
          v
  +------------------+
 | 1. Resolve entry   |  DNS A/AAAA, SVCB/HTTPS records,
 |    point           |  SRV, DNS-SD, DANE/TLSA
  +--------+---------+   Or: query directory/registry
           |
           v
  +------------------+
 | 2. Fetch host      |  GET /.well-known/api-catalog
 |    metadata        |  GET /.well-known/agent-card.json
 |                    |  GET /.well-known/agent-descriptions
  +--------+---------+
           |
           v
  +------------------+
 | 3. Fetch agent     |  GET /agent/{id}/agent-card.json
 |    metadata        |  JSON-RPC initialize (MCP)
 |                    |  Returns: capabilities, auth reqs
  +--------+---------+
           |
           v
  +------------------+
 | 4. Discover auth   |  GET /.well-known/oauth-authorization-server
 |    requirements    |  GET /.well-known/oauth-protected-resource
 |                    |  From Agent Card: required schemes
  +--------+---------+
           |
           v
  +------------------+
 | 5. Authenticate    |  SPIFFE/WIMSE or other attestation
 |    and authorize   |  OAuth 2.0 token acquisition
 |                    |  mTLS setup
  +--------+---------+
           |
           v
  +------------------+
 | 6. Establish       |  HTTPS, WebSocket, SSE, gRPC
 |    transport       |  Protocol negotiation
  +--------+---------+
           |
           v
  +------------------+
 | 7. Begin           |  Send task with auth tokens
 |    interaction     |  Handle streaming responses
  +------------------+
]]></artwork></artset></figure>

<dl>
  <dt>Step 1 (resolve entry point):</dt>
  <dd>
    <t>Standard DNS resolution applies if the agent knows a domain name. SVCB records <xref target="RFC9460"/> can provide service parameters. DNS-AID <xref target="I-D.mozleywilliams-dnsop-dnsaid"/>, DN-ANR <xref target="I-D.cui-dns-native-agent-naming-resolution"/>, and AID <xref target="I-D.nemethi-aid-agent-identity-discovery"/> propose agent-specific DNS extensions. If the agent has only a capability description, it must query a directory or registry such as ARDP <xref target="I-D.pioli-agent-discovery"/>.</t>
  </dd>
  <dt>Step 2 (fetch host metadata):</dt>
  <dd>
    <t>Multiple competing well-known URIs exist: api-catalog <xref target="RFC9727"/>, agent-card.json (A2A), agent-descriptions (ANP). There is no single standard entry point.</t>
  </dd>
  <dt>Step 3 (fetch agent metadata):</dt>
  <dd>
    <t>Each protocol defines its own metadata format. A2A uses Agent Cards, MCP uses JSON-RPC capability negotiation, ANP uses JSON-LD agent descriptions.</t>
  </dd>
  <dt>Step 4 (discover auth requirements):</dt>
  <dd>
    <t><xref target="I-D.klrc-aiagent-auth"/> maps 3 OAuth discovery mechanisms to agent auth: AS metadata <xref target="RFC8414"/>, Protected Resource Metadata <xref target="RFC9728"/>, and Client ID Metadata Documents.</t>
  </dd>
  <dt>Step 5 (authenticate):</dt>
  <dd>
    <t>The AIMS stack from <xref target="I-D.klrc-aiagent-auth"/> applies: identifier, credentials, attestation, provisioning, authentication, authorization.</t>
  </dd>
  <dt>Steps 6-7 (transport and interaction):</dt>
  <dd>
    <t>Protocol-specific. A2A uses JSON-RPC over HTTPS, MCP uses JSON-RPC over Streamable HTTP or stdio, ANP uses HTTP.</t>
  </dd>
</dl>

</section>


  </back>

<!-- ##markdown-source:
H4sIACitR2oAA819W3fbRpbuu35FLech4gpB2YrjdMs9fZqR5EQd29FYymTm
nHVODBIgiQgk2AAomW15fvvZ375UFUDKdrL6YbwSWyKBuu7a+9vXSpLkoC3a
Mj9xj8bualPf5ltXzdz4wo3n+ap1Z0UzrW7zeute5dNFuiqaZfPoIJ1M6vwW
7+w89+ggq6ardEktZnU6a5PfimW+yv+ZZOndKsnssaRMV1kzTdd58vjxwTRt
83lVb09csZpVB81msiyapqhW7XZNDV2cX784OCjW9Ylr603THj9+/OfHxwdp
nacYw3pdFtQCPU5Du6vqm3ldbdb0TRg8poRxNkP3Cz1QVmlGP9IQ3Gsaaubo
q6It8sYdno1/eT14dHCTb6ml7OTAucSlPEU/dv6MZs4fN/zbq9NL+fR4zP9i
sgcHTUs9/JqW1Yomsc2bg2aZ1u2v/9hUbd6cuFV1sC5O3P9pq+nQNVXd1vmM
RtVsl/jh/x4c3OarTY4h/PEJPaK3l2lR0ssY09+KvJ2Nqnr+6OAg3bSLquYZ
0v+Olp7G9PeR+7tsGH8mG/n3lD7qfE4tEC38kxf9xJ3XxbRpqhV/lUt3v+Gd
vxU3xWhW7HTxIl/N4/aLZfjoM5oulqMZPf63XL8cTavlTh/j+uam6kyiLqIP
P2cGdTFK8cJHOno1cj9u8kWZ3xWrLOrtVVH/lva/+nSfS7w2uvGvfaTnN9Qz
7XdVRL2+SX9L2/jjT/dY45XRDb/S7e1gVdVLevOWSPAA59L/5kDnSbPOpyfc
lOcgoMikrRLhCZd1RaRdle6KnixmekYfyStpPc/bE7do23VzcnQ0r6p5mY/m
RbvYTEZFdUQ9HPGTGfGGE3f8+PibA/qdDtqejl9VWV66U+IX+bvf1+8Sb07l
xbW+h+6b+NUHxlHn86JpiWt9zlje6MMPTF/mTcu+d0RH1tWekbx5cfrnb4+/
PbGfn3z7zP/89Nlj+/lPT588PQnP/4l/vkjORuAICcaRroukLFY3yaJYtfu/
BssAZ5Fl4af9g9MNfU//MQ0EPl+sbit53D+5TauEPkpLmlJCU5yU+ZI2NZ3m
SbpKy21TNP7ZSb7Na220yJirbZO0ni6KNp+2mzr3T96U9ZQGII9ioP6bZfXP
kth5UZZFumySbNVUa/ydFlln9PRRsmIS1w7pUBWrOe1zU5WbzhRW+TJvF5hw
1h+cn7p/mLqlVvgx6sJ/vC6qcme9/LcmNu37mqZbRd/P0rrOS5GqbV7TQKuy
mofv05tFepsWq2RZbZomlQf9YrdEQtR+2OYbTJSfqfN/bKg3fNv0lhDT3Rno
dpNky2Ya9n7T5LS9Td7Q3ifP5vzg+PW+Yyts4nXeQmj7o/LJE6KbI68l/oxw
a9qYtbXnvFxU4+4oLuio1dRakKkn7pc8vaUVcSn9NMEXP+T0UEXf5rSc+tgn
B/rTOl999+q7I+qyO5CnGMhP46sX3ZHgeWm7mLqr6YJYtHtRE2fHlPb3RmCr
GaXzVTvdQqwfVWkzO6qoHdmMYpo03E4ys3b2cVXe4nUi7SQEJfbt05nRoLvK
69timu8fEbZ5RPQajWpPj9dvjo9Hf/r2cbejq3aTEbZZuWffu5+b3J2CjBjV
aJfERgN1Sv8BxqjAO3Fff395uXdsawJZaTn6er5e82pleXPTVmtiuZsyb446
8qL361nekryktW7W7/5XRzpcZP/29Otvn3Yn+YwneXX89ej4+Lg7ydNquaQp
ji8vwuY6kq48bPeahriYVBuaMz1BgPSU/nkx+PRcu8RF6/v16E+Pnzywvlfb
hhgAwaHASHkIz77/H7So3zw93reoOrPk8fHDxBPpBO58lYLpEcX8T5rbHoJJ
ElI1JiTm02l7cHC9KBpHx3uDkbuGVbPGLb0WxvtlWkhQTtwkB+PK8tu8JD6Q
OQKEJLRZhxril/H4Qn7ApEVlKFaOWUZTbWo6Y8RRfyOaaEbuonXEx9akaDVo
ZOkm26gnRiqkr0zp5aHLthCXzXLopnXVkJitCGCuHOlo04V00xAfYtZGal86
KUqSltyFiM4Z1K95uiY1Bs2X/BNeIyw0o81sG5pae5cTi8R80jUNk5rGyCon
8NTNNkzJrHeldabA1+GEjWR9l0WWlfnBwReO2H5N2zhlgHcwXoW1LMBy3MuX
r5KsJjCwIo2MT0u7oFWjuda0Z/QI/efKqlq7wybP3fv3s0KFfIJPP3wYkDaL
9Vs1m7LFwy9BXPT3ar6h55wARRr8mnRhmipmSIMl2EfiKMU3VdnowjHzw8pM
8LPsBi0ttyyrVOfrPMWeBR2xQHs5pBcvGM/UQaOmVgkalDgW7o7EVYElpacx
7pH7ZWFLLJSVC7zgTmkBChrmdEPgg77DEGl0vGSklGxmROIFvgBtook2bW6G
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
0Ur2Ea3gcxra/wcPkBu/p6QAAA==

-->

</rfc>

