<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.31 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-morrison-mcp-dns-discovery-02" category="info" version="3">
  <!-- xml2rfc v2v3 conversion 3.32.0 -->
  <front>
    <title abbrev="MCP DNS Discovery">Discovery of Model Context Protocol Servers via DNS TXT Records</title>
    <seriesInfo name="Internet-Draft" value="draft-morrison-mcp-dns-discovery-02"/>
    <author fullname="Blake Morrison">
      <organization>Alter Meridian Pty Ltd</organization>
      <address>
        <postal>
          <city>Cronulla, NSW</city>
          <country>Australia</country>
        </postal>
        <email>blake@truealter.com</email>
      </address>
    </author>
    <date year="2026" month="April"/>
    <abstract>
      <?line 67?>

<t>This document defines a DNS-based mechanism for the discovery of
Model Context Protocol (MCP) servers and the identity properties of
the organisations that operate them.  Two TXT resource records are
defined.  The <tt>_mcp.&lt;domain&gt;</tt> record (defined in v01 of this document)
advertises the presence, endpoint URL, transport protocol,
cryptographic identity, and capability profile of an MCP server
associated with a domain name.  The <tt>_org-alter.&lt;domain&gt;</tt> record
(introduced in this revision) advertises the canonical organisational
identity of the domain operator: legal entity name, registry
identifier, founding date, primary regions of operation, and any
regulatory frameworks under which the operator is bound to refuse
external automated access.  Together, the two records provide both
service discovery and identity bootstrap from a single canonical
source -- the domain's own DNS zone.  The mechanism complements
HTTPS-based discovery (<tt>.well-known/mcp/server-card.json</tt>) by
providing a lightweight, resolver-cached bootstrap that requires no
HTTPS round-trip.  The design follows the precedent established by
DKIM <xref target="RFC6376"/>, SPF <xref target="RFC7208"/>, DMARC <xref target="RFC7489"/>, and MTA-STS <xref target="RFC8461"/>,
all of which use DNS TXT records at underscore-prefixed labels to
advertise domain-scoped policy and service metadata.</t>
    </abstract>
  </front>
  <middle>
    <?line 90?>

<section anchor="status-of-this-memo">
      <name>Status of This Memo</name>
      <t>This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.</t>
      <t>Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF).  Note that other groups may also distribute
working documents as Internet-Drafts.  The list of current
Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.</t>
      <t>Internet-Drafts are draft documents valid for a maximum of six
months and may be updated, replaced, or obsoleted by other documents
at any time.  It is inappropriate to use Internet-Drafts as
reference material or to cite them other than as "work in progress."</t>
      <t>This Internet-Draft will expire on October 7, 2026.</t>
    </section>
    <section anchor="copyright-notice">
      <name>Copyright Notice</name>
      <t>Copyright (c) 2026 IETF Trust and the persons identified as the
document authors.  All rights reserved.</t>
      <t>This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of
publication of this document.</t>
    </section>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>Model Context Protocol (MCP) <xref target="MCP"/> is an open protocol for
structured interaction between AI agents and tool-providing servers.
A complete agent-to-organisation interaction has two distinct
discovery requirements:</t>
      <ol spacing="normal" type="1"><li>
          <t><strong>Service discovery.</strong>  Where is the MCP server endpoint?  What
transport does it speak?  What cryptographic key authenticates
it?  This is the question v01 of this document answers via the
<tt>_mcp.&lt;domain&gt;</tt> record.</t>
        </li>
        <li>
          <t><strong>Identity bootstrap.</strong>  Who is the organisation operating the
server?  What is its legal entity?  Where is it registered?  Under
what regulatory frameworks does it operate, and which automated
access pathways must it refuse to participate in?  This is the
question v02 introduces via the new <tt>_org-alter.&lt;domain&gt;</tt> record.</t>
        </li>
      </ol>
      <t>The two questions are distinct.  An MCP client may need to discover
an endpoint without caring about the operator's identity.  An
onboarding wizard installing an org-alter instance may need to read
the operator's identity without caring (yet) about the MCP endpoint.
Conflating both into a single TXT record would force every consumer
to parse fields it does not need and would crowd the 255-byte
character-string limit.  Splitting them across two underscore-prefixed
labels mirrors the pattern established by DKIM
(<tt>_domainkey._domain</tt>) and DMARC (<tt>_dmarc._domain</tt>): each record
serves a single semantic purpose.</t>
      <t>This revision is fully backward-compatible with v01.  Implementations
that consume only the <tt>_mcp.&lt;domain&gt;</tt> record continue to work
unchanged.  Implementations that wish to bootstrap an org-alter
identity may additionally query <tt>_org-alter.&lt;domain&gt;</tt>.</t>
      <t>The org-identity layer is grounded in the identity field framework
of <xref target="MORRISON-IFT"/>.  An organisation's identity is not a single
boolean fact but a continuous field maintained across the
social-spatial manifold.  A DNS record provides a discrete
checkpoint into that field.  The <tt>_org-alter.&lt;domain&gt;</tt> record is the
operator's own canonical declaration of their identity at a point
in time, signed by their control of the DNS zone, and consumable by
any bootstrap process -- including, critically, the operator's own
org-alter instance reading its own record on first install.</t>
      <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="RFC8174">RFC2119</xref> when, and only when, they appear in
all capitals, as shown here.</t>
      </section>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>(Terminology from v01 is retained.  Additional terms introduced in
this revision are defined below.)</t>
      <dl>
        <dt>Org-Identity Record</dt>
        <dd>
          <t>A DNS TXT resource record published at the <tt>_org-alter</tt> label
under a Policy Domain, conforming to the syntax defined in
Section 4 of this document.</t>
        </dd>
        <dt>Identity Bootstrap</dt>
        <dd>
          <t>The procedure by which an org-alter implementation reads its own
Org-Identity Record on first install to populate its canonical
identity state without requiring manual operator entry.</t>
        </dd>
        <dt>Canonical Entity Identifier</dt>
        <dd>
          <t>A globally-unique, jurisdiction-issued identifier that names the
legal entity behind the operator.  Examples include the Australian
Business Number (ABN), the Companies House number, the EIN, the
CRO number, or the LEI.</t>
        </dd>
        <dt>Regulatory Refusal Marker</dt>
        <dd>
          <t>A declaration in the Org-Identity Record that the operator is bound
by a named regulatory framework (e.g. DISP, ITAR, HIPAA) and that
any automated access pathway crossing into the regulated boundary
MUST be refused.  This is a structural promise from the operator
to the world: do not attempt to integrate, even with credentials.</t>
        </dd>
      </dl>
    </section>
    <section anchor="record-format-mcpdomain-service-discovery">
      <name>Record Format -- <tt>_mcp.&lt;domain&gt;</tt> (Service Discovery)</name>
      <t>Section 3 of v01 of this document defines the <tt>_mcp.&lt;domain&gt;</tt> record,
