<?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.38 (Ruby 3.4.9) -->


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

]>


<rfc ipr="trust200902" docName="draft-xu-efficient-agent-discovery-profile-00" category="info" submissionType="independent" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="Agent Discovery Profile">Metadata and Query Profile for Efficient Agent Discovery</title>

    <author initials="J." surname="Xu" fullname="Jinliang Xu">
      <organization>CAICT</organization>
      <address>
        <postal>
          <street>No. 52, Huayuan North Road</street>
          <city>Beijing</city>
          <region>Haidian District</region>
          <code>100191</code>
          <country>China</country>
        </postal>
        <email>xujinliang@caict.ac.cn</email>
      </address>
    </author>
    <author initials="B." surname="Li" fullname="Bingqi Li">
      <organization>CAICT</organization>
      <address>
        <postal>
          <street>No. 52, Huayuan North Road</street>
          <city>Beijing</city>
          <region>Haidian District</region>
          <code>100191</code>
          <country>China</country>
        </postal>
        <email>libingqi@caict.ac.cn</email>
      </address>
    </author>
    <author initials="R." surname="Zhu" fullname="Runkai Zhu">
      <organization>CAICT</organization>
      <address>
        <postal>
          <street>No. 52, Huayuan North Road</street>
          <city>Beijing</city>
          <region>Haidian District</region>
          <code>100191</code>
          <country>China</country>
        </postal>
        <email>zhurunkai@caict.ac.cn</email>
      </address>
    </author>

    <date year="2026" month="May" day="08"/>

    <area>General</area>
    <workgroup>Independent Submission</workgroup>
    

    <abstract>


<?line 49?>

<t>This document defines a metadata and query profile for efficient discovery of
autonomous software agents.  The profile describes how agents publish
capability metadata using explicit tags, natural-language descriptions,
example tasks, protocol bindings, and operational constraints.  It also
defines JSON metadata, discovery request, and discovery response objects that
enable discovery services to combine structured filtering, semantic retrieval,
and fine-grained matching while preserving an interoperable protocol surface.</t>

<t>The profile does not mandate a specific machine-learning model, embedding
model, database, or ranking algorithm.  Instead, it standardizes the metadata
and result evidence needed by clients and discovery services so that different
implementations can interoperate while optimizing their own latency,
scalability, and ranking quality.</t>



    </abstract>



  </front>

  <middle>


<?line 65?>

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

<t>Agent ecosystems require a way to find suitable agents from large and dynamic
candidate sets.  Exact lookup by identifier is not sufficient: users and
agents often express intent in natural language, while available agents expose
capabilities using heterogeneous names, descriptions, tags, examples,
protocols, and endpoint metadata.</t>

<t>Naive discovery approaches have undesirable trade-offs.  Heavy language-model
parsing can provide good intent understanding but may add unacceptable latency
for interactive or agent-to-agent negotiation.  Simple vector search over a
single concatenated description can be fast but may dilute important
capability details in multi-purpose agents.  Keyword search over tags can be
efficient but may miss semantically related agents.</t>

<t>This document defines an efficient agent discovery profile that separates
agent metadata into complementary signals:</t>

<t><list style="symbols">
  <t>explicit capability tags for fast structured filtering;</t>
  <t>natural-language descriptions for broad semantic matching;</t>
  <t>example tasks for fine-grained intent matching;</t>
  <t>protocol and endpoint bindings for reachability; and</t>
  <t>operational constraints for safe candidate selection.</t>
</list></t>

<t>The profile standardizes what agents publish and what discovery services
return.  Discovery services remain free to implement tag indices, dense vector
indices, example-level matching, neural routers, symbolic rules, or hybrid
approaches.</t>

<section anchor="problem-statement"><name>Problem Statement</name>

<t>Agent discovery has two competing requirements.  It must be expressive enough
to match natural-language task intent against heterogeneous agents, and it must
be concrete enough that independent implementations can exchange metadata and
queries without sharing the same ranking engine.</t>

<t>Existing mechanisms can publish web resources, service descriptors, or tool
manifests, but they do not by themselves define the discovery-specific
combination of capability tags, broad descriptions, example tasks, freshness,
matching evidence, and ranked responses used by this profile.  Without a
common profile, discovery services either expose platform-specific metadata or
return opaque rankings that clients cannot validate, debug, or compare.</t>

<t>This document therefore standardizes the metadata and query surface, not the
internal retrieval implementation.</t>

</section>
<section anchor="applicability"><name>Applicability</name>

<t>This profile is applicable to registries, directories, marketplaces, gateways,
or local discovery services that need to return candidate agents for a task
intent.  It is not intended to replace exact identifier resolution, endpoint
security, or post-discovery invocation protocols.</t>

</section>
<section anchor="goals"><name>Goals</name>

<t>This profile has the following goals:</t>

<t><list style="symbols">
  <t>define an agent metadata object suitable for high-performance discovery;</t>
  <t>support both structured filtering and natural-language intent search;</t>
  <t>preserve fine-grained capability signals for multi-purpose agents;</t>
  <t>define discovery request and response fields that are independent of any
particular ranking algorithm;</t>
  <t>allow discovery results to include matching evidence and confidence signals;</t>
  <t>support incremental metadata updates; and</t>
  <t>provide security and privacy guidance for discovery services.</t>
</list></t>

</section>
<section anchor="non-goals"><name>Non-Goals</name>

<t>This profile does not define:</t>

<t><list style="symbols">
  <t>a new transport protocol;</t>
  <t>a new URI scheme;</t>
  <t>a mandatory registry topology;</t>
  <t>a mandatory ranking formula;</t>
  <t>a mandatory embedding model, language model, or vector database;</t>
  <t>a reputation system; or</t>
  <t>an invocation protocol for executing tasks after discovery.</t>
</list></t>

</section>
<section anchor="requirements-language"><name>Requirements Language</name>

<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP 14
<xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they appear in all capitals, as
shown here.</t>

</section>
</section>
<section anchor="terminology"><name>Terminology</name>

<dl>
  <dt>Agent:</dt>
  <dd>
    <t>An autonomous or semi-autonomous software system that exposes one or more
capabilities and can be selected for invocation.</t>
  </dd>
  <dt>Agent Metadata:</dt>
  <dd>
    <t>A structured object that describes an agent's identity, capabilities,
examples, protocol bindings, and operational constraints.</t>
  </dd>
  <dt>Capability Tag:</dt>
  <dd>
    <t>A short normalized label that identifies a capability, domain, industry,
task type, or other discovery-relevant property.</t>
  </dd>
  <dt>Context Description:</dt>
  <dd>
    <t>A natural-language description of an agent's purpose, scope, and supported
tasks.</t>
  </dd>
  <dt>Discovery Request:</dt>
  <dd>
    <t>A request sent by a client or agent to a discovery service to obtain
candidate agents.</t>
  </dd>
  <dt>Discovery Response:</dt>
  <dd>
    <t>A response containing ranked candidate agents and matching evidence.</t>
  </dd>
  <dt>Example Task:</dt>
  <dd>
    <t>A short natural-language example of a user request, agent-to-agent request,
or task pattern that the agent is intended to handle.</t>
  </dd>
  <dt>Matching Evidence:</dt>
  <dd>
    <t>Data returned by a discovery service to explain why a candidate was
selected, such as matched tags, matched examples, score components, or
policy filters.</t>
  </dd>
</dl>

</section>
<section anchor="profile-overview"><name>Profile Overview</name>

<t>The profile has two interoperable surfaces:</t>

<t><list style="symbols">
  <t>the Agent Metadata object, published by agents or registries; and</t>
  <t>the Discovery Request and Discovery Response objects, exchanged between
clients and discovery services.</t>
</list></t>

<t>The canonical field names and examples in this profile use JSON <xref target="RFC8259"/>.
Other serializations MAY be used by a transport or registry binding only when
the binding defines an unambiguous mapping for field names, value types,
arrays, objects, and unknown-field behavior.</t>

<t>The following figure shows a typical implementation.  It is illustrative, not
normative.</t>

<figure><artwork type="ascii-art"><![CDATA[
             metadata publication
   Agent ----------------------------> Discovery Service
       \                                 |
        \                                | builds indices
         \                               v
          \                       +-------------+
           \                      | tag index   |
            \                     | context idx |
             \                    | example idx |
              \                   +-------------+
               \
                \ discovery request
                 v
   Client ---------------------------> Discovery Service
   Client <--------------------------- ranked candidates
                    response with matching evidence
]]></artwork></figure>

<t>The discovery service MAY build separate internal indices from the same
metadata.  For example, it might build an inverted index for tags, an
embedding index for descriptions, and an example-level index for task
examples.  These internal structures are not part of the wire profile.</t>

<section anchor="conformance-levels"><name>Conformance Levels</name>

<t>This profile defines three conformance levels for incremental adoption.</t>

<texttable>
      <ttcol align='left'>Level</ttcol>
      <ttcol align='left'>Name</ttcol>
      <ttcol align='left'>Requirements</ttcol>
      <c>D0</c>
      <c>Metadata</c>
      <c>Publish Agent Metadata with <spanx style="verb">id</spanx>, <spanx style="verb">name</spanx>, <spanx style="verb">description</spanx>, and at least one <spanx style="verb">bindings</spanx> entry.</c>
      <c>D1</c>
      <c>Structured Discovery</c>
      <c>Support Discovery Requests with tag and protocol filters and return ranked candidates.</c>
      <c>D2</c>
      <c>Evidence-Based Discovery</c>
      <c>Return matching evidence, freshness data, and score components when requested.</c>
</texttable>

<t>Implementations SHOULD state the highest level they support.  A D2 discovery
service MUST also satisfy D0 and D1.  Clients SHOULD tolerate lower levels but
MUST NOT assume that a D0 publisher supports query processing.</t>

</section>
</section>
<section anchor="agent-metadata"><name>Agent Metadata</name>

<t>An Agent Metadata object describes an agent for discovery.  It MUST be a
single JSON object unless another serialization is explicitly selected by a
binding profile that preserves the data model defined in this document.</t>

<section anchor="top-level-fields"><name>Top-Level Fields</name>

<texttable>
      <ttcol align='left'>Field</ttcol>
      <ttcol align='left'>Type</ttcol>
      <ttcol align='left'>Requirement</ttcol>
      <ttcol align='left'>Description</ttcol>
      <c>id</c>
      <c>string</c>
      <c>MUST</c>
      <c>Stable identifier of the agent</c>
      <c>name</c>
      <c>string</c>
      <c>MUST</c>
      <c>Human-readable name</c>
      <c>description</c>
      <c>string</c>
      <c>MUST</c>
      <c>Natural-language context description</c>
      <c>tags</c>
      <c>array of string</c>
      <c>SHOULD</c>
      <c>Normalized capability tags</c>
      <c>examples</c>
      <c>array of object</c>
      <c>SHOULD</c>
      <c>Example tasks or request patterns</c>
      <c>bindings</c>
      <c>array of object</c>
      <c>MUST</c>
      <c>Protocol and endpoint bindings</c>
      <c>auth</c>
      <c>object</c>
      <c>SHOULD</c>
      <c>Authentication requirements</c>
      <c>constraints</c>
      <c>object</c>
      <c>MAY</c>
      <c>Region, policy, cost, rate, or data constraints</c>
      <c>status</c>
      <c>string</c>
      <c>SHOULD</c>
      <c>Operational status</c>
      <c>expires_at</c>
      <c>string</c>
      <c>MAY</c>
      <c>Time after which the record should be refreshed</c>
      <c>version</c>
      <c>string</c>
      <c>SHOULD</c>
      <c>Metadata version or capability version</c>
      <c>updated_at</c>
      <c>string</c>
      <c>SHOULD</c>
      <c>Timestamp for freshness checks</c>
      <c>signature</c>
      <c>object</c>
      <c>MAY</c>
      <c>Signature or credential binding metadata</c>
</texttable>

<t>Field names are case-sensitive.  Implementations SHOULD ignore unknown fields
for forward compatibility, but MUST preserve unknown fields when acting as a
transparent metadata relay.</t>