its ABNF grammar, field definitions (<tt>v</tt>, <tt>url</tt>, <tt>proto</tt>, <tt>pk</tt>,
<tt>epoch</tt>, <tt>cap</tt>, <tt>attest</tt>, <tt>scope</tt>, <tt>priority</tt>, <tt>ttl</tt>, <tt>ext</tt>),
forward-compatibility rules, and multi-string concatenation
behaviour.  These definitions are unchanged in this revision and are
incorporated here by reference.  Implementations MUST treat any
existing <tt>_mcp.&lt;domain&gt;</tt> record as conformant to the v01
specification.</t>
    </section>
    <section anchor="orgalter-record">
      <name>Record Format -- <tt>_org-alter.&lt;domain&gt;</tt> (Identity Bootstrap)</name>
      <t>This section defines the new Org-Identity Record introduced in v02.</t>
      <section anchor="dns-location">
        <name>DNS Location</name>
        <t>The Org-Identity Record is a DNS TXT resource record <xref target="RFC1035"/>
published at the label <tt>_org-alter</tt> prepended to the Policy Domain:</t>
        <t><tt>
_org-alter.&lt;policy-domain&gt;. IN TXT "&lt;record-value&gt;"
</tt></t>
        <t>The underscore prefix conforms to the conventions established in
<xref target="RFC8552"/> for globally scoped, underscore-prefixed DNS node names.</t>
        <t>A domain MAY publish a <tt>_mcp.&lt;domain&gt;</tt> record without an
<tt>_org-alter.&lt;domain&gt;</tt> record (service-only deployment), or an
<tt>_org-alter.&lt;domain&gt;</tt> record without a <tt>_mcp.&lt;domain&gt;</tt> record
(identity-only deployment), or both (full deployment).  The
recommended pattern for any operator running an org-alter instance
is to publish both.</t>
        <t>Multiple TXT resource records MAY be published at the same DNS name
(e.g., for staged identity rotation).  Clients MUST evaluate all
returned records and select the one with the highest <tt>epoch</tt> field.</t>
      </section>
      <section anchor="abnf-grammar">
        <name>ABNF Grammar</name>
        <t>The record value is a semicolon-delimited sequence of key-value
pairs.  The following ABNF [RFC5234] defines the syntax:</t>
        <t>```
orgalter-record = version *( ";" SP field )
version       = "v=alter1"
field         = org-field / entity-field / entity-type-field /
                founded-field / regions-field / regulated-field /
                bootstrap-field / mcp-policy-field /
                epoch-field / pk-field / attest-field /
                ext-field / unknown-field</t>
        <t>org-field        = "org=" 1<em>VCHAR
entity-field     = "entity=" registry ":" 1</em>VCHAR
entity-type-field = "entity-type=" 1<em>VCHAR
founded-field    = "founded=" date-fullyear
regions-field    = "regions=" region-csv
regulated-field  = "regulated=" framework-csv
bootstrap-field  = "bootstrap=" https-uri
mcp-policy-field = "mcp-policy=" policy-token
epoch-field      = "epoch=" 1</em>DIGIT
pk-field         = "pk=" algo ":" base64url
attest-field     = "attest=" attest-csv
ext-field        = "ext=" https-uri
unknown-field    = token "=" *VCHAR</t>
        <t>registry      = "abn" / "acn" / "ein" / "ch" / "cro" / "lei" / token
region-csv    = region-token <em>( "," region-token )
region-token  = 2ALPHA   ; ISO 3166-1 alpha-2
framework-csv = framework-token *( "," framework-token )
framework-token = "disp" / "itar" / "ear" / "hipaa" / "gdpr" /
                  "soc2" / "iso27001" / "iso42001" / "essential8" /
                  "aprs" / token
policy-token  = "open" / "refuse-automated" / "refuse-tenant" /
                "refuse-all" / token
date-fullyear = 4DIGIT [ "-" 2DIGIT [ "-" 2DIGIT ] ]
algo          = "ed25519"
base64url     = 1</em>( ALPHA / DIGIT / "-" / "<em>" )
https-uri     = "https://" *VCHAR
token         = 1*( ALPHA / DIGIT / "-" / "</em>" )
```</t>
      </section>
      <section anchor="field-definitions">
        <name>Field Definitions</name>
        <section anchor="v-required">
          <name>v (REQUIRED)</name>
          <t>Protocol version identifier.  MUST be the literal string <tt>alter1</tt>.
MUST appear as the first field in the record.  Clients MUST reject
any record whose <tt>v</tt> field is absent, is not the first field, or
contains a value other than <tt>alter1</tt>.</t>
          <t>The version namespace is independent of the <tt>_mcp</tt> record's
<tt>v=mcp1</tt> namespace.  This allows the two record types to evolve
independently.</t>
        </section>
        <section anchor="org-required">
          <name>org (REQUIRED)</name>
          <t>The canonical legal name of the organisation operating the domain.
MUST be the registered legal entity name as it appears in the
operator's primary corporate registry, not a trading name or brand.
For trading names, see the optional <tt>entity-type</tt> field.</t>
          <t>Examples:</t>
          <t><tt>
org=Alter Meridian Pty Ltd
org=Red Group Pty Ltd
org=International Business Machines Corporation
</tt></t>
        </section>
        <section anchor="entity-recommended">
          <name>entity (RECOMMENDED)</name>
          <t>A globally-disambiguating canonical entity identifier, prefixed by
its registry namespace.  Defined registries:</t>
          <ul spacing="normal">
            <li>
              <t><tt>abn:</tt> -- Australian Business Number (11 digits, no spaces).</t>
            </li>
            <li>
              <t><tt>acn:</tt> -- Australian Company Number (9 digits, no spaces).</t>
            </li>
            <li>
              <t><tt>ein:</tt> -- US Employer Identification Number (<tt>NN-NNNNNNN</tt>).</t>
            </li>
            <li>
              <t><tt>ch:</tt>  -- UK Companies House number (8 alphanumeric).</t>
            </li>
            <li>
              <t><tt>cro:</tt> -- Irish Companies Registration Office number.</t>
            </li>
            <li>
              <t><tt>lei:</tt> -- Legal Entity Identifier (20 alphanumeric per ISO 17442).</t>
            </li>
          </ul>
          <t>Additional registries MAY be defined; clients MUST treat unknown
registry namespaces as opaque identifiers.</t>
          <t>Example:</t>
          <t><tt>
entity=abn:54696662049
</tt></t>
          <t>The <tt>entity</tt> field is the primary anti-impersonation defence for the
identity layer: a domain claiming to be <tt>Alter Meridian Pty Ltd</tt>
without an ABN that resolves to that name in ABR Lookup is
detectable as a mismatch by any verifier with access to the public
registry.</t>
        </section>
        <section anchor="entity-type-optional">
          <name>entity-type (OPTIONAL)</name>
          <t>A short human-readable label for the entity's type, drawn from its