</section>
<section anchor="identifier-and-name"><name>Identifier and Name</name>

<t>The <spanx style="verb">id</spanx> field MUST be stable for the lifecycle of the agent registration.  It
MAY be a URI, DNS-based name, registry-local identifier, or another
profile-defined identifier.  This profile does not define or reserve a new URI
scheme; when URIs are used, their schemes are defined outside this document.
Discovery services MUST NOT assume that the human-readable <spanx style="verb">name</spanx> field is
globally unique.</t>

</section>
<section anchor="description"><name>Description</name>

<t>The <spanx style="verb">description</spanx> field provides broad semantic context.  It SHOULD describe:</t>

<t><list style="symbols">
  <t>the agent's primary purpose;</t>
  <t>supported domains;</t>
  <t>important input and output types;</t>
  <t>operational limitations; and</t>
  <t>safety or policy-relevant boundaries.</t>
</list></t>

<t>Descriptions SHOULD be written for discovery and interoperability, not
marketing.  They SHOULD avoid unsupported superlatives such as "best",
"perfect", or "guaranteed".</t>

</section>
<section anchor="capability-tags"><name>Capability Tags</name>

<t>The <spanx style="verb">tags</spanx> field contains normalized labels.  Tags SHOULD be selected from one
or more declared taxonomies when possible.</t>

<t>Tags SHOULD be concise, lowercase, and stable.  A tag SHOULD represent a
capability, domain, task family, data type, industry, protocol, or language.
Examples:</t>

<figure><sourcecode type="json"><![CDATA[
["translation", "finance", "invoice-processing", "json-output"]
]]></sourcecode></figure>

<t>Discovery services MAY expand tags using taxonomy relationships or synonym
maps.  If expansion is used, the response SHOULD distinguish directly matched
tags from expanded or inferred tags.</t>

</section>
<section anchor="example-tasks"><name>Example Tasks</name>

<t>The <spanx style="verb">examples</spanx> field preserves fine-grained capability signals.  Each example
SHOULD describe a concrete task the agent can handle.</t>

<texttable>
      <ttcol align='left'>Field</ttcol>
      <ttcol align='left'>Type</ttcol>
      <ttcol align='left'>Requirement</ttcol>
      <ttcol align='left'>Description</ttcol>
      <c>id</c>
      <c>string</c>
      <c>SHOULD</c>
      <c>Stable example identifier</c>
      <c>text</c>
      <c>string</c>
      <c>MUST</c>
      <c>Example task or request</c>
      <c>tags</c>
      <c>array of string</c>
      <c>MAY</c>
      <c>Tags associated with the example</c>
      <c>input_schema</c>
      <c>object</c>
      <c>MAY</c>
      <c>Expected input shape</c>
      <c>output_schema</c>
      <c>object</c>
      <c>MAY</c>
      <c>Expected output shape</c>
      <c>language</c>
      <c>string</c>
      <c>MAY</c>
      <c>Language tag</c>
</texttable>

<t>Example tasks SHOULD be specific.  For a multi-purpose agent, publishers
SHOULD include examples for distinct capability modes rather than averaging
all capabilities into one broad description.</t>

</section>
<section anchor="protocol-bindings"><name>Protocol Bindings</name>

<t>The <spanx style="verb">bindings</spanx> field tells a client how the agent can be contacted or invoked
after discovery.</t>

<texttable>
      <ttcol align='left'>Field</ttcol>
      <ttcol align='left'>Type</ttcol>
      <ttcol align='left'>Requirement</ttcol>
      <ttcol align='left'>Description</ttcol>
      <c>protocol</c>
      <c>string</c>
      <c>MUST</c>
      <c>Protocol identifier defined by the selected binding profile, such as <spanx style="verb">https</spanx></c>
      <c>endpoint</c>
      <c>string</c>
      <c>MUST</c>
      <c>Endpoint reference or URI</c>
      <c>media_types</c>
      <c>array of string</c>
      <c>MAY</c>
      <c>Supported request or response media types</c>
      <c>interaction_model</c>
      <c>string</c>
      <c>MAY</c>
      <c><spanx style="verb">request-response</spanx>, <spanx style="verb">streaming</spanx>, <spanx style="verb">batch</spanx>, or profile-defined value</c>
      <c>priority</c>
      <c>integer</c>
      <c>MAY</c>
      <c>Preference order among bindings</c>
</texttable>

<t>Discovery clients MUST verify that a binding is acceptable under local policy
before invocation.</t>

</section>
<section anchor="versioning-and-extensions"><name>Versioning and Extensions</name>

<t>Metadata publishers SHOULD include a <spanx style="verb">version</spanx> field and SHOULD update it
whenever the meaning of capabilities, examples, or bindings changes.</t>

<t>Unknown top-level fields MUST be ignored by discovery services unless local
policy requires strict validation.  Unknown fields in nested objects SHOULD
also be ignored.  Implementations that relay metadata SHOULD preserve unknown
fields unless doing so conflicts with privacy or policy requirements.</t>

<t>Private extension fields SHOULD use collision-resistant names, such as
reverse-DNS names or URIs.  Extensions that affect ranking, authorization, or
wire compatibility SHOULD be documented in a stable specification.</t>

</section>
<section anchor="status-and-freshness"><name>Status and Freshness</name>

<t>The <spanx style="verb">status</spanx> field SHOULD use one of:</t>

<t><list style="symbols">
  <t><spanx style="verb">active</spanx></t>
  <t><spanx style="verb">inactive</spanx></t>
  <t><spanx style="verb">suspended</spanx></t>
  <t><spanx style="verb">deprecated</spanx></t>
  <t><spanx style="verb">testing</spanx></t>
</list></t>

<t>The <spanx style="verb">updated_at</spanx> or <spanx style="verb">version</spanx> field SHOULD be used to reject stale metadata.
Discovery services SHOULD expose when a result was indexed and whether the
source metadata is older than a client-supplied freshness constraint.</t>

<t>If <spanx style="verb">expires_at</spanx> is present, discovery services SHOULD stop returning the
record after that time unless local policy explicitly allows stale results.
Publishers SHOULD refresh records before expiration and SHOULD use random
jitter for large fleets to avoid synchronized refresh bursts.</t>