jurisdiction's vocabulary.  Examples: <tt>Pty Ltd</tt>, <tt>LLC</tt>, <tt>GmbH</tt>,
<tt>SAS</tt>, <tt>non-profit</tt>.  This field is advisory and is intended for
display to humans; it is not a structured taxonomy.</t>
        </section>
        <section anchor="founded-optional">
          <name>founded (OPTIONAL)</name>
          <t>The date the legal entity was founded or registered, as
<tt>YYYY</tt> or <tt>YYYY-MM</tt> or <tt>YYYY-MM-DD</tt> per ISO 8601.  This field is
advisory and is used by onboarding wizards and identity verifiers
to display "Founded N years ago" or to detect implausibly young
entities making strong claims.</t>
        </section>
        <section anchor="regions-optional">
          <name>regions (OPTIONAL)</name>
          <t>A comma-separated list of ISO 3166-1 alpha-2 country codes
indicating the operator's primary regions of operation.  This field
is advisory.  It is used by onboarding wizards to set sane defaults
for jurisdiction-specific behaviour (e.g., currency, locale, public
registry preference).</t>
          <t>Example:</t>
          <t><tt>
regions=AU,NZ,SG
</tt></t>
        </section>
        <section anchor="regulated-optional-but-structurally-significant">
          <name>regulated (OPTIONAL but STRUCTURALLY SIGNIFICANT)</name>
          <t>A comma-separated list of regulatory framework tokens under which the
operator is bound.  Defined values (extensible):</t>
          <ul spacing="normal">
            <li>
              <t><tt>disp</tt> -- Australian Defence Industry Security Program.</t>
            </li>
            <li>
              <t><tt>itar</tt> -- US International Traffic in Arms Regulations.</t>
            </li>
            <li>
              <t><tt>ear</tt> -- US Export Administration Regulations.</t>
            </li>
            <li>
              <t><tt>hipaa</tt> -- US Health Insurance Portability and Accountability Act.</t>
            </li>
            <li>
              <t><tt>gdpr</tt> -- EU General Data Protection Regulation.</t>
            </li>
            <li>
              <t><tt>soc2</tt> -- AICPA SOC 2 Type II.</t>
            </li>
            <li>
              <t><tt>iso27001</tt> -- ISO/IEC 27001 information security management.</t>
            </li>
            <li>
              <t><tt>iso42001</tt> -- ISO/IEC 42001 AI management systems.</t>
            </li>
            <li>
              <t><tt>essential8</tt> -- ASD Essential Eight (ML2 or higher).</t>
            </li>
            <li>
              <t><tt>aprs</tt> -- Australian Privacy Principles / Privacy Act.</t>
            </li>
          </ul>
          <t>The presence of any token in this field is a structural promise:
the operator declares that they are bound by the named framework and
that automated access pathways crossing the regulated boundary MUST
be refused.  Onboarding wizards reading this field MUST refuse to
attempt L5/L6 authenticated access to data stores covered by the
declared framework, regardless of whether credentials are available.</t>
          <t>This converts the DNS record into an out-of-band consent boundary:
a remote agent's tooling becomes structurally aware that integration
is forbidden before it ever attempts a connection.  An agent that
ignores this declaration and attempts integration anyway commits a
detectable, attributable violation.</t>
          <t>Forward compatibility: unknown framework tokens MUST be treated
conservatively (assume the strictest defensible refusal) rather than
ignored.</t>
        </section>
        <section anchor="bootstrap-optional">
          <name>bootstrap (OPTIONAL)</name>
          <t>An HTTPS URL pointing to a JSON document containing additional
identity bootstrap metadata: a directory of public roster members
(if the org chooses to publish one), an organisational logo URL, a
canonical public website URL, an <tt>attest</tt> profile beyond what fits
in DNS, and any operator-defined extensions.</t>
          <t>The bootstrap document MUST be served over HTTPS with a valid TLS
certificate for the Policy Domain.  The document format is
operator-defined; recommended schema is published as
<tt>https://truealter.com/.well-known/org-alter-bootstrap.schema.json</tt>
as a non-normative reference.</t>
        </section>
        <section anchor="mcp-policy-optional">
          <name>mcp-policy (OPTIONAL)</name>
          <t>A single token declaring how the operator's MCP endpoint relates to
external automated access:</t>
          <ul spacing="normal">
            <li>
              <t><tt>open</tt> -- The MCP endpoint accepts queries from any agent with
appropriate authentication.</t>
            </li>
            <li>
              <t><tt>refuse-automated</tt> -- The MCP endpoint exists for human-mediated
access only.  Automated agents SHOULD NOT initiate sessions.</t>
            </li>
            <li>
              <t><tt>refuse-tenant</tt> -- The MCP endpoint exists, but the operator runs
one or more tenants (e.g., an M365 tenant) into which automated
access is forbidden.  This is the typical declaration for an
org-alter instance run by an operator who has DISP-accredited or
ITAR-bound systems alongside their public meta-layer.</t>
            </li>
            <li>
              <t><tt>refuse-all</tt> -- The MCP endpoint exists for the operator's own
internal use only.  External agents MUST NOT attempt connection.</t>
            </li>
          </ul>
          <t>Default value, if absent: <tt>open</tt>.</t>
          <t>The <tt>mcp-policy</tt> field complements the <tt>regulated</tt> field.
<tt>regulated=disp; mcp-policy=refuse-tenant</tt> is the canonical
declaration for a defence contractor running an org-alter at the
unclassified meta-layer alongside a regulated tenant they will not
allow automated agents to enter.</t>
        </section>
        <section anchor="epoch-optional">
          <name>epoch (OPTIONAL)</name>
          <t>A monotonic non-negative integer that increments on every identity
rotation event (e.g., legal entity restructure, change of control,
move to a new jurisdiction).  Default value: <tt>0</tt>.  Semantics mirror
the <tt>epoch</tt> field of the <tt>_mcp</tt> record defined in v01.</t>
        </section>
        <section anchor="pk-optional">
          <name>pk (OPTIONAL)</name>
          <t>Ed25519 public key for endpoint verification, encoded identically to
the v01 <tt>_mcp</tt> record's <tt>pk</tt> field.  When present, the same key
provides cryptographic binding for both endpoint discovery and
identity bootstrap.</t>
        </section>
        <section anchor="attest-optional">
          <name>attest (OPTIONAL)</name>
          <t>A comma-separated list of attestation types the operator declares it
is authorised to issue, identical in semantics to the v01 <tt>_mcp</tt>
record <tt>attest</tt> field.  Where both records publish an <tt>attest</tt> field,
the values MUST be consistent.  An onboarding wizard SHOULD use the
union of the two.</t>
        </section>
        <section anchor="ext-optional">
          <name>ext (OPTIONAL)</name>
          <t>An HTTPS URL pointing to a protocol-extension document, identical in