</section>
<section anchor="metadata-example"><name>Metadata Example</name>

<figure><sourcecode type="json"><![CDATA[
{
  "id": "https://agents.example.net/id/hr-core-automator",
  "name": "HR Core Automator",
  "description": "Optimizes HR workflows and onboarding checks.",
  "tags": ["hr", "workflow", "onboarding", "hcm", "api-automation"],
  "examples": [
    {
      "id": "ex-1",
      "text": "Prepare a new-employee onboarding workflow.",
      "tags": ["onboarding", "workflow"]
    },
    {
      "id": "ex-2",
      "text": "Check an employee record for missing payroll fields.",
      "tags": ["employee-record", "validation"]
    }
  ],
  "bindings": [
    {
      "protocol": "https",
      "endpoint": "https://agents.example.net/hr-core/invoke",
      "media_types": ["application/json"],
      "interaction_model": "request-response"
    }
  ],
  "status": "active",
  "version": "1.0.0",
  "updated_at": "2026-05-08T00:00:00Z"
}
]]></sourcecode></figure>

</section>
</section>
<section anchor="discovery-request"><name>Discovery Request</name>

<t>A Discovery Request asks a discovery service to return candidate agents.
It MUST be a single JSON object unless another serialization is explicitly
selected by a binding profile that preserves the data model defined in this
document.</t>

<section anchor="request-fields"><name>Request Fields</name>

<texttable>
      <ttcol align='left'>Field</ttcol>
      <ttcol align='left'>Type</ttcol>
      <ttcol align='left'>Requirement</ttcol>
      <ttcol align='left'>Description</ttcol>
      <c>query</c>
      <c>string</c>
      <c>MUST</c>
      <c>Natural-language intent or task description</c>
      <c>required_tags</c>
      <c>array of string</c>
      <c>MAY</c>
      <c>Tags that candidates must satisfy</c>
      <c>preferred_tags</c>
      <c>array of string</c>
      <c>MAY</c>
      <c>Tags that increase ranking score</c>
      <c>excluded_tags</c>
      <c>array of string</c>
      <c>MAY</c>
      <c>Tags that candidates must not contain</c>
      <c>protocols</c>
      <c>array of string</c>
      <c>MAY</c>
      <c>Acceptable protocols</c>
      <c>constraints</c>
      <c>object</c>
      <c>MAY</c>
      <c>Policy, region, cost, latency, or freshness constraints</c>
      <c>limit</c>
      <c>integer</c>
      <c>MAY</c>
      <c>Maximum number of candidates</c>
      <c>include_evidence</c>
      <c>boolean</c>
      <c>MAY</c>
      <c>Whether matching evidence is requested</c>
      <c>detail</c>
      <c>string</c>
      <c>MAY</c>
      <c><spanx style="verb">minimal</spanx>, <spanx style="verb">summary</spanx>, or <spanx style="verb">full</spanx> response detail</c>
      <c>client_context</c>
      <c>object</c>
      <c>MAY</c>
      <c>Client-side hints such as locale or domain</c>
</texttable>

<t>A discovery service MUST apply <spanx style="verb">required_tags</spanx> and <spanx style="verb">excluded_tags</spanx> as hard
filters when it supports the corresponding taxonomy.  If it cannot apply a
hard filter, it MUST report that limitation in the response.</t>

<t>The <spanx style="verb">detail</spanx> field controls metadata minimization.  A value of <spanx style="verb">minimal</spanx>
requests only identifiers, status, and enough endpoint data to continue
resolution.  A value of <spanx style="verb">summary</spanx> requests the normal candidate summary.  A
value of <spanx style="verb">full</spanx> requests complete metadata where policy permits.  Discovery
services MAY redact fields even when <spanx style="verb">full</spanx> is requested.</t>

</section>
<section anchor="request-example"><name>Request Example</name>

<figure><sourcecode type="json"><![CDATA[
{
  "query": "Find an agent for onboarding validation and API setup.",
  "required_tags": ["hr"],
  "preferred_tags": ["onboarding", "api-automation"],
  "protocols": ["https"],
  "constraints": {
    "max_results_age_seconds": 300,
    "region": "apac"
  },
  "limit": 10,
  "detail": "summary",
  "include_evidence": true
}
]]></sourcecode></figure>

</section>
</section>
<section anchor="discovery-response"><name>Discovery Response</name>

<t>A Discovery Response contains ranked candidates.
It MUST be a single JSON object unless another serialization is explicitly
selected by a binding profile that preserves the data model defined in this
document.</t>

<section anchor="response-fields"><name>Response Fields</name>

<texttable>
      <ttcol align='left'>Field</ttcol>
      <ttcol align='left'>Type</ttcol>
      <ttcol align='left'>Requirement</ttcol>
      <ttcol align='left'>Description</ttcol>
      <c>request_id</c>
      <c>string</c>
      <c>SHOULD</c>
      <c>Identifier for tracing the request</c>
      <c>candidates</c>
      <c>array of object</c>
      <c>MUST</c>
      <c>Ranked candidate agents</c>
      <c>applied_filters</c>
      <c>object</c>
      <c>SHOULD</c>
      <c>Filters applied by the discovery service</c>
      <c>unsupported_filters</c>
      <c>array of string</c>
      <c>MAY</c>
      <c>Filters the service could not apply</c>
      <c>warnings</c>
      <c>array of string</c>
      <c>MAY</c>
      <c>Limitations or policy warnings</c>
      <c>generated_at</c>
      <c>string</c>
      <c>SHOULD</c>
      <c>Response generation timestamp</c>
</texttable>

<t>Each candidate object SHOULD include:</t>