semantics to the v01 <tt>_mcp</tt> record <tt>ext</tt> field.  This field is
distinct from <tt>bootstrap</tt>: <tt>ext</tt> is for protocol-level extensions
to the discovery format itself; <tt>bootstrap</tt> is for operator-level
identity metadata.</t>
        </section>
      </section>
      <section anchor="forward-compatibility">
        <name>Forward Compatibility</name>
        <t>Implementations MUST ignore unknown fields.  This rule, identical to
the v01 <tt>_mcp</tt> record specification, ensures that future
extensions to the <tt>_org-alter</tt> record format do not break existing
implementations.</t>
      </section>
    </section>
    <section anchor="bootstrap-procedure">
      <name>Identity Bootstrap Procedure</name>
      <t>This section defines the procedure by which an org-alter
implementation reads its own DNS records on first install to
populate its canonical identity state.</t>
      <section anchor="inputs">
        <name>Inputs</name>
        <t>The procedure takes a single input: the operator's primary domain
name (the Policy Domain under which the operator publishes records).</t>
      </section>
      <section anchor="algorithm">
        <name>Algorithm</name>
        <ol spacing="normal" type="1"><li>
            <t><strong>Query <tt>_org-alter.&lt;domain&gt;</tt> TXT.</strong>  Issue a DNS query for the
Org-Identity Record.</t>
          </li>
          <li>
            <t><strong>If found, parse and load.</strong>  Extract <tt>org</tt>, <tt>entity</tt>,
<tt>entity-type</tt>, <tt>founded</tt>, <tt>regions</tt>, <tt>regulated</tt>, <tt>mcp-policy</tt>
into the org-alter's identity state.  These become the canonical
identity declaration the org-alter will use in all subsequent
self-reports, brief generation, and external attestation.</t>
          </li>
          <li>
            <t><strong>If <tt>bootstrap=</tt> is present, fetch the bootstrap document</strong> over
HTTPS.  Validate the document's TLS certificate against the
Policy Domain.  Merge the document's roster, logo, and extension
fields into the identity state.  Reject the bootstrap document if
its TLS certificate is invalid or if its content does not parse.</t>
          </li>
          <li>
            <t><strong>Honour <tt>regulated=</tt> and <tt>mcp-policy=</tt></strong> as immutable structural
constraints on the org-alter instance:  </t>
            <t>
a. If <tt>regulated</tt> includes any framework token, set the
   org-alter's <tt>boundary_policy</tt> to <tt>refuse</tt> and disable all
   L5/L6 ingester layers.  </t>
            <t>
b. If <tt>mcp-policy=refuse-tenant</tt>, the org-alter MUST refuse to
   install any ingester that requires authenticated access to a
   tenant covered by the declared framework, even if credentials
   are subsequently provided.  </t>
            <t>
c. The wizard SHOULD display these constraints to the operator
   for confirmation but MUST NOT allow the operator to override
   them silently.  An operator who wishes to relax a constraint
   MUST update the DNS record first, then re-run bootstrap.</t>
          </li>
          <li>
            <t><strong>Cross-check <tt>_mcp.&lt;domain&gt;</tt>.</strong>  Query the v01 service-discovery
record.  If both records exist and both publish <tt>pk</tt> fields, the
values MUST match.  A mismatch indicates either a configuration
error or a key compromise; the wizard MUST refuse to bootstrap
under such conditions and MUST surface the discrepancy to the
operator.</t>
          </li>
          <li>
            <t><strong>Verify against public registries.</strong>  If the <tt>entity</tt> field
declares a known registry namespace (e.g., <tt>abn:</tt>), the wizard
SHOULD query the corresponding free public registry (e.g., the
ABR Lookup MatchingNames API) and verify that the declared entity
identifier resolves to the declared <tt>org</tt> name.  A mismatch is
not necessarily fatal -- names change, registries lag -- but the
wizard MUST surface the discrepancy and require operator
confirmation before proceeding.</t>
          </li>
          <li>
            <t><strong>Persist canonical state.</strong>  Write the resolved identity into
the org-alter's <tt>state/identity.json</tt>, source-citing each field
to its DNS or HTTPS origin.</t>
          </li>
        </ol>
        <t>The bootstrap procedure is designed to make first-run org-alter
installation a single command:</t>
        <t><tt>
mcp-org-alter onboard --domain redgroup.com.au
</tt></t>
        <t>with the wizard reading every other field from DNS and the public
record before asking the operator a single question.</t>
      </section>
      <section anchor="first-run-cold-start">
        <name>First-Run Cold Start</name>
        <t>For an operator who has not yet published a <tt>_org-alter</tt> record at
the time of installation, the wizard MUST fall back to interactive
seeding: prompt for <tt>org</tt>, optionally prompt for <tt>entity</tt>, and ask
whether the operator's environment is regulated.  After interactive
seeding, the wizard SHOULD generate a draft DNS record value for the
operator to publish, completing the bootstrap loop.</t>
      </section>
    </section>
    <section anchor="discovery-procedure-mcpdomain">
      <name>Discovery Procedure -- <tt>_mcp.&lt;domain&gt;</tt></name>
      <t>The discovery procedure defined in Section 4 of v01 is unchanged in
this revision.  Clients querying <tt>_mcp.&lt;domain&gt;</tt> follow the v01
algorithm exactly.</t>
    </section>
    <section anchor="caching">
      <name>Caching</name>
      <t>Caching of <tt>_mcp.&lt;domain&gt;</tt> records follows v01.</t>
      <t><tt>_org-alter.&lt;domain&gt;</tt> records SHOULD be cached for the duration of
the DNS TTL.  Onboarding wizards typically read the record once at
install time and persist the resolved state to local storage; the
DNS record need not be re-read on every subsequent invocation.
Wizards MAY re-read the record on operator request, on <tt>epoch</tt>
change detection (via periodic background poll), or on identity
verification failure.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>(Security considerations from v01 are retained.  Additional
considerations introduced by the org-identity layer are below.)</t>
      <section anchor="identity-impersonation">
        <name>Identity Impersonation</name>
        <t>A domain operator can publish any <tt>org</tt> and <tt>entity</tt> value they
wish.  Verification of the declared identity against a public
registry (Section 6 step 6) is the structural defence against
impersonation: a domain that claims to be <tt>Red Group Pty Ltd</tt> with
<tt>entity=abn:00000000000</tt> (a non-existent ABN) will be detected as
fraudulent the first time any verifier cross-checks the registry.</t>
        <t>Operators with a legitimate identity SHOULD publish their canonical
<tt>entity</tt> field to opt into this verification path.  Operators
without a legitimate identity (or who publish a wrong one) become
detectably non-conformant.</t>
      </section>
      <section anchor="regulatory-refusal-as-a-detectable-promise">
        <name>Regulatory Refusal as a Detectable Promise</name>
        <t>The <tt>regulated</tt> and <tt>mcp-policy</tt> fields are not enforcement
mechanisms in themselves -- they are structural promises by the
operator to the world.  An attacker who controls a domain's DNS can
publish a <tt>regulated</tt> field they have no intention of honouring, or
omit it when they should publish it.  These misrepresentations are
detectable in two directions:</t>
        <ul spacing="normal">
          <li>
            <t>An operator who publishes <tt>regulated=disp</tt> and then permits
automated access to a DISP-accredited tenant is in violation of
their own published declaration, which is a public, archivable,
attributable record.  This creates a stronger compliance
artefact than any internal policy document.</t>
          </li>
          <li>
            <t>An operator who omits <tt>regulated=disp</tt> despite being a DISP
member creates a discoverable inconsistency: their public
Defence Industry Portal listing is one source, their DNS record
is another, and any verifier can detect the discrepancy.</t>
          </li>
        </ul>
        <t>The structural value of these fields is therefore in the
combination of public commitment and public verifiability, not in
DNS-layer enforcement.</t>
      </section>
      <section anchor="entity-identifier-privacy">
        <name>Entity Identifier Privacy</name>
        <t>Publishing a registry-issued entity identifier (ABN, EIN, Companies
House number) makes the operator's legal entity discoverable.  In
most jurisdictions, this information is already public via the
respective registries.  The DNS record reduces the friction of
discovery from "search a registry" to "dig a TXT record", but does
not disclose anything that was not already obtainable.</t>
        <t>Operators with legitimate privacy concerns about linking their
domain to their legal entity SHOULD NOT publish the <tt>entity</tt> field.
A wizard reading an <tt>_org-alter</tt> record without an <tt>entity</tt> field
MUST treat the org name as a self-declaration without registry
verification, and MUST display this absence to the operator during
bootstrap.</t>
      </section>
      <section anchor="bootstrap-document-risks">
        <name>Bootstrap Document Risks</name>
        <t>The HTTPS bootstrap document (<tt>bootstrap=</tt> field) extends the
identity surface beyond the DNS record's 255-byte limit.  The
document is fetched over HTTPS with TLS validation, but its content
is operator-controlled.  Wizards parsing the bootstrap document MUST
apply the same forward-compatibility rules (ignore unknown fields)
and MUST treat the document as untrusted input until cross-validated
against DNS and registry sources.</t>
        <t>Wizards SHOULD NOT execute any code from a bootstrap document and
MUST NOT load JavaScript or any active content.  The document is a
structured data file, not a runtime payload.</t>
      </section>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <t>(Privacy considerations from v01 are retained.  Additional
considerations introduced by the org-identity layer are below.)</t>
      <section anchor="organisational-privacy-vs-individual-privacy">
        <name>Organisational Privacy vs Individual Privacy</name>
        <t>The <tt>_org-alter</tt> record is a domain-level declaration about an
organisation, not an individual.  No per-user information appears in
the record.  The fields describe the legal entity, its registry
identifier, its founding date, its operational regions, and its
regulatory framework -- all of which are properties of the
organisation.</t>
        <t>Individual identity, where the org-alter chooses to expose it, is
mediated by the MCP server behind the endpoint, subject to
application-level consent and access control mechanisms outside the
scope of this document.</t>
      </section>
      <section anchor="dns-query-metadata">
        <name>DNS Query Metadata</name>
        <t>A client resolving <tt>_org-alter.example.com</tt> reveals to its resolver
that it intends to bootstrap an org-alter identity for
<tt>example.com</tt>.  The privacy considerations of v01 (DoH/DoT
preference) apply identically.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="underscored-dns-node-name-registration">
        <name>Underscored DNS Node Name Registration</name>
        <t>This document requests IANA to register the following entries in
the "Underscored and Globally Scoped DNS Node Names" registry
established by <xref target="RFC8552"/>:</t>
        <t><tt>
+--------+--------------+-----------------------------+
| RR Type| _NODE NAME   | Reference                   |
+--------+--------------+-----------------------------+
| TXT    | _mcp         | [this document], v01 Sec.3     |
| TXT    | _org-alter   | [this document], v02 Sec.4     |
+--------+--------------+-----------------------------+
</tt></t>
        <t>The <tt>_org-alter</tt> label is used to publish Org-Identity Records as
defined in Section 4 of this document.</t>
      </section>
      <section anchor="org-alter-version-registry">
        <name>Org-Alter Version Registry</name>
        <t>This document defines the version tag <tt>v=alter1</tt> for the
<tt>_org-alter</tt> record.  Future versions (e.g., <tt>v=alter2</tt>) SHOULD be
coordinated with the org-alter implementation community.  Until a
formal IETF working group is chartered for org-identity discovery,
this document recommends that the version registry be maintained by
the authors and that all extensions be documented in successor
revisions of this draft.</t>
      </section>
      <section anchor="registry-namespace-registry">
        <name>Registry Namespace Registry</name>
        <t>This document defines an initial set of <tt>entity</tt> field registry
namespaces (<tt>abn</tt>, <tt>acn</tt>, <tt>ein</tt>, <tt>ch</tt>, <tt>cro</tt>, <tt>lei</tt>).  Future
registries MAY be added by successor documents.  Implementations
MUST treat unknown registry namespaces as opaque identifiers and
MUST NOT reject records solely on the basis of an unknown namespace.</t>
      </section>
      <section anchor="framework-token-registry">
        <name>Framework Token Registry</name>
        <t>This document defines an initial set of <tt>regulated</tt> framework tokens
(<tt>disp</tt>, <tt>itar</tt>, <tt>ear</tt>, <tt>hipaa</tt>, <tt>gdpr</tt>, <tt>soc2</tt>, <tt>iso27001</tt>,
<tt>iso42001</tt>, <tt>essential8</tt>, <tt>aprs</tt>).  Future tokens MAY be added by
successor documents.  Implementations MUST treat unknown tokens
conservatively (assume strictest defensible refusal) rather than
ignoring them.</t>
      </section>
    </section>
    <section anchor="examples">
      <name>Examples</name>
      <t>This section provides non-normative examples of Org-Identity Records
for common deployment scenarios.</t>
      <section anchor="minimal-record-public-operator">
        <name>Minimal Record (Public Operator)</name>
        <t>The simplest valid Org-Identity Record contains only the version,
canonical org name, and entity identifier:</t>
        <t><tt>
_org-alter.alter.com.au. IN TXT "v=alter1; org=Alter Meridian Pty Ltd; entity=abn:54696662049"
</tt></t>
        <t>A wizard reading this record knows the legal entity behind the
domain, can verify the ABN against ABR Lookup, and treats the
operator as unregulated (no <tt>regulated</tt> field present).</t>
      </section>
      <section anchor="full-public-record">
        <name>Full Public Record</name>
        <t>A complete record including founding date, regions, and key:</t>
        <t><tt>