<texttable>
      <ttcol align='left'>Field</ttcol>
      <ttcol align='left'>Type</ttcol>
      <ttcol align='left'>Requirement</ttcol>
      <ttcol align='left'>Description</ttcol>
      <c>id</c>
      <c>string</c>
      <c>MUST</c>
      <c>Agent identifier</c>
      <c>name</c>
      <c>string</c>
      <c>SHOULD</c>
      <c>Human-readable name</c>
      <c>description</c>
      <c>string</c>
      <c>SHOULD</c>
      <c>Short description or summary</c>
      <c>bindings</c>
      <c>array of object</c>
      <c>SHOULD</c>
      <c>Usable protocol bindings</c>
      <c>score</c>
      <c>number</c>
      <c>SHOULD</c>
      <c>Overall ranking score</c>
      <c>score_components</c>
      <c>object</c>
      <c>MAY</c>
      <c>Structured score details</c>
      <c>matched_tags</c>
      <c>array of string</c>
      <c>MAY</c>
      <c>Tags matched directly or by expansion</c>
      <c>matched_examples</c>
      <c>array of object</c>
      <c>MAY</c>
      <c>Examples that matched the query</c>
      <c>credential_refs</c>
      <c>array of string</c>
      <c>MAY</c>
      <c>References for verification</c>
      <c>redacted</c>
      <c>boolean</c>
      <c>MAY</c>
      <c>Whether fields were omitted by policy</c>
      <c>status</c>
      <c>string</c>
      <c>SHOULD</c>
      <c>Operational status</c>
      <c>freshness</c>
      <c>object</c>
      <c>SHOULD</c>
      <c>Index and metadata freshness</c>
</texttable>

<t>Scores are local to the discovery service.  Clients MUST NOT compare scores
from different discovery services unless a common scoring profile is
explicitly defined.</t>

</section>
<section anchor="score-components"><name>Score Components</name>

<t>When <spanx style="verb">score_components</spanx> is returned, the following component names are
RECOMMENDED:</t>

<texttable>
      <ttcol align='left'>Component</ttcol>
      <ttcol align='left'>Meaning</ttcol>
      <c>tag</c>
      <c>Match between query-derived tags and agent tags</c>
      <c>context</c>
      <c>Semantic match against descriptions or broad context text</c>
      <c>example</c>
      <c>Match against one or more example tasks</c>
      <c>protocol</c>
      <c>Compatibility with requested protocol bindings</c>
      <c>freshness</c>
      <c>Penalty or bonus based on metadata age</c>
      <c>policy</c>
      <c>Local policy, trust, region, or entitlement signal</c>
</texttable>

<t>Implementations MAY add deployment-specific components.  Unknown components
MUST be ignored by clients that do not understand them.</t>

</section>
<section anchor="response-example"><name>Response Example</name>

<figure><sourcecode type="json"><![CDATA[
{
  "request_id": "req-123",
  "generated_at": "2026-05-08T00:00:01Z",
  "applied_filters": {
    "required_tags": ["hr"],
    "protocols": ["https"]
  },
  "candidates": [
    {
      "id": "https://agents.example.net/id/hr-core-automator",
      "name": "HR Core Automator",
      "description": "Optimizes onboarding workflows.",
      "bindings": [
        {
          "protocol": "https",
          "endpoint": "https://agents.example.net/hr-core/invoke"
        }
      ],
      "score": 0.91,
      "score_components": {
        "tag": 0.95,
        "context": 0.83,
        "example": 0.96
      },
      "matched_tags": ["hr", "onboarding", "api-automation"],
      "matched_examples": [
        {
          "id": "ex-1",
          "score": 0.96,
          "text": "Prepare a new-employee onboarding workflow."
        }
      ],
      "status": "active",
      "freshness": {
        "metadata_updated_at": "2026-05-08T00:00:00Z",
        "indexed_at": "2026-05-08T00:00:00Z"
      }
    }
  ]
}
]]></sourcecode></figure>

</section>
</section>
<section anchor="discovery-processing-model"><name>Discovery Processing Model</name>

<t>This section describes a recommended processing model.  It is not mandatory,
but it explains how the metadata fields in this profile support efficient
discovery.</t>

<section anchor="index-construction"><name>Index Construction</name>

<t>A discovery service can build three complementary indices:</t>

<dl>
  <dt>Tag index:</dt>
  <dd>
    <t>An inverted index from capability tag to agent identifiers.  This supports
fast filtering and high-recall candidate generation.</t>
  </dd>
  <dt>Context index:</dt>
  <dd>
    <t>A semantic index over descriptions, generated summaries, or other broad
context fields.  This supports natural-language recall when user wording
differs from tags.</t>
  </dd>
  <dt>Example index:</dt>
  <dd>
    <t>A fine-grained index over individual example tasks.  This preserves distinct
capability modes for multi-purpose agents.</t>
  </dd>
</dl>

<t>Discovery services MAY augment descriptions with synthetic queries or other
derived text.  If derived text materially affects ranking, implementations
SHOULD retain provenance so that debugging and abuse review are possible.</t>

</section>
<section anchor="query-processing"><name>Query Processing</name>

<t>A discovery service following the recommended model processes a request as
follows:</t>

<t><list style="numbers" type="1">
  <t>Validate the request and apply authentication or rate limits.</t>
  <t>Normalize tags and constraints against supported taxonomies.</t>
  <t>Derive query features, such as predicted tags, query embeddings, or
symbolic constraints.</t>
  <t>Retrieve candidates from the tag index and context index.</t>
  <t>Merge and deduplicate candidates.</t>
  <t>Re-rank candidates using example-level, policy, freshness, and operational
signals.</t>
  <t>Return candidates with matching evidence and warnings.</t>
</list></t>

<t>The service SHOULD bound the number of candidates entering expensive
re-ranking stages.  The service SHOULD return partial results with warnings
when a non-critical ranking component is unavailable.</t>

</section>
<section anchor="example-level-matching"><name>Example-Level Matching</name>

<t>For multi-purpose agents, example-level matching is RECOMMENDED.  The service
SHOULD preserve separate example vectors or features rather than representing
all examples only as one averaged vector.  This allows a query to match one
specific capability even when the agent has other unrelated capabilities.</t>

<t>A discovery service MAY compute the final score using a weighted combination
of tag, context, example, freshness, and policy components.  This document does
not define the weights.</t>

</section>
<section anchor="privacy-defaults-and-redaction"><name>Privacy Defaults and Redaction</name>

<t>Discovery services SHOULD minimize results by default.  Unless <spanx style="verb">detail=full</spanx>
is requested and authorized, responses SHOULD omit sensitive endpoint details,
private examples, internal system names, billing hints, and non-public
credential references.</t>