_org-alter.alter.com.au. IN TXT (
  "v=alter1; "
  "org=Alter Meridian Pty Ltd; "
  "entity=abn:54696662049; "
  "entity-type=Pty Ltd; "
  "founded=2026-03-29; "
  "regions=AU,NZ; "
  "epoch=1; "
  "pk=ed25519:dGhpcyBpcyBhIHNhbXBsZSBrZXk; "
  "attest=employ,contract,member; "
  "bootstrap=https://alter.com.au/.well-known/org-alter-bootstrap.json"
)
</tt></t>
        <t>This is the canonical declaration for ALTER itself.</t>
      </section>
      <section anchor="regulated-operator-disp-refusal">
        <name>Regulated Operator (DISP Refusal)</name>
        <t>A defence contractor running an org-alter at the unclassified
meta-layer alongside a DISP-accredited M365 tenant:</t>
        <t><tt>
_org-alter.redgroup.com.au. IN TXT (
  "v=alter1; "
  "org=Red Group Pty Ltd; "
  "entity=abn:XXXXXXXXXXX; "
  "entity-type=Pty Ltd; "
  "regions=AU; "
  "regulated=disp,essential8; "
  "mcp-policy=refuse-tenant; "
  "bootstrap=https://redgroup.com.au/.well-known/org-alter-bootstrap.json"
)
</tt></t>
        <t>Any onboarding wizard, external agent, or compliance verifier
reading this record knows three things instantly: (1) Red Group is
an Australian Pty Ltd entity registered in the ABR; (2) it operates
under the DISP framework and Essential Eight Maturity Level 2; and
(3) any automated access into the operator's regulated tenant is
declared refused at the DNS layer.  An agent that receives this
record and proceeds to attempt tenant integration commits an
attributable, publicly recorded violation.</t>
      </section>
      <section anchor="multi-region-operator-with-multiple-regulators">
        <name>Multi-Region Operator with Multiple Regulators</name>
        <t>A globally regulated operator:</t>
        <t><tt>
_org-alter.bigcorp.example. IN TXT (
  "v=alter1; "
  "org=BigCorp Inc; "
  "entity=ein:12-3456789; "
  "regions=US,CA,GB,DE,SG,AU; "
  "regulated=hipaa,gdpr,soc2,iso27001; "
  "mcp-policy=refuse-tenant"
)
</tt></t>
        <t>The wizard treats this operator as bound by the strictest applicable
framework and refuses any L5/L6 ingester layer touching healthcare,
EU personal, or audited security systems.</t>
      </section>
    </section>
    <section anchor="interoperability-with-v01">
      <name>Interoperability with v01</name>
      <t>A domain that publishes only a v01 <tt>_mcp.&lt;domain&gt;</tt> record continues
to work with all v01 and v02 clients.  v02 clients additionally
attempt to query <tt>_org-alter.&lt;domain&gt;</tt> and gracefully handle its
absence.</t>
      <t>A domain that publishes both records benefits from:</t>
      <ul spacing="normal">
        <li>
          <t>Service discovery via <tt>_mcp.&lt;domain&gt;</tt> (v01).</t>
        </li>
        <li>
          <t>Identity bootstrap via <tt>_org-alter.&lt;domain&gt;</tt> (v02).</t>
        </li>
        <li>
          <t>Cryptographic key consistency: if both records publish a <tt>pk</tt>
field, the values MUST match, and a wizard reading both MUST
verify the match before proceeding.</t>
        </li>
      </ul>
      <t>A domain that publishes only <tt>_org-alter.&lt;domain&gt;</tt> (identity-only,
no MCP server) is permitted.  This is the appropriate configuration
for an organisation that wishes to publish a verifiable identity
declaration without operating an MCP server endpoint.</t>
    </section>
    <section anchor="implementation-status">
      <name>Implementation Status</name>
      <t>This section records the status of known implementations at the
time of publication, per [RFC7942].</t>
      <t>ALTER (https://truealter.com) maintains a reference implementation
of both records:</t>
      <ul spacing="normal">
        <li>
          <t><tt>_mcp.truealter.com</tt> exercising the v01 field set including <tt>pk</tt>,
<tt>epoch</tt>, <tt>attest</tt>, and <tt>ext</tt>.</t>
        </li>
        <li>
          <t><tt>_org-alter.truealter.com</tt> exercising the v02 field set including
<tt>entity</tt>, <tt>regulated</tt>, <tt>mcp-policy</tt>, and <tt>bootstrap</tt>.</t>
        </li>
        <li>
          <t>A standalone L0 discovery library (<tt>orgalter_discover</tt>) that
resolves both records, validates against the Australian Business
Register, and produces a structured discovery report ready for
org-alter onboarding.</t>
        </li>
        <li>
          <t>An onboarding wizard tool (<tt>mcp-org-alter onboard</tt>) that
bootstraps a new org-alter instance from the published records
with no manual data entry beyond the domain name.</t>
        </li>
      </ul>
      <t>The reference implementation targets MCP specification version
2025-11 and uses <tt>streamable-http</tt> as the default transport.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC1035" target="https://www.rfc-editor.org/info/rfc1035" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.1035.xml">
          <front>
            <title>Domain names - implementation and specification</title>
            <author fullname="P. Mockapetris" initials="P." surname="Mockapetris"/>
            <date month="November" year="1987"/>
            <abstract>
              <t>This RFC is the revised specification of the protocol and format used in the implementation of the Domain Name System. It obsoletes RFC-883. This memo documents the details of the domain name client - server communication.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="13"/>
          <seriesInfo name="RFC" value="1035"/>
          <seriesInfo name="DOI" value="10.17487/RFC1035"/>
        </reference>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <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="RFC4648" target="https://www.rfc-editor.org/info/rfc4648" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4648.xml">
          <front>
            <title>The Base16, Base32, and Base64 Data Encodings</title>
            <author fullname="S. Josefsson" initials="S." surname="Josefsson"/>
            <date month="October" year="2006"/>
            <abstract>
              <t>This document describes the commonly used base 64, base 32, and base 16 encoding schemes. It also discusses the use of line-feeds in encoded data, use of padding in encoded data, use of non-alphabet characters in encoded data, use of different encoding alphabets, and canonical encodings. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4648"/>
          <seriesInfo name="DOI" value="10.17487/RFC4648"/>
        </reference>
        <reference anchor="RFC7208" target="https://www.rfc-editor.org/info/rfc7208" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7208.xml">
          <front>
            <title>Sender Policy Framework (SPF) for Authorizing Use of Domains in Email, Version 1</title>
            <author fullname="S. Kitterman" initials="S." surname="Kitterman"/>
            <date month="April" year="2014"/>
            <abstract>
              <t>Email on the Internet can be forged in a number of ways. In particular, existing protocols place no restriction on what a sending host can use as the "MAIL FROM" of a message or the domain given on the SMTP HELO/EHLO commands. This document describes version 1 of the Sender Policy Framework (SPF) protocol, whereby ADministrative Management Domains (ADMDs) can explicitly authorize the hosts that are allowed to use their domain names, and a receiving host can check such authorization.</t>
              <t>This document obsoletes RFC 4408.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7208"/>
          <seriesInfo name="DOI" value="10.17487/RFC7208"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <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="RFC8461" target="https://www.rfc-editor.org/info/rfc8461" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8461.xml">
          <front>
            <title>SMTP MTA Strict Transport Security (MTA-STS)</title>
            <author fullname="D. Margolis" initials="D." surname="Margolis"/>
            <author fullname="M. Risher" initials="M." surname="Risher"/>
            <author fullname="B. Ramakrishnan" initials="B." surname="Ramakrishnan"/>
            <author fullname="A. Brotman" initials="A." surname="Brotman"/>
            <author fullname="J. Jones" initials="J." surname="Jones"/>
            <date month="September" year="2018"/>
            <abstract>
              <t>SMTP MTA Strict Transport Security (MTA-STS) is a mechanism enabling mail service providers (SPs) to declare their ability to receive Transport Layer Security (TLS) secure SMTP connections and to specify whether sending SMTP servers should refuse to deliver to MX hosts that do not offer TLS with a trusted server certificate.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8461"/>
          <seriesInfo name="DOI" value="10.17487/RFC8461"/>
        </reference>
        <reference anchor="RFC8552" target="https://www.rfc-editor.org/info/rfc8552" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8552.xml">
          <front>
            <title>Scoped Interpretation of DNS Resource Records through "Underscored" Naming of Attribute Leaves</title>
            <author fullname="D. Crocker" initials="D." surname="Crocker"/>
            <date month="March" year="2019"/>
            <abstract>
              <t>Formally, any DNS Resource Record (RR) may occur under any domain name. However, some services use an operational convention for defining specific interpretations of an RRset by locating the records in a DNS branch under the parent domain to which the RRset actually applies. The top of this subordinate branch is defined by a naming convention that uses a reserved node name, which begins with the underscore character (e.g., "_name"). The underscored naming construct defines a semantic scope for DNS record types that are associated with the parent domain above the underscored branch. This specification explores the nature of this DNS usage and defines the "Underscored and Globally Scoped DNS Node Names" registry with IANA. The purpose of this registry is to avoid collisions resulting from the use of the same underscored name for different services.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="222"/>
          <seriesInfo name="RFC" value="8552"/>
          <seriesInfo name="DOI" value="10.17487/RFC8552"/>
        </reference>
        <reference anchor="RFC9421" target="https://www.rfc-editor.org/info/rfc9421" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9421.xml">
          <front>
            <title>HTTP Message Signatures</title>
            <author fullname="A. Backman" initials="A." role="editor" surname="Backman"/>
            <author fullname="J. Richer" initials="J." role="editor" surname="Richer"/>
            <author fullname="M. Sporny" initials="M." surname="Sporny"/>
            <date month="February" year="2024"/>
            <abstract>
              <t>This document describes a mechanism for creating, encoding, and verifying digital signatures or message authentication codes over components of an HTTP message. This mechanism supports use cases where the full HTTP message may not be known to the signer and where the message may be transformed (e.g., by intermediaries) before reaching the verifier. This document also describes a means for requesting that a signature be applied to a subsequent HTTP message in an ongoing HTTP exchange.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9421"/>
          <seriesInfo name="DOI" value="10.17487/RFC9421"/>
        </reference>
        <reference anchor="MCP" target="https://modelcontextprotocol.io">
          <front>
            <title>Model Context Protocol Specification</title>
            <author>
              <organization>Agentic AI Foundation</organization>
            </author>
            <date year="2026"/>
          </front>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC6376" target="https://www.rfc-editor.org/info/rfc6376" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6376.xml">
          <front>
            <title>DomainKeys Identified Mail (DKIM) Signatures</title>
            <author fullname="D. Crocker" initials="D." role="editor" surname="Crocker"/>
            <author fullname="T. Hansen" initials="T." role="editor" surname="Hansen"/>
            <author fullname="M. Kucherawy" initials="M." role="editor" surname="Kucherawy"/>
            <date month="September" year="2011"/>
            <abstract>
              <t>DomainKeys Identified Mail (DKIM) permits a person, role, or organization that owns the signing domain to claim some responsibility for a message by associating the domain with the message. This can be an author's organization, an operational relay, or one of their agents. DKIM separates the question of the identity of the Signer of the message from the purported author of the message. Assertion of responsibility is validated through a cryptographic signature and by querying the Signer's domain directly to retrieve the appropriate public key. Message transit from author to recipient is through relays that typically make no substantive change to the message content and thus preserve the DKIM signature.</t>
              <t>This memo obsoletes RFC 4871 and RFC 5672. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="76"/>
          <seriesInfo name="RFC" value="6376"/>
          <seriesInfo name="DOI" value="10.17487/RFC6376"/>
        </reference>
        <reference anchor="RFC7489" target="https://www.rfc-editor.org/info/rfc7489" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7489.xml">
          <front>
            <title>Domain-based Message Authentication, Reporting, and Conformance (DMARC)</title>
            <author fullname="M. Kucherawy" initials="M." role="editor" surname="Kucherawy"/>
            <author fullname="E. Zwicky" initials="E." role="editor" surname="Zwicky"/>
            <date month="March" year="2015"/>
            <abstract>
              <t>Domain-based Message Authentication, Reporting, and Conformance (DMARC) is a scalable mechanism by which a mail-originating organization can express domain-level policies and preferences for message validation, disposition, and reporting, that a mail-receiving organization can use to improve mail handling.</t>
              <t>Originators of Internet Mail need to be able to associate reliable and authenticated domain identifiers with messages, communicate policies about messages that use those identifiers, and report about mail using those identifiers. These abilities have several benefits: Receivers can provide feedback to Domain Owners about the use of their domains; this feedback can provide valuable insight about the management of internal operations and the presence of external domain name abuse.</t>
              <t>DMARC does not produce or encourage elevated delivery privilege of authenticated email. DMARC is a mechanism for policy distribution that enables increasingly strict handling of messages that fail authentication checks, ranging from no action, through altered delivery, up to message rejection.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7489"/>
          <seriesInfo name="DOI" value="10.17487/RFC7489"/>
        </reference>
        <reference anchor="RFC9460" target="https://www.rfc-editor.org/info/rfc9460" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9460.xml">
          <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="SEP-1649" target="https://github.com/modelcontextprotocol/modelcontextprotocol/issues/1649">
          <front>
            <title>MCP Server Cards</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="SEP-1959" target="https://github.com/modelcontextprotocol/modelcontextprotocol/issues/1959">
          <front>
            <title>DNS-Based MCP Server Identity Verification</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="SEP-1960" target="https://github.com/modelcontextprotocol/modelcontextprotocol/issues/1960">
          <front>
            <title>.well-known/mcp Discovery Endpoint</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="SEP-2127" target="https://github.com/modelcontextprotocol/modelcontextprotocol/pull/2127">
          <front>
            <title>MCP Server Cards (PR)</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="AID" target="https://datatracker.ietf.org/doc/draft-nemethi-aid-agent-identity-discovery/">
          <front>
            <title>Agent Identity &amp; Discovery</title>
            <author surname="Nemethi">
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="SERRA" target="https://datatracker.ietf.org/doc/draft-serra-mcp-discovery-uri/02/">
          <front>
            <title>MCP Discovery URI</title>
            <author surname="Serra">
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="MORRISON-IFT" target="https://doi.org/10.6084/m9.figshare.31951383">
          <front>
            <title>Identity Field Theory: Toward a Physics of Being Known</title>
            <author fullname="Blake Morrison">
              <organization>Alter Meridian Pty Ltd</organization>
            </author>
            <date year="2026"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 850?>

<section anchor="discovery-and-bootstrap-pseudocode">
      <name>Discovery and Bootstrap Pseudocode</name>
      <t>The following pseudocode illustrates the combined discovery and
bootstrap procedure defined in Section 6.  It is non-normative.</t>
      <t>```
function bootstrap_org_alter(domain):
    # Step 1: Read identity record
    txt = dns_query("_org-alter." + domain, type=TXT, prefer=DoH)
    if txt is None:
        return interactive_first_run(domain)</t>
      <artwork><![CDATA[
record = parse_orgalter_record(txt)
if record.version != "alter1":
    return interactive_first_run(domain)

# Step 2: Load core fields
state = {
    "org": record.org,
    "entity": record.entity,
    "founded": record.founded,
    "regions": record.regions,
    "regulated": record.regulated or [],
    "mcp_policy": record.mcp_policy or "open",
}

# Step 3: Honour regulated promise
if state["regulated"]:
    state["boundary_policy"] = "refuse"
    state["disabled_layers"] = ["L5", "L6"]
if state["mcp_policy"] == "refuse-tenant":
    state["disabled_layers"] = list(set(state.get("disabled_layers", []) + ["L5", "L6"]))

# Step 4: Fetch optional bootstrap document
if record.bootstrap:
    doc = https_get(record.bootstrap, validate_tls=domain)
    if doc and is_valid_bootstrap_doc(doc):
        state["roster"] = doc.get("roster", [])
        state["logo_url"] = doc.get("logo_url")
        state["public_website"] = doc.get("public_website")

# Step 5: Cross-check _mcp record key
mcp_record = parse_mcp_record(dns_query("_mcp." + domain, type=TXT))
if mcp_record and mcp_record.pk and record.pk:
    if mcp_record.pk != record.pk:
        raise IdentityMismatch("_mcp.pk and _org-alter.pk diverge")

# Step 6: Verify against registry
if record.entity:
    registry, identifier = record.entity.split(":", 1)
    if registry == "abn":
        verified = abr_lookup(identifier)
        if verified.name != state["org"]:
            state["registry_warning"] = f"Declared org='{state['org']}' but ABN resolves to '{verified.name}'"

# Step 7: Persist canonical state
write_json("state/identity.json", state, source_cite="DNS+registry")
return state ```
]]></artwork>
    </section>
    <section anchor="change-log">
      <name>Change Log</name>
      <t>draft-morrison-mcp-dns-discovery-02 (April 2026):</t>
      <ul spacing="normal">
        <li>
          <t>Adds the <tt>_org-alter.&lt;domain&gt;</tt> Org-Identity Record (Section 4).</t>
        </li>
        <li>
          <t>Defines <tt>org</tt>, <tt>entity</tt>, <tt>entity-type</tt>, <tt>founded</tt>, <tt>regions</tt>,