<t>If fields are omitted due to policy, the candidate SHOULD include
<spanx style="verb">"redacted": true</spanx> and the response SHOULD include a warning or policy reason
when doing so does not reveal sensitive information.</t>

</section>
</section>
<section anchor="matching-evidence"><name>Matching Evidence</name>

<t>Matching evidence helps clients decide whether a result is useful and helps
operators debug search behavior.</t>

<t>When <spanx style="verb">include_evidence</spanx> is true, a discovery response SHOULD include at least
one of:</t>

<t><list style="symbols">
  <t>matched tags;</t>
  <t>matched examples;</t>
  <t>matched description snippets;</t>
  <t>score components;</t>
  <t>applied filters;</t>
  <t>rejected hard constraints; or</t>
  <t>freshness indicators.</t>
</list></t>

<t>Evidence MUST NOT disclose private metadata or private user queries from other
clients.</t>

</section>
<section anchor="registration-and-update-behavior"><name>Registration and Update Behavior</name>

<t>Discovery quality depends on fresh metadata.  Registries or agents SHOULD
submit incremental updates when:</t>

<t><list style="symbols">
  <t>endpoints change;</t>
  <t>protocol bindings change;</t>
  <t>capability tags change;</t>
  <t>examples are added or removed;</t>
  <t>operational status changes; or</t>
  <t>credentials are revoked or renewed.</t>
</list></t>

<t>Discovery services SHOULD support sequence numbers, timestamps, entity tags,
or equivalent freshness mechanisms.  A stale update MUST NOT replace a newer
record.</t>

<t>Registrations SHOULD be idempotent on <spanx style="verb">(id, binding endpoint)</spanx> or another
profile-defined stable key.  Re-sending the same key with newer freshness data
SHOULD be treated as a refresh.  Re-sending the same <spanx style="verb">id</spanx> with conflicting
ownership or incompatible bindings SHOULD produce a conflict error.</t>

</section>
<section anchor="federation"><name>Federation</name>

<t>Discovery services MAY federate results from other discovery services or
registries.  Federated results MUST include provenance sufficient for a client
or local policy engine to determine the origin of the data.</t>

<t>Federated candidate metadata SHOULD include:</t>

<texttable>
      <ttcol align='left'>Field</ttcol>
      <ttcol align='left'>Description</ttcol>
      <c>origin_service</c>
      <c>Discovery or registry service that supplied the record</c>
      <c>origin_authority</c>
      <c>Authority or domain responsible for the record</c>
      <c>origin_signature</c>
      <c>Signature or reference covering the transferred metadata</c>
      <c>received_at</c>
      <c>Time the local discovery service received the record</c>
</texttable>

<t>Federation MUST NOT remove freshness, redaction, or credential information
that a client needs to make a trust decision.</t>

</section>
<section anchor="interoperability-considerations"><name>Interoperability Considerations</name>

<t>This profile is intended to map cleanly to existing agent metadata formats.
Where another format already defines fields such as agent cards, tool lists,
OpenAPI descriptions, or protocol-specific manifests, implementers SHOULD map
those fields into <spanx style="verb">description</spanx>, <spanx style="verb">tags</spanx>, <spanx style="verb">examples</spanx>, <spanx style="verb">bindings</spanx>, and
<spanx style="verb">constraints</spanx> rather than duplicating incompatible metadata.</t>

<t>The following mapping is typical:</t>

<texttable>
      <ttcol align='left'>Source Concept</ttcol>
      <ttcol align='left'>Profile Field</ttcol>
      <c>Agent card name</c>
      <c><spanx style="verb">name</spanx></c>
      <c>Agent card description</c>
      <c><spanx style="verb">description</spanx></c>
      <c>Skill or capability list</c>
      <c><spanx style="verb">tags</spanx></c>
      <c>Tool examples or prompts</c>
      <c><spanx style="verb">examples</spanx></c>
      <c>Endpoint or transport binding</c>
      <c><spanx style="verb">bindings</spanx></c>
      <c>Authentication metadata</c>
      <c><spanx style="verb">auth</spanx></c>
      <c>Rate or region limits</c>
      <c><spanx style="verb">constraints</spanx></c>
</texttable>

</section>
<section anchor="error-model"><name>Error Model</name>

<t>If this profile is carried over a request/response protocol, errors SHOULD be
returned as structured objects containing:</t>

<texttable>
      <ttcol align='left'>Field</ttcol>
      <ttcol align='left'>Requirement</ttcol>
      <ttcol align='left'>Description</ttcol>
      <c>code</c>
      <c>MUST</c>
      <c>Stable machine-readable error code</c>
      <c>message</c>
      <c>SHOULD</c>
      <c>Human-readable explanation</c>
      <c>correlation_id</c>
      <c>SHOULD</c>
      <c>Identifier for tracing and support</c>
      <c>retry_after</c>
      <c>MAY</c>
      <c>Suggested retry delay</c>
</texttable>

<t>The following error codes are RECOMMENDED:</t>

<texttable>
      <ttcol align='left'>Code</ttcol>
      <ttcol align='left'>Meaning</ttcol>
      <c>invalid_request</c>
      <c>Required field missing or malformed</c>
      <c>unsupported_filter</c>
      <c>The service cannot apply a requested hard filter</c>
      <c>unauthorized</c>
      <c>Authentication is required or failed</c>
      <c>forbidden</c>
      <c>Authenticated client lacks permission</c>
      <c>conflict</c>
      <c>Registration conflicts with an existing record</c>
      <c>not_found</c>
      <c>Requested agent or record was not found</c>
      <c>stale_metadata</c>
      <c>Candidate or registration failed freshness checks</c>
      <c>rate_limited</c>
      <c>Client exceeded rate or quota limits</c>
</texttable>

<t>HTTP bindings, if used, SHOULD map these errors to conventional HTTP status
codes such as 400, 401, 403, 404, 409, 410, 429, and 503, using the semantics
defined for HTTP status codes in <xref target="RFC9110"/>.</t>

</section>
<section anchor="test-vectors"><name>Test Vectors</name>

<t>This section is non-normative.</t>

<t>The following examples can be used as minimal parser and interoperation tests.</t>

<section anchor="minimal-d0-metadata"><name>Minimal D0 Metadata</name>

<figure><sourcecode type="json"><![CDATA[
{
  "id": "https://example.net/agents/minimal",
  "name": "Minimal Agent",
  "description": "Answers short factual questions.",
  "bindings": [
    {
      "protocol": "https",
      "endpoint": "https://example.net/agent/invoke"
    }
  ]
}
]]></sourcecode></figure>

<t>An implementation claiming D0 support MUST accept this object as valid
metadata, assuming the identifier and endpoint scheme are allowed by local
policy.</t>

</section>
<section anchor="minimal-d1-query"><name>Minimal D1 Query</name>

<figure><sourcecode type="json"><![CDATA[
{
  "query": "answer a short factual question",
  "protocols": ["https"],
  "limit": 1
}
]]></sourcecode></figure>

<t>A D1 discovery service receiving this query SHOULD return zero or more
candidates and MUST NOT require <spanx style="verb">include_evidence</spanx>.</t>

</section>
<section anchor="unsupported-hard-filter"><name>Unsupported Hard Filter</name>

<figure><sourcecode type="json"><![CDATA[
{
  "query": "find a translation agent",
  "required_tags": ["translation"],
  "constraints": {
    "unsupported_private_filter": "example"
  }
}
]]></sourcecode></figure>

<t>If the service treats <spanx style="verb">unsupported_private_filter</spanx> as a hard filter and cannot
apply it, the service MUST either fail the request or include the filter name
in <spanx style="verb">unsupported_filters</spanx>.</t>

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

<t>Discovery is security-sensitive.  A malicious discovery result can steer a
client to an attacker-controlled agent.</t>

<dl>
  <dt>Metadata authenticity:</dt>
  <dd>
    <t>Clients SHOULD verify signatures, credentials, or registry attestations
before invoking an agent returned by discovery.</t>
  </dd>
  <dt>Capability fraud:</dt>
  <dd>
    <t>Agents can exaggerate descriptions, tags, or examples.  Discovery services
SHOULD distinguish self-asserted metadata from verified metadata.</t>
  </dd>
  <dt>Prompt injection in metadata:</dt>
  <dd>
    <t>Descriptions and examples are untrusted text.  Discovery services using
language models MUST prevent metadata from overriding system instructions,
leaking private data, or changing ranking policies outside the intended
processing path.</t>
  </dd>
  <dt>Ranking manipulation:</dt>
  <dd>
    <t>Attackers may stuff tags, generate misleading examples, or create many
similar agents.  Discovery services SHOULD apply abuse detection, duplicate
detection, rate limits, and provenance checks.</t>
  </dd>
  <dt>Stale or revoked results:</dt>
  <dd>
    <t>Discovery services SHOULD expose freshness data.  Clients MUST check
revocation and endpoint validity before invocation.</t>
  </dd>
  <dt>Federation trust:</dt>
  <dd>
    <t>Federated discovery can amplify false metadata.  Discovery services MUST
preserve origin and signature information and SHOULD apply local trust policy
before merging remote candidates into local results.</t>
  </dd>
  <dt>Filter bypass:</dt>
  <dd>
    <t>A discovery service that silently ignores unsupported hard filters can return
unsafe candidates.  Services MUST report unsupported hard filters in
<spanx style="verb">unsupported_filters</spanx> or fail the request.</t>
  </dd>
  <dt>Sensitive intent leakage:</dt>
  <dd>
    <t>Discovery requests can reveal user goals.  Discovery services MUST protect
requests in transit and SHOULD minimize retention.</t>
  </dd>
  <dt>Result authorization:</dt>
  <dd>
    <t>A discovery response is not an authorization decision.  The target agent
MUST still enforce its own access control policy.</t>
  </dd>
</dl>

</section>
<section anchor="privacy-considerations"><name>Privacy Considerations</name>

<t>Agent metadata may reveal private business capabilities.  Publishers SHOULD
avoid exposing internal system names, customer identifiers, private schemas, or
secrets in descriptions and examples.</t>

<t>Discovery services SHOULD evaluate these risks using the general privacy
guidance for Internet protocols in <xref target="RFC6973"/>.</t>

<t>Example tasks can reveal sensitive use cases.  Publishers SHOULD provide
representative but sanitized examples.</t>

<t>Discovery services SHOULD minimize query logging, support deletion or
retention policies, and avoid using private discovery requests to train models
without explicit authorization.</t>

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

<t>This document defines profile-local field names, string values, and error
codes only.  It does not create new registries, media types, URI schemes, HTTP
fields, or protocol parameter values.  It makes no IANA requests.</t>

</section>
<section anchor="implementation-status"><name>Implementation Status</name>

<t>This section is to be removed before publication as an RFC.</t>

<t>Prototype discovery systems can implement this profile using a tag inverted
index, a dense context index over descriptions, and an example-level semantic
index.  Small specialized classifiers or other fast routing models may be used
to predict tags, but such models are not required for interoperability.</t>

</section>
<section anchor="implementation-checklist"><name>Implementation Checklist</name>

<t>An implementation can be reviewed against the following checklist:</t>

<t><list style="symbols">
  <t>supported conformance level;</t>
  <t>accepted metadata serialization;</t>
  <t>required and optional fields validated;</t>
  <t>unknown-field behavior documented;</t>
  <t>freshness and expiration checks implemented;</t>
  <t>hard-filter failure behavior implemented;</t>
  <t>score components documented;</t>
  <t>redaction behavior documented;</t>
  <t>federation provenance preserved; and</t>
  <t>security controls for metadata injection and ranking abuse documented.</t>
</list></t>

</section>


  </middle>

  <back>


<references title='References' anchor="sec-combined-references">

    <references title='Normative References' anchor="sec-normative-references">



<reference anchor="RFC2119">
  <front>
    <title>Key words for use in RFCs to Indicate Requirement Levels</title>
    <author fullname="S. Bradner" initials="S." surname="Bradner"/>
    <date month="March" year="1997"/>
    <abstract>
      <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="2119"/>
  <seriesInfo name="DOI" value="10.17487/RFC2119"/>