<tt>regulated</tt>, <tt>bootstrap</tt>, <tt>mcp-policy</tt>, <tt>epoch</tt>, <tt>pk</tt>, <tt>attest</tt>,
<tt>ext</tt> fields for the new record.</t>
        </li>
        <li>
          <t>Adds the Identity Bootstrap procedure (Section 6).</t>
        </li>
        <li>
          <t>Adds IANA registration for <tt>_org-alter</tt> underscore-prefixed label.</t>
        </li>
        <li>
          <t>Adds version tag <tt>v=alter1</tt> and registry namespace and framework
token registries.</t>
        </li>
        <li>
          <t>Adds Examples for minimal, full, regulated (DISP), and
multi-regulator deployments.</t>
        </li>
        <li>
          <t>Adds Implementation Status entry for the orgalter_discover
reference library.</t>
        </li>
        <li>
          <t>v01 <tt>_mcp.&lt;domain&gt;</tt> record specification is incorporated by
reference and remains unchanged.</t>
        </li>
      </ul>
      <t>draft-morrison-mcp-dns-discovery-01 (April 2026):</t>
      <ul spacing="normal">
        <li>
          <t>Adds Identity Field Theory grounding for <tt>epoch</tt> and <tt>scope</tt>.</t>
        </li>
        <li>
          <t>Refines security considerations for identity assurance decay.</t>
        </li>
        <li>
          <t>Refines privacy considerations for scope as a privacy boundary.</t>
        </li>
        <li>
          <t>Adds Coexistence section with SEP-1959, AID, A2A.</t>
        </li>
        <li>
          <t>Adds Implementation Status section.</t>
        </li>
      </ul>
      <t>draft-morrison-mcp-dns-discovery-00 (April 2026):</t>
      <ul spacing="normal">
        <li>
          <t>Initial submission.</t>
        </li>
        <li>
          <t>Defines <tt>_mcp.&lt;domain&gt;</tt> TXT record format with ABNF grammar.</t>
        </li>
        <li>
          <t>Defines discovery procedure with HTTPS fallback.</t>
        </li>
        <li>
          <t>Defines <tt>pk</tt>, <tt>epoch</tt>, <tt>attest</tt>, <tt>scope</tt>, <tt>cap</tt>, <tt>priority</tt>,
<tt>ttl</tt>, and <tt>ext</tt> fields.</t>
        </li>
        <li>
          <t>Registers <tt>_mcp</tt> in the underscored DNS node name registry.</t>
        </li>
      </ul>
      <?line 948?>

</section>
    <section anchor="normative-references">
      <name>Normative References</name>
      <t>(References from v01 are retained.)</t>
    </section>
    <section anchor="informative-references">
      <name>Informative References</name>
      <t>(References from v01 are retained.)</t>
    </section>
    <section anchor="authors-addresses">
      <name>Authors' Addresses</name>
      <t>Blake Morrison
Alter Meridian Pty Ltd
Cronulla, NSW 2230
Australia</t>
      <t>Email: blake@truealter.com
URI: https://truealter.com</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
L5o5D1qEkAAA

-->

</rfc>