</reference>
<reference anchor="RFC8174">
  <front>
    <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
    <author fullname="B. Leiba" initials="B." surname="Leiba"/>
    <date month="May" year="2017"/>
    <abstract>
      <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="8174"/>
  <seriesInfo name="DOI" value="10.17487/RFC8174"/>
</reference>
<reference anchor="RFC8259">
  <front>
    <title>The JavaScript Object Notation (JSON) Data Interchange Format</title>
    <author fullname="T. Bray" initials="T." role="editor" surname="Bray"/>
    <date month="December" year="2017"/>
    <abstract>
      <t>JavaScript Object Notation (JSON) is a lightweight, text-based, language-independent data interchange format. It was derived from the ECMAScript Programming Language Standard. JSON defines a small set of formatting rules for the portable representation of structured data.</t>
      <t>This document removes inconsistencies with other specifications of JSON, repairs specification errors, and offers experience-based interoperability guidance.</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="90"/>
  <seriesInfo name="RFC" value="8259"/>
  <seriesInfo name="DOI" value="10.17487/RFC8259"/>
</reference>



    </references>

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



<reference anchor="RFC9110">
  <front>
    <title>HTTP Semantics</title>
    <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
    <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
    <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
    <date month="June" year="2022"/>
    <abstract>
      <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document describes the overall architecture of HTTP, establishes common terminology, and defines aspects of the protocol that are shared by all versions. In this definition are core protocol elements, extensibility mechanisms, and the "http" and "https" Uniform Resource Identifier (URI) schemes.</t>
      <t>This document updates RFC 3864 and obsoletes RFCs 2818, 7231, 7232, 7233, 7235, 7538, 7615, 7694, and portions of 7230.</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="97"/>
  <seriesInfo name="RFC" value="9110"/>
  <seriesInfo name="DOI" value="10.17487/RFC9110"/>
</reference>
<reference anchor="RFC6973">
  <front>
    <title>Privacy Considerations for Internet Protocols</title>
    <author fullname="A. Cooper" initials="A." surname="Cooper"/>
    <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
    <author fullname="B. Aboba" initials="B." surname="Aboba"/>
    <author fullname="J. Peterson" initials="J." surname="Peterson"/>
    <author fullname="J. Morris" initials="J." surname="Morris"/>
    <author fullname="M. Hansen" initials="M." surname="Hansen"/>
    <author fullname="R. Smith" initials="R." surname="Smith"/>
    <date month="July" year="2013"/>
    <abstract>
      <t>This document offers guidance for developing privacy considerations for inclusion in protocol specifications. It aims to make designers, implementers, and users of Internet protocols aware of privacy-related design choices. It suggests that whether any individual RFC warrants a specific privacy considerations section will depend on the document's content.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6973"/>
  <seriesInfo name="DOI" value="10.17487/RFC6973"/>
</reference>



    </references>

</references>


<?line 883?>

<section anchor="acknowledgements"><name>Acknowledgements</name>

<t>The authors thank participants in discussions on agent discovery, metadata
profiles, and efficient retrieval for large agent ecosystems.</t>

</section>


  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA9V9aXfjyJXld/wKjOrDTLtJlZS12JXZ0zOqXFzpzq2lTLvH
3T4SSARJVIIAjUVLlcq/vd99S0QABJVVtvucHh87LYJAIJa33LdyPp8nXdGV
7nF69Np1WZ51WZpVefqvvWvu0ndNvSpKl67qJn2+WhXLwlVderbGv8+Kdllf
011HSbZYNO6ahhh9Y88fJXm9rLItvSVvslU3v+3nzoabZ3honttD8508ND85
SZZZ59Z1c/c4LapVnbT9Ylu0bVFX7+92Dhdzt3P0T9Ulxa55nHZN33aPTk6+
OXmUZI3LaEq/dZVrsvIouambj+um7nd08WV4ML3wgx4lbUdrv8zKunI8mEto
Q+jPRyePvp6ffDU/+U2yKx4nadrVS70hTdu66Rq3asOFu230Oeu7Td3goTn9
L6VJ0ze/O07/reePsi2/K6qyyKq1Xa2bdVYVP2QdTetx+vTs5dP3fN1ts6J8
nN723+sD/3eZFcvuOFseLyu+o6W5uO5x+qY+Tr96NEu/67O7Pqvoc9Nt0vM6
y/m2ZdHRrn7rChpozVcat+aXfZcVOY2MU+waGltur3Oa5enJyek3p3qhrzoc
zNNNUWXDxX17nL4qosV9S6/4c2HXPrG0sljw7f8dF3Z+nP5xEx/beV99zAp/
8RNL+2HTN/zAf5O1zYn58U+aLeipjJ5K3m+KNiVm7bdgjdytisq1aZZuY9nw
Z5YNu0g2eGZOPRun9QqkX1f1tu5bYpJVd0MsmTK3t8dp+n7j/Bi5a5dNsaBX
beobvSXd9YuyaDckBHbZoihp7WEafUs7kLrbXUnv7dIuW7czOpOuJ1afl8QX
PQ2iw+5wHO0scbfZdkcv67L2I91N7yYursuU6C2n0egSFlfvSFzgiayk/aqw
MYVM+GWXZmVbJ7Yrv7t4+8bPaBatvHG0Q20n48WX2x0N6NJ68b1b0gK7TdYl
rsoW2AF/W+ua62JJ43c1TWBLs3Ogj35Ji3N5SvvVuYbmO6M7t1nVFUsamQ7d
XWflLMErMb35GvOm+7dZt9xgs2422OkdzQIvoAtELrQy1/CKF/yd7kjbN6ts
6Y5BD9Eh1TSpqu5oyApikcii3bllQUdPl/ASNy9d1lQYfEu0V86I8hcux+4m
egF7tchaNyNmSZus+sgzKUnIF91mi12mLXdZPkvpWFkcZ01e/IDtoKnYbvMy
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
+TBp+O290JAmG/2y8HHyn98Kyfr3fwAA

-->

</rfc>
