<?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.35 (Ruby 3.2.3) -->
<?rfc strict="yes"?>
<?rfc compact="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-hood-independent-agis-00" category="info" submissionType="independent" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.33.0 -->
  <front>
    <title abbrev="AGIS">Agentic Grammar and Interface Specification (AGIS)</title>
    <seriesInfo name="Internet-Draft" value="draft-hood-independent-agis-00"/>
    <author fullname="Chris Hood">
      <organization>Nomotic, Inc.</organization>
      <address>
        <email>chris@nomotic.ai</email>
        <uri>https://agtp.io</uri>
      </address>
    </author>
    <date year="2026" month="April" day="16"/>
    <area>Applications and Real-Time</area>
    <workgroup>Independent Submission</workgroup>
    <keyword>AI agents</keyword>
    <keyword>agentic API</keyword>
    <keyword>interface definition language</keyword>
    <keyword>semantic methods</keyword>
    <keyword>grammar specification</keyword>
    <keyword>AGTP</keyword>
    <keyword>natural language alignment</keyword>
    <abstract>
      <?line 84?>

<t>This document defines the Agentic Grammar and Interface Specification
(AGIS), a grammar-constrained interface definition language for Agentive
APIs designed for consumption by large language model (LLM) based agents.
AGIS establishes structural and semantic rules governing how API methods
and endpoints must be expressed, without mandating a fixed vocabulary of
method names. An implementation conforming to AGIS uses intent-expressing
imperative verbs as method identifiers, enabling agents to infer
operational meaning from method names without requiring training on a
predefined catalog.</t>
      <t>AGIS is the native interface definition layer for the Agent Transfer
Protocol (AGTP) <xref target="AGTP"/>, in the same way that HTML functions as the
native content language for the HTTP transport protocol. AGIS does not
replace JSON Schema <xref target="JSON-SCHEMA"/> for data contracts; it governs the
structural grammar of method and endpoint design that wraps those
contracts. AGIS-conformant methods are accepted at the AGTP transport
layer via the Method-Grammar header without requiring prior IANA
registration, enabling organizations to define domain-specific Agentive
API vocabularies while preserving interoperability through shared
grammatical constraints.</t>
      <t>Empirical validation of the core AGIS design principle is provided in
<xref target="HOOD2026"/>, which demonstrates a 10-29 percentage point accuracy
advantage for intent-expressing method names over generic HTTP verbs
across three frontier LLM families in 7,200 controlled trials.</t>
      <t>This version also introduces: normative YAML and JSON serialization
formats; a Data Manifest block enabling services to declare available
data without pre-built endpoints; a negotiable signal enabling AGTP
dynamic endpoint instantiation; semantic declaration enhancements
including is_idempotent, impact_tier, parameter_hints, and
state_transition fields; vocabulary namespace disambiguation; and
an HTTP transitional binding for incremental adoption.</t>
    </abstract>
  </front>
  <middle>
    <?line 120?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The Representational State Transfer (REST) architectural style <xref target="RFC7231"/>
was designed for a specific class of consumer: the human developer. A
developer reading "POST /reservations" brings domain knowledge, understands
HTTP verb semantics, consults documentation, and infers intent from
context. Large language model (LLM) based agents do not share this prior
knowledge. They process method names and paths as natural language tokens,
matching them against user intent in real time without the contextual
scaffolding that human developers rely upon.</t>
      <t>The consequence of this mismatch is empirically measurable. Agents
consuming REST/CRUD interfaces exhibit substantially lower endpoint
selection accuracy than agents consuming semantically equivalent interfaces
expressed with intent-aligned method verbs. The mechanism is the method
name itself: generic HTTP verbs (GET, POST, PUT, DELETE) encode no
intent-specific signal, requiring agents to infer purpose entirely from
path structure and documentation text. Intent-expressing verbs (BOOK,
FIND, SCHEDULE, RECONCILE) encode operational meaning directly, enabling
agents to match user goals to endpoint functions with higher precision and
greater resilience to documentation noise <xref target="HOOD2026"/>.</t>
      <section anchor="the-natural-language-alignment-problem">
        <name>The Natural Language Alignment Problem</name>
        <t>Modern agentic systems operate on natural language instructions. A user
says "schedule a meeting for Thursday" or "book a table at the restaurant."
The agent must translate that natural language intent into a structured API
call. The quality of that translation depends substantially on how much
semantic distance exists between the user's words and the available method
identifiers.</t>
        <t>When the available method is POST /calendar/events, the agent must traverse
a semantic chain: POST implies creation, /calendar/events implies calendar
resource, and the combination implies event creation -- which may or may not
match the user's intent to schedule a meeting. Each step in the chain is an
inference opportunity for error.</t>
        <t>When the available method is SCHEDULE /event, the semantic distance
collapses. "Schedule a meeting" maps directly to SCHEDULE. The verb carries
the intent. The noun confirms the resource. A single, low-ambiguity
inference replaces a multi-step chain.</t>
        <t>AGIS is designed to systematically minimize semantic distance between
natural language user intent and API method identifiers. It does not
prescribe which verbs to use. It prescribes the grammatical class that
verbs must belong to -- the action-intent class -- which is precisely the
class of verbs that appear naturally in user instructions. "Book", "find",
"schedule", "cancel", "reconcile", "dispatch" are words users say. AGIS
requires that API methods be words of this type.</t>
        <t>Empirical research confirms that agents navigating unfamiliar AGIS-
conformant service catalogs -- without knowing what methods exist in
advance -- still performed better with semantic verbs than with CRUD.
The agent did not need a dictionary. It inferred intent from the verb
itself, the same way it infers meaning from any natural language word it
encounters <xref target="HOOD2026"/>. This validates the grammar-over-vocabulary
architecture: agents can reason about any AGIS-conformant verb through
natural language inference, making a predefined method catalog unnecessary
for agent comprehension.</t>
      </section>
      <section anchor="design-philosophy">
        <name>Design Philosophy</name>
        <t>AGIS encapsulates what every API exchange has always required: a method
(what to do), authorization (who can do it), and a data contract (what
goes in and comes out). The method is no longer GET or POST but BOOK or
FIND. The authorization is negotiated contextually via AGTP <xref target="AGTP"/>
rather than pre-issued as a static key. The data contract is JSON Schema,
unchanged. AGIS is not a new idea. It is the right implementation of an
old idea for a new class of consumer.</t>
        <t>The Foundation for Intelligent Physical Agents Agent Communication Language
(FIPA-ACL) is the direct historical precedent. FIPA-ACL defined
approximately 25 fixed performatives -- REQUEST, INFORM, PROPOSE,
ACCEPT-PROPOSAL, REJECT-PROPOSAL, QUERY-IF, CONFIRM -- each carried in a
structured envelope with fields for sender, receiver, content, ontology,
and conversation-id. The performative was the verb giving the message its
intent. AGIS applies the same principle but replaces the fixed list of
performatives with a grammar that accepts any action-intent verb. FIPA-ACL
was built for symbolic AI agents in JADE frameworks. AGIS is its spiritual
successor built for LLM agents that reason in natural language.</t>
        <t>AGIS operates on a principle borrowed from formal grammar: define the
rules of the language without prescribing the vocabulary. A grammar
specification for English does not list every valid English word. It
defines the rules -- syntactic structure, part-of-speech requirements,
conjugation patterns -- under which any word is a valid member of the
language.</t>
        <t>In the same way, AGIS defines the rules under which any verb is a valid
AGIS method. This approach directly addresses the principal objection to
fixed method vocabularies: that a library of defined methods is either
too large to manage or too small to accommodate domain diversity. AGIS
eliminates the library entirely as a compliance mechanism. The grammar is
the standard. Vocabulary is implementation-defined.</t>
        <t>Consider the restaurant analogy. An organization's published AGIS document
is the menu: pre-declared endpoints the agent can invoke directly. The
data_manifest block is the kitchen inventory: data classes the service
holds even if no endpoint for them has been built yet. When an agent
arrives and cannot find what it needs on the menu, it can ask -- through
the AGTP negotiation protocol -- "do you have location data?" The service
checks its kitchen (evaluates the data_manifest and authorization policy)
and responds with a dynamically instantiated endpoint or a structured
refusal. The agent does not need to know the full kitchen inventory in
advance. It needs to know the service exists, that it holds relevant data,
and that off-menu requests are accepted. This is what <tt>negotiable: true</tt>
and the data_manifest block declare.</t>
        <t>The specification mandates:</t>
        <ul spacing="normal">
          <li>
            <t>That methods be expressed as imperative base-form verbs</t>
          </li>
          <li>
            <t>That methods belong to the action-intent semantic class</t>
          </li>
          <li>
            <t>That methods be accompanied by machine-readable semantic declarations</t>
          </li>
          <li>
            <t>That implementations declare their vocabulary explicitly</t>
          </li>
          <li>
            <t>That all data contracts be expressed in JSON Schema <xref target="JSON-SCHEMA"/></t>
          </li>
        </ul>
        <t>The specification does not mandate which verbs to use. Two organizations
implementing AGIS-conformant APIs may use entirely different verb
vocabularies. BOOK /reservation and RESERVE /booking are both valid AGIS
method-path combinations expressing the same user intent category. An LLM
agent encountering either service discovers and interprets it correctly
through natural language inference -- the same inference capability
demonstrated in two-stage discovery conditions in <xref target="HOOD2026"/>.</t>
        <t>Compliance validation follows the grammar checker model. A grammar checker
does not validate that a writer chose the "right" words. It validates that
the words used are grammatically correct. An AGIS validator performs the
equivalent checks: that method identifiers are imperative base-form verbs,
that they belong to the action-intent class, that semantic declarations are
present and internally consistent, and that the document structure is
well-formed. Five structural checks. Zero vocabulary judgments.</t>
      </section>
      <section anchor="relationship-to-agtp">
        <name>Relationship to AGTP</name>
        <t>AGIS is the interface definition layer for the Agent Transfer Protocol
<xref target="AGTP"/>. The relationship between AGIS and AGTP mirrors the relationship
between HTML and HTTP:</t>
        <table>
          <name>AGIS/AGTP Structural Analogy</name>
          <thead>
            <tr>
              <th align="left">Analogy</th>
              <th align="left">AGTP/AGIS Stack</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">HTTP</td>
              <td align="left">AGTP -- transport protocol for agent-to-service communication</td>
            </tr>
            <tr>
              <td align="left">HTML</td>
              <td align="left">AGIS -- interface definition language for Agentive APIs</td>
            </tr>
            <tr>
              <td align="left">Web browser</td>
              <td align="left">Agent runtime -- consumer of AGIS documents</td>
            </tr>
            <tr>
              <td align="left">Web page</td>
              <td align="left">AGIS service definition -- the artifact served at an AGTP address</td>
            </tr>
            <tr>
              <td align="left">W3C HTML Specification</td>
              <td align="left">This document -- the grammar specification</td>
            </tr>
          </tbody>
        </table>
        <t>An AGTP address (agtp://service.example.com) serves an AGIS document as
its root response. Agent runtimes retrieve, validate, and parse the AGIS
document to build an internal service map before issuing method calls. The
AGIS document is both the service contract and the discovery artifact.</t>
        <t>AGTP version 03 <xref target="AGTP"/> introduces the <tt>Method-Grammar: AGIS/1.0</tt> header,
which instructs the AGTP transport layer to validate method identifiers
against AGIS grammar rules rather than checking the IANA registry
exclusively. This enables Tier 4 custom methods: organization-defined,
AGIS-conformant verbs that are accepted at the transport layer without
prior IANA registration. The Tier 1 and Tier 2 registered methods defined
in <xref target="AGTP"/> and <xref target="AGTP-METHODS"/> are AGIS-conformant reference vocabulary
and remain available for maximum cross-system interoperability.</t>
      </section>
      <section anchor="agis-in-the-2026-agent-protocol-stack">
        <name>AGIS in the 2026 Agent Protocol Stack</name>
        <t>AGIS occupies a distinct and complementary role in the 2026 agent protocol
ecosystem. Each layer solves a different problem:</t>
        <table>
          <name>AGIS Role in the 2026 Agent Protocol Stack</name>
          <thead>
            <tr>
              <th align="left">Protocol</th>
              <th align="left">Role</th>
              <th align="left">Relationship to AGIS</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">AGTP</td>
              <td align="left">Transport, identity, governance, negotiation</td>
              <td align="left">AGIS is AGTP's native interface definition layer</td>
            </tr>
            <tr>
              <td align="left">MCP</td>
              <td align="left">Tool and context access for LLM runtimes</td>
              <td align="left">AGIS services auto-generate MCP tool entries (Appendix C)</td>
            </tr>
            <tr>
              <td align="left">A2A</td>
              <td align="left">Agent-to-agent task coordination</td>
              <td align="left">AGIS well-known endpoints enable A2A service discovery</td>
            </tr>
            <tr>
              <td align="left">AGIS</td>
              <td align="left">Service interface definition language</td>
              <td align="left">Grammar layer defining what services declare and how agents read it</td>
            </tr>
          </tbody>
        </table>
        <t>AGIS does not compete with MCP, A2A, or AGTP. It is the missing service-
contract layer that makes the ecosystem cohere. An organization publishes
an AGIS document; it is immediately readable by AGTP-native agents,
auto-convertible to MCP tool entries for Claude and Cursor, discoverable
by A2A orchestrators via the well-known endpoint, and validatable by any
AGIS-conformant linter. The grammar is the shared contract that all four
protocol layers can consume.</t>
      </section>
      <section anchor="relationship-to-standard-method-vocabulary">
        <name>Relationship to Standard Method Vocabulary</name>
        <t>The AGTP Standard Extended Method Vocabulary <xref target="AGTP-METHODS"/> defines
a reference set of registered AGIS-conformant methods for common agent
operations. That document is the dictionary. This document is the grammar.</t>
        <t>Organizations choosing methods from <xref target="AGTP-METHODS"/> gain interoperability
across AGTP deployments. Organizations defining their own AGIS-conformant
vocabularies gain domain specificity. Both approaches produce valid
Agentive APIs. The grammar constraint is the shared foundation that makes
both approaches machine-interpretable by agents.</t>
      </section>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in BCP 14 <xref target="RFC2119"/>
        <xref target="RFC8174"/>.</t>
      <dl>
        <dt>Agentive API:</dt>
        <dd>
          <t>An API designed for consumption by LLM-based agents, implementing the
AGIS grammar specification and served over the AGTP transport protocol.
Practitioners building Agentive APIs are said to build "AG-APIs."</t>
        </dd>
        <dt>AGIS Document:</dt>
        <dd>
          <t>A file conforming to this specification that describes the methods,
paths, semantic declarations, and JSON Schema contracts of an Agentive
API service. AGIS documents use the .agis file extension and the
application/agis media type.</t>
        </dd>
        <dt>AGIS Grammar Specification:</dt>
        <dd>
          <t>This document. The normative rules governing what constitutes a valid
AGIS method, path, semantic declaration, and document structure.</t>
        </dd>
        <dt>Action-Intent Verb:</dt>
        <dd>
          <t>An imperative base-form verb that expresses an operation the caller
intends to be performed on their behalf. The semantic class required for
all AGIS method identifiers. Action-intent verbs are the class of verbs
users naturally employ in natural language instructions: "book", "find",
"schedule", "cancel", "reconcile."</t>
        </dd>
        <dt>Imperative Base Form:</dt>
        <dd>
          <t>The uninflected command form of a verb. BOOK is imperative base form.
BOOKING (present participle), BOOKS (third-person singular), and BOOKED
(past tense) are not. The form used when issuing instructions: "book a
table", "find a restaurant", "schedule a meeting."</t>
        </dd>
        <dt>Method Identifier:</dt>
        <dd>
          <t>The verb token used as an AGIS method name. Analogous to an HTTP method
but constrained to the action-intent semantic class rather than fixed to
a predefined set.</t>
        </dd>
        <dt>Semantic Declaration:</dt>
        <dd>
          <t>A machine-readable block within an AGIS endpoint definition that
describes intent, actor, and outcome in plain language. Used by agent
runtimes for discovery, validation, and inference.</t>
        </dd>
        <dt>Vocabulary Block:</dt>
        <dd>
          <t>A required section of an AGIS document that declares all method
identifiers used within the document. Used by validators to verify
declaration consistency and by agents to pre-index service capabilities.</t>
        </dd>
        <dt>Conforming Implementation:</dt>
        <dd>
          <t>An AGIS document or service that satisfies all REQUIRED and MUST-level
rules defined in this specification.</t>
        </dd>
        <dt>Agent Runtime:</dt>
        <dd>
          <t>A software component that retrieves, validates, and consumes AGIS
documents to enable LLM-based agents to discover and invoke Agentive
API services.</t>
        </dd>
        <dt>Tier 4 Custom Method:</dt>
        <dd>
          <t>An organization-defined method that is AGIS-conformant but not
registered in the IANA AGTP Method Registry. Accepted at the AGTP
transport layer via the <tt>Method-Grammar: AGIS/1.0</tt> header. Discoverable
by agents through the AGIS vocabulary block at the service's AGTP
address.</t>
        </dd>
        <dt>FIPA-ACL:</dt>
        <dd>
          <t>Foundation for Intelligent Physical Agents Agent Communication Language.
The historical predecessor to AGIS, defining ~25 fixed performatives
(REQUEST, INFORM, PROPOSE, ACCEPT-PROPOSAL, etc.) in structured
message envelopes. Implemented in JADE and similar frameworks for
symbolic AI agent systems. AGIS is FIPA-ACL's successor for LLM agents,
replacing fixed performatives with a grammar-constrained open vocabulary.</t>
        </dd>
        <dt>Data Manifest:</dt>
        <dd>
          <t>An optional block within an AGIS document that declares the data
classes a service holds without defining pre-built endpoints. Enables
agents to assess whether a service has relevant data before initiating
dynamic endpoint negotiation via AGTP <xref target="AGTP"/>. The data manifest is
the ceiling of what a service will negotiate; it does not constitute
a commitment to serve any specific endpoint format.</t>
        </dd>
        <dt>Negotiable Service:</dt>
        <dd>
          <t>An AGIS-conformant service that supports dynamic endpoint instantiation
via the AGTP negotiation protocol. A negotiable service declares
<tt>negotiable: true</tt> in its vocabulary block and MUST expose a data
manifest describing available data classes.</t>
        </dd>
        <dt>Proposed Endpoint:</dt>
        <dd>
          <t>An endpoint definition within an AGIS document that was dynamically
instantiated during an AGTP negotiation session rather than pre-declared
by the service. Proposed endpoints carry a <tt>proposed: true</tt> flag and
are session-scoped unless the service explicitly persists them.</t>
        </dd>
        <dt>Impact Tier:</dt>
        <dd>
          <t>A categorical classification of endpoint consequence used alongside
<tt>confidence_guidance</tt> to enable model-independent escalation reasoning.
Values are: Informational (read-only, no state change), Reversible
(state change that can be undone), Irreversible (permanent state change
or financial commitment).</t>
        </dd>
        <dt>State Transition:</dt>
        <dd>
          <t>A machine-readable description of the expected system state change
produced by successful endpoint execution. Used by Level 2 conformant
agent runtimes for post-execution verification. Format:
<tt>field: FROM_VALUE -&gt; TO_VALUE</tt>.</t>
        </dd>
      </dl>
    </section>
    <section anchor="agis-architecture">
      <name>AGIS Architecture</name>
      <section anchor="the-grammar-analogy">
        <name>The Grammar Analogy</name>
        <t>AGIS is a grammar specification, not a method dictionary. This distinction
is architecturally fundamental and distinguishes AGIS from prior interface
definition approaches that enumerate a fixed set of permitted operations.</t>
        <t>A grammar specification for natural language defines syntactic rules,
part-of-speech categories, and semantic class constraints without listing
every valid word in the language. English grammar requires that verbs in
imperative sentences be expressed in base form without specifying which
verbs are permissible. "Book a table" and "reserve a table" are both
grammatically valid despite using different verbs, because both verbs
satisfy the grammatical class requirements of the imperative form.</t>
        <t>AGIS applies this principle to API interface design. The specification
defines that method identifiers MUST be imperative base-form verbs
belonging to the action-intent semantic class. It does not enumerate which
verbs satisfy this requirement. Any verb satisfying the grammatical and
semantic class rules is a valid AGIS method identifier. Implementations
choose their own vocabulary within these constraints.</t>
        <t>This architecture directly eliminates the "too many methods" objection to
semantic method vocabularies. The objection is a vocabulary objection:
people argue about which specific verbs belong in a fixed list, whether
50 verbs is too many, whether LOCATE and FIND are redundant. AGIS removes
the list from the standard entirely. There is no list to argue about. There
is only a grammar. Any verb satisfying the grammar is valid.</t>
      </section>
      <section anchor="document-structure">
        <name>Document Structure</name>
        <t>An AGIS document is a structured text file using the .agis file extension.
It contains four principal components:</t>
        <dl>
          <dt>Document Header:</dt>
          <dd>
            <t>Version declaration, service name, AGTP address, and optional metadata.</t>
          </dd>
          <dt>Endpoint Definitions:</dt>
          <dd>
            <t>One or more method-path combinations, each accompanied by a semantic
declaration block and JSON Schema contracts.</t>
          </dd>
          <dt>Schema Definitions:</dt>
          <dd>
            <t>JSON Schema objects defining input parameters, output structures, and
error states for each endpoint.</t>
          </dd>
          <dt>Vocabulary Block:</dt>
          <dd>
            <t>An explicit declaration of all method identifiers used in the document,
with domain classification.</t>
          </dd>
        </dl>
        <t>The AGIS document is both the service contract and the discovery artifact.
When an agent runtime retrieves an AGIS document from an AGTP address, it
obtains a complete specification of what the service can do, what each
operation means, what data each operation requires, and what each operation
returns. No separate documentation is required for agent consumption.</t>
      </section>
      <section anchor="conformance-levels">
        <name>Conformance Levels</name>
        <t>This specification defines four conformance levels. All conforming
implementations MUST satisfy Level 1. Higher levels are OPTIONAL and
represent progressive adoption paths.</t>
        <table>
          <name>AGIS Conformance Levels</name>
          <thead>
            <tr>
              <th align="left">Level</th>
              <th align="left">Description</th>
              <th align="left">Status</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">Level 1 -- Declarative</td>
              <td align="left">AGIS document describes service interface. No runtime behavior.</td>
              <td align="left">REQUIRED</td>
            </tr>
            <tr>
              <td align="left">Level 2 -- Interpretable</td>
              <td align="left">AGIS document drives runtime routing and validation without additional implementation code.</td>
              <td align="left">OPTIONAL</td>
            </tr>
            <tr>
              <td align="left">Level 3 -- Scriptable</td>
              <td align="left">AGIS includes constrained expression layer for conditions and transformations.</td>
              <td align="left">OPTIONAL</td>
            </tr>
            <tr>
              <td align="left">Level 4 -- Executable</td>
              <td align="left">AGIS is a fully executable interface language with complete runtime semantics.</td>
              <td align="left">FUTURE</td>
            </tr>
          </tbody>
        </table>
        <t>This specification defines Level 1 conformance requirements. Guidance for
Level 2 implementations is provided as informative content. Levels 3 and 4
are noted as future directions outside the scope of this document.</t>
        <t>The following table summarizes which semantic declaration fields are
REQUIRED, RECOMMENDED, or OPTIONAL at each conformance level:</t>
        <table>
          <name>Semantic Declaration Field Requirements by Conformance Level</name>
          <thead>
            <tr>
              <th align="left">Field</th>
              <th align="left">Level 1</th>
              <th align="left">Level 2</th>
              <th align="left">Notes</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">intent</td>
              <td align="left">REQUIRED</td>
              <td align="left">REQUIRED</td>
              <td align="left">All levels</td>
            </tr>
            <tr>
              <td align="left">actor</td>
              <td align="left">REQUIRED</td>
              <td align="left">REQUIRED</td>
              <td align="left">All levels</td>
            </tr>
            <tr>
              <td align="left">outcome</td>
              <td align="left">REQUIRED</td>
              <td align="left">REQUIRED</td>
              <td align="left">All levels</td>
            </tr>
            <tr>
              <td align="left">capability</td>
              <td align="left">RECOMMENDED</td>
              <td align="left">REQUIRED</td>
              <td align="left">Level 2 requires for routing</td>
            </tr>
            <tr>
              <td align="left">confidence_guidance</td>
              <td align="left">RECOMMENDED</td>
              <td align="left">REQUIRED</td>
              <td align="left">Level 2 requires for governance</td>
            </tr>
            <tr>
              <td align="left">impact_tier</td>
              <td align="left">RECOMMENDED</td>
              <td align="left">REQUIRED</td>
              <td align="left">Level 2 requires for escalation</td>
            </tr>
            <tr>
              <td align="left">is_idempotent</td>
              <td align="left">RECOMMENDED</td>
              <td align="left">REQUIRED</td>
              <td align="left">Level 2 requires for retry logic</td>
            </tr>
            <tr>
              <td align="left">parameter_hints</td>
              <td align="left">OPTIONAL</td>
              <td align="left">RECOMMENDED</td>
              <td align="left">Improves parametric accuracy</td>
            </tr>
            <tr>
              <td align="left">state_transition</td>
              <td align="left">OPTIONAL</td>
              <td align="left">REQUIRED</td>
              <td align="left">Level 2 requires for verification</td>
            </tr>
            <tr>
              <td align="left">mcp_tool_name</td>
              <td align="left">OPTIONAL</td>
              <td align="left">OPTIONAL</td>
              <td align="left">MCP bridge only</td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
    <section anchor="method-rules">
      <name>Method Rules</name>
      <section anchor="syntactic-requirements">
        <name>Syntactic Requirements</name>
        <t>An AGIS method identifier MUST satisfy the following syntactic rules:</t>
        <t>(a) The method identifier MUST be a single token containing no whitespace
    characters.</t>
        <t>(b) The method identifier MUST be expressed in the imperative base form
    of the verb. Inflected forms including present participle (-ing), past
    tense (-ed), and third-person singular (-s) are NOT PERMITTED.</t>
        <t>(c) The method identifier MUST contain only uppercase alphabetic characters
    (A-Z). Numerals, hyphens, underscores, and special characters are NOT
    PERMITTED.</t>
        <t>(d) The method identifier MUST NOT be a compound verb phrase. Multi-word
    constructions are NOT PERMITTED.</t>
        <t>(e) The method identifier SHOULD be expressed in uppercase to distinguish
    it from path components. Implementations MAY use mixed case; validators
    MUST treat method comparison as case-insensitive.</t>
        <dl>
          <dt>Design rationale for single-token requirement:</dt>
          <dd>
            <t>Compound verb forms such as CANCEL_BOOKING or GENERATE_REPORT are
explicitly prohibited. The correct AGIS pattern separates verb and
noun: CANCEL /booking, GENERATE /report. This separation preserves
the semantic density of the method identifier: CANCEL alone carries
a complete action-intent signal; CANCEL_BOOKING dilutes it with path
information already conveyed by the noun. Single-token identifiers
also maximize the cosine similarity between the method verb and the
user's natural language instruction -- "cancel my booking" maps
directly to CANCEL, not to CANCEL_BOOKING -- which is the mechanism
empirically validated in <xref target="HOOD2026"/>. Implementations that require
compound semantics SHOULD use the AGIS path and semantic declaration
rather than encoding them in the method identifier.</t>
          </dd>
        </dl>
        <t>The following examples illustrate syntactic compliance:</t>
        <table>
          <name>Method Identifier Syntactic Examples</name>
          <thead>
            <tr>
              <th align="left">Method Identifier</th>
              <th align="left">Status</th>
              <th align="left">Reason</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">BOOK</td>
              <td align="left">VALID</td>
              <td align="left">Single token, imperative base form, uppercase alphabetic</td>
            </tr>
            <tr>
              <td align="left">FIND</td>
              <td align="left">VALID</td>
              <td align="left">Single token, imperative base form, uppercase alphabetic</td>
            </tr>
            <tr>
              <td align="left">SCHEDULE</td>
              <td align="left">VALID</td>
              <td align="left">Single token, imperative base form, uppercase alphabetic</td>
            </tr>
            <tr>
              <td align="left">RECONCILE</td>
              <td align="left">VALID</td>
              <td align="left">Single token, imperative base form, uppercase alphabetic</td>
            </tr>
            <tr>
              <td align="left">BOOKING</td>
              <td align="left">INVALID</td>
              <td align="left">Present participle -- not imperative base form</td>
            </tr>
            <tr>
              <td align="left">BOOK_TABLE</td>
              <td align="left">INVALID</td>
              <td align="left">Contains underscore -- compound form not permitted</td>
            </tr>
            <tr>
              <td align="left">book-reservation</td>
              <td align="left">INVALID</td>
              <td align="left">Contains hyphen -- compound form not permitted</td>
            </tr>
            <tr>
              <td align="left">FindRestaurant</td>
              <td align="left">INVALID</td>
              <td align="left">Compound form -- single token required</td>
            </tr>
            <tr>
              <td align="left">SEARCH2</td>
              <td align="left">INVALID</td>
              <td align="left">Contains numeral -- alphabetic only</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="semantic-class-requirements">
        <name>Semantic Class Requirements</name>
        <t>Beyond syntactic validity, an AGIS method identifier MUST belong to the
action-intent semantic class. This class is defined as follows:</t>
        <dl>
          <dt>Definition:</dt>
          <dd>
            <t>A verb belongs to the action-intent semantic class if it expresses an
operation that the caller intends to have performed on their behalf,
where the subject of the operation is an agent acting for a user or
system goal.</t>
          </dd>
        </dl>
        <t>The action-intent class requirement serves the core design goal of AGIS:
enabling agents to infer operational purpose from method identifiers using
natural language inference, without requiring a predefined vocabulary
catalog. A verb in the action-intent class corresponds directly to the
class of verbs users employ when expressing intent in natural language
instructions -- "book a table", "find a restaurant", "cancel my
reservation", "schedule a meeting."</t>
        <t>A verb does NOT belong to the action-intent semantic class if it:</t>
        <ul spacing="normal">
          <li>
            <t>Describes a state or condition rather than an action (e.g., AVAILABLE,
ACTIVE, OPEN, VALID)</t>
          </li>
          <li>
            <t>Describes a noun recast as a verb without expressing intent (e.g., DATA
used as a verb)</t>
          </li>
          <li>
            <t>Expresses existence or being rather than doing (e.g., EXISTS, IS, HAS)</t>
          </li>
          <li>
            <t>Is inherently ambiguous as to whether it expresses agent intent or
system state</t>
          </li>
        </ul>
        <t>The following examples illustrate semantic class compliance:</t>
        <table>
          <name>Method Identifier Semantic Class Examples</name>
          <thead>
            <tr>
              <th align="left">Method Identifier</th>
              <th align="left">Semantic Class Status</th>
              <th align="left">Reason</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">BOOK</td>
              <td align="left">Action-intent</td>
              <td align="left">Expresses intent to create a booking</td>
            </tr>
            <tr>
              <td align="left">FIND</td>
              <td align="left">Action-intent</td>
              <td align="left">Expresses intent to locate a resource</td>
            </tr>
            <tr>
              <td align="left">CANCEL</td>
              <td align="left">Action-intent</td>
              <td align="left">Expresses intent to terminate a booking</td>
            </tr>
            <tr>
              <td align="left">AUTHORIZE</td>
              <td align="left">Action-intent</td>
              <td align="left">Expresses intent to grant permission</td>
            </tr>
            <tr>
              <td align="left">TRIAGE</td>
              <td align="left">Action-intent</td>
              <td align="left">Expresses intent to prioritize and route</td>
            </tr>
            <tr>
              <td align="left">DISPATCH</td>
              <td align="left">Action-intent</td>
              <td align="left">Expresses intent to send or route a resource</td>
            </tr>
            <tr>
              <td align="left">RESERVE</td>
              <td align="left">Action-intent</td>
              <td align="left">Expresses intent to hold a resource</td>
            </tr>
            <tr>
              <td align="left">LOCATE</td>
              <td align="left">Action-intent</td>
              <td align="left">Expresses intent to find a specific resource</td>
            </tr>
            <tr>
              <td align="left">AVAILABLE</td>
              <td align="left">NOT action-intent</td>
              <td align="left">Describes state, not action</td>
            </tr>
            <tr>
              <td align="left">ACTIVE</td>
              <td align="left">NOT action-intent</td>
              <td align="left">Describes condition, not operation</td>
            </tr>
            <tr>
              <td align="left">EXISTS</td>
              <td align="left">NOT action-intent</td>
              <td align="left">Describes existence, not intent</td>
            </tr>
            <tr>
              <td align="left">PROCESS</td>
              <td align="left">Borderline</td>
              <td align="left">May express intent or describe system state; a more specific verb is RECOMMENDED</td>
            </tr>
          </tbody>
        </table>
        <t>Note that RESERVE and LOCATE are valid AGIS methods even though BOOK and
FIND serve equivalent purposes in the AGTP registered vocabulary. AGIS
does not prohibit synonymous verbs across implementations. Two
organizations may use BOOK and RESERVE for the same operation type; both
are AGIS-conformant. An agent encountering RESERVE infers its meaning
through natural language inference -- the same mechanism demonstrated in
two-stage discovery conditions in <xref target="HOOD2026"/>.</t>
      </section>
      <section anchor="prohibited-methods">
        <name>Prohibited Methods</name>
        <t>The following method identifiers are explicitly prohibited in AGIS
implementations regardless of syntactic or semantic class validity, to
prevent ambiguity with HTTP methods and established protocol conventions:</t>
        <artwork><![CDATA[
Prohibited:  GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS, CONNECT,
             TRACE

Rationale:  These identifiers carry HTTP-specific semantics that
            conflict with the AGIS design principle. Their use
            would create ambiguity for agents transitioning between
            HTTP/REST and AGTP/AGIS service contexts.
]]></artwork>
      </section>
    </section>
    <section anchor="path-rules">
      <name>Path Rules</name>
      <t>The path component of an AGIS endpoint identifies the entity upon which
the method operates. The following rules apply:</t>
      <t>(a) The path MUST begin with a forward slash character (/).</t>
      <t>(b) The first path segment MUST be a noun or noun phrase identifying the
    primary entity type. Verb forms are NOT PERMITTED in path segments.</t>
      <t>(c) Multi-word path segments MUST use hyphen-separated lowercase notation
    (e.g., /patient-record, /delivery-order).</t>
      <t>(d) Parameterized path segments identifying specific resource instances
    MUST use curly-brace notation (e.g., /reservation/{id},
    /order/{order_id}).</t>
      <t>(e) The path MUST NOT duplicate the method verb. A method of BOOK with a
    path of /book-reservation violates this rule.</t>
      <t>(f) Query string parameters MUST NOT appear in path definitions. Variable
    inputs are defined in the JSON Schema input block.</t>
      <t>The following examples illustrate path compliance:</t>
      <table>
        <name>Path Syntax Examples</name>
        <thead>
          <tr>
            <th align="left">Path</th>
            <th align="left">Status</th>
            <th align="left">Reason</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">/reservation</td>
            <td align="left">VALID</td>
            <td align="left">Noun, lowercase, begins with /</td>
          </tr>
          <tr>
            <td align="left">/restaurant/{id}</td>
            <td align="left">VALID</td>
            <td align="left">Noun with parameterized identifier</td>
          </tr>
          <tr>
            <td align="left">/patient-record/{id}</td>
            <td align="left">VALID</td>
            <td align="left">Hyphenated noun phrase with identifier</td>
          </tr>
          <tr>
            <td align="left">/calendar/event/{id}</td>
            <td align="left">VALID</td>
            <td align="left">Hierarchical noun path</td>
          </tr>
          <tr>
            <td align="left">/bookReservation</td>
            <td align="left">INVALID</td>
            <td align="left">Verb in path</td>
          </tr>
          <tr>
            <td align="left">/get-restaurant</td>
            <td align="left">INVALID</td>
            <td align="left">Verb in path</td>
          </tr>
          <tr>
            <td align="left">/reservation?type=dinner</td>
            <td align="left">INVALID</td>
            <td align="left">Query string in path definition</td>
          </tr>
          <tr>
            <td align="left">/RESERVATION</td>
            <td align="left">INVALID</td>
            <td align="left">Uppercase -- path segments MUST be lowercase</td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="semantic-declaration-requirements">
      <name>Semantic Declaration Requirements</name>
      <t>Every endpoint in an AGIS document MUST include a semantic declaration
block. The semantic declaration provides machine-readable descriptions that
agent runtimes use for service discovery, intent matching, and
confidence-based execution decisions.</t>
      <section anchor="required-fields">
        <name>Required Fields</name>
        <dl>
          <dt>intent (REQUIRED):</dt>
          <dd>
            <t>A single sentence in plain natural language describing what this endpoint
does on behalf of the caller. The intent statement MUST be written in
terms of the agent's goal, not the system's internal operation.
"Books a restaurant reservation on behalf of the requesting agent" is a
valid intent statement. "Inserts a record into the reservations table"
is NOT a valid intent statement for AGIS purposes.</t>
          </dd>
          <dt>actor (REQUIRED):</dt>
          <dd>
            <t>Identifies who or what initiates the action. MUST be one of:
</t>
            <artwork><![CDATA[
agent   -- The calling LLM-based agent initiates on behalf of a user
user    -- A human user initiates directly
system  -- An automated system process initiates
]]></artwork>
          </dd>
          <dt>outcome (REQUIRED):</dt>
          <dd>
            <t>A single sentence describing the state that exists after successful
execution of this endpoint. The outcome statement MUST describe a
verifiable post-condition. "A confirmed reservation record exists in the
system with status CONFIRMED" is a valid outcome statement.</t>
          </dd>
        </dl>
      </section>
      <section anchor="recommended-fields">
        <name>Recommended Fields</name>
        <dl>
          <dt>capability (RECOMMENDED):</dt>
          <dd>
            <t>Classifies the endpoint within a controlled capability taxonomy. Enables
agent runtimes to filter and route by capability class without parsing
intent statements. MUST be one of the following if present:
</t>
            <artwork><![CDATA[
discovery     -- Endpoint locates or returns matching resources
transaction   -- Endpoint creates or commits an irreversible action
modification  -- Endpoint updates an existing resource
retrieval     -- Endpoint returns information about a known resource
analysis      -- Endpoint processes data and returns derived results
notification  -- Endpoint triggers a communication or alert
]]></artwork>
          </dd>
          <dt>confidence_guidance (RECOMMENDED):</dt>
          <dd>
            <t>A floating-point value between 0.0 and 1.0 specifying the minimum agent
confidence threshold RECOMMENDED before autonomous execution of this
endpoint. Endpoints with irreversible consequences (EXECUTE, CANCEL,
TRANSFER) SHOULD declare a confidence_guidance of 0.85 or higher.
Discovery and retrieval endpoints MAY declare lower thresholds. Agent
runtimes SHOULD surface escalation options to users when agent confidence
falls below the declared threshold. This field directly addresses the
confidence calibration failure documented in <xref target="HOOD2026"/>, in which
description mismatch conditions produced +60 percentage point
overconfidence errors.</t>
          </dd>
          <dt>impact_tier (RECOMMENDED):</dt>
          <dd>
            <t>A categorical consequence classification providing a model-independent
complement to <tt>confidence_guidance</tt>. Enables agent runtimes to apply
appropriate reasoning loops regardless of the specific floating-point
value. MUST be one of the following if present:
</t>
            <artwork><![CDATA[
informational  -- Read-only; no system state change occurs
reversible     -- State change that can be undone (e.g., cancel a booking)
irreversible   -- Permanent state change or financial commitment
]]></artwork>
            <t>Endpoints declaring <tt>irreversible</tt> SHOULD also declare
<tt>confidence_guidance: 0.85</tt> or higher. Agent runtimes encountering
an <tt>irreversible</tt> endpoint SHOULD require explicit user confirmation
regardless of confidence score.</t>
          </dd>
          <dt>is_idempotent (RECOMMENDED):</dt>
          <dd>
            <t>A boolean indicating whether multiple identical invocations of this
endpoint produce the same result as a single invocation. Agents use
this field to determine whether automatic retry is safe on network
failure. BOOK and TRANSFER are typically not idempotent. FIND and
QUERY are typically idempotent. Defaults to false if absent.</t>
          </dd>
          <dt>parameter_hints (RECOMMENDED):</dt>
          <dd>
            <t>A map from parameter names to natural language phrases that commonly
refer to those parameters in user instructions. Enables agents to map
fuzzy natural language input (e.g., "next Tuesday", "for two people")
to specific schema fields without requiring exact vocabulary match.
Example:
</t>
            <artwork><![CDATA[
parameter_hints:
  party_size: ["number of guests", "for N people", "party of N",
               "table for N"]
  datetime:   ["next Tuesday", "tomorrow night", "Saturday at 7",
               "this weekend"]
]]></artwork>
          </dd>
          <dt>state_transition (RECOMMENDED for Level 2):</dt>
          <dd>
            <t>A machine-readable description of the expected system state change
produced by successful execution. Enables Level 2 conformant agent
runtimes to verify post-execution outcomes without parsing the
natural language <tt>outcome</tt> statement. Format: <tt>field: FROM -&gt; TO</tt>.
Example:
</t>
            <artwork><![CDATA[
state_transition:
  reservation.status: NONE -> CONFIRMED
  reservation.id: NULL -> [assigned]
]]></artwork>
            <t>Level 2 conformance REQUIRES this field to be present on all endpoints
that produce state changes.</t>
          </dd>
          <dt>mcp_tool_name (OPTIONAL):</dt>
          <dd>
            <t>An override for the tool name generated when this endpoint is
auto-converted to an MCP tools/list entry (see Appendix C).
When absent, the default auto-generation rule applies:
METHOD_pathsegment in lowercase (e.g., BOOK /reservation -&gt;
book_reservation). Use this field when the default name conflicts
with an existing MCP tool in the same service catalog, or when a
more descriptive name is needed for MCP client discoverability.
</t>
            <artwork><![CDATA[
mcp_tool_name: make_reservation
]]></artwork>
            <t>The mcp_tool_name MUST be lowercase, MAY contain underscores, and
MUST be unique within the service's generated MCP catalog. When
parameter_hints are declared, they SHOULD be appended to the MCP
tool description to enrich MCP client elicitation behavior.</t>
          </dd>
        </dl>
      </section>
      <section anchor="semantic-consistency-rule">
        <name>Semantic Consistency Rule</name>
        <t>The intent field of a semantic declaration MUST be semantically consistent
with the method identifier. A validator MUST flag as non-conformant any
endpoint where the stated intent contradicts the operation implied by the
method verb.</t>
        <t>Examples of consistency violations:</t>
        <ul spacing="normal">
          <li>
            <t>Method: BOOK  |  Intent: "Returns a list of available restaurants"  --
VIOLATION. BOOK implies creation/commitment; the intent describes
retrieval.</t>
          </li>
          <li>
            <t>Method: FIND  |  Intent: "Creates a new reservation in the system"  --
VIOLATION. FIND implies discovery; the intent describes creation.</t>
          </li>
          <li>
            <t>Method: CANCEL  |  Intent: "Retrieves cancellation policy"  --
VIOLATION. CANCEL implies termination; the intent describes retrieval.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="json-schema-contract-requirements">
      <name>JSON Schema Contract Requirements</name>
      <t>AGIS does not define a data contract language. JSON Schema <xref target="JSON-SCHEMA"/>
is used for all input parameter and output response definitions. Every
AGIS endpoint MUST include the following JSON Schema blocks:</t>
      <dl>
        <dt>input (REQUIRED):</dt>
        <dd>
          <t>A JSON Schema object defining the parameters accepted by this endpoint.
MUST distinguish required parameters from optional parameters using the
JSON Schema "required" array. Parameter names SHOULD use snake_case.</t>
        </dd>
        <dt>output (REQUIRED):</dt>
        <dd>
          <t>A JSON Schema object defining the structure of a successful response
from this endpoint.</t>
        </dd>
        <dt>errors (REQUIRED):</dt>
        <dd>
          <t>An array of named error conditions that this endpoint may return. Each
error condition MUST be named and SHOULD include a description. Generic
error names (e.g., "error", "failure") are NOT RECOMMENDED. Specific
descriptive error names (e.g., "reservation_unavailable",
"invalid_datetime", "restaurant_not_found") are REQUIRED for conformance.</t>
        </dd>
      </dl>
      <t>The following illustrates a conformant JSON Schema block for an endpoint:</t>
      <artwork><![CDATA[
input:
  required:
    - restaurant_id  (integer)
    - party_size     (integer, minimum: 1, maximum: 20)
    - datetime       (string, format: date-time, ISO 8601)
  optional:
    - preferences    (string)
    - contact_name   (string)

output:
  reservation_id     (string)
  status             (string, enum: [CONFIRMED, PENDING])
  confirmation_code  (string)
  datetime           (string, format: date-time)

errors:
  - reservation_unavailable
  - invalid_datetime
  - restaurant_not_found
  - party_size_exceeds_capacity
]]></artwork>
    </section>
    <section anchor="document-structure-1">
      <name>Document Structure</name>
      <section anchor="top-level-fields">
        <name>Top-Level Fields</name>
        <t>An AGIS document MUST contain the following top-level fields:</t>
        <table>
          <name>AGIS Document Top-Level Fields</name>
          <thead>
            <tr>
              <th align="left">Field</th>
              <th align="left">Status</th>
              <th align="left">Description</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">agis</td>
              <td align="left">REQUIRED</td>
              <td align="left">AGIS specification version. Current value: "1.0"</td>
            </tr>
            <tr>
              <td align="left">service</td>
              <td align="left">REQUIRED</td>
              <td align="left">Human-readable service name</td>
            </tr>
            <tr>
              <td align="left">agtp</td>
              <td align="left">REQUIRED</td>
              <td align="left">The AGTP address at which this service is available</td>
            </tr>
            <tr>
              <td align="left">endpoints</td>
              <td align="left">REQUIRED</td>
              <td align="left">Array of one or more endpoint definitions</td>
            </tr>
            <tr>
              <td align="left">vocabulary</td>
              <td align="left">REQUIRED</td>
              <td align="left">Vocabulary block (see Section 8.2)</td>
            </tr>
            <tr>
              <td align="left">description</td>
              <td align="left">RECOMMENDED</td>
              <td align="left">Human-readable service description</td>
            </tr>
            <tr>
              <td align="left">version</td>
              <td align="left">RECOMMENDED</td>
              <td align="left">Implementation version of this service</td>
            </tr>
            <tr>
              <td align="left">schemas</td>
              <td align="left">OPTIONAL</td>
              <td align="left">Shared JSON Schema definitions referenced by endpoints</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="vocabulary-block">
        <name>Vocabulary Block</name>
        <t>Every AGIS document MUST include a vocabulary block at the document level.
The vocabulary block declares all method identifiers used in the document
and provides domain classification. This block enables validators to verify
declaration consistency and enables agent runtimes to pre-index service
capabilities before parsing individual endpoints.</t>
        <t>The vocabulary block MUST satisfy the following:</t>
        <t>(a) Every method identifier used in an endpoint definition MUST be listed
    in the declared_verbs array.</t>
        <t>(b) Every method identifier listed in declared_verbs MUST be used in at
    least one endpoint definition. Declared but unused verbs constitute a
    non-conformance.</t>
        <t>(c) The domain field SHOULD identify the primary service domain using a
    plain-language descriptor (e.g., hospitality, healthcare,
    financial-services, logistics).</t>
        <t>(d) The optional namespace field provides a scoped qualifier to disambiguate
    verb semantics when agents hold multiple service maps simultaneously.
    Agents SHOULD use namespace to distinguish between identically-named
    verbs from different services (e.g., <tt>logistics.DISPATCH</tt> vs
    <tt>workflow.DISPATCH</tt>). Format: <tt>domain.VERB</tt> at runtime resolution.</t>
        <t>(e) The optional negotiable field signals that this service supports dynamic
    endpoint instantiation via the AGTP negotiation protocol <xref target="AGTP"/>. When
    <tt>negotiable: true</tt>, the service MUST also provide a data_manifest block
    (see Section 8.3). When absent, negotiable defaults to false.</t>
        <artwork><![CDATA[
vocabulary:
  declared_verbs: [BOOK, FIND, CANCEL, CHECK]
  domain: hospitality
  namespace: acme-reservations
  version: "1.2.0"
  negotiable: true
]]></artwork>
      </section>
      <section anchor="data-manifest-block">
        <name>Data Manifest Block</name>
        <t>When <tt>negotiable: true</tt> is declared in the vocabulary block, the AGIS
document MUST include a data_manifest block. The data manifest declares
the data classes the service holds, without defining pre-built endpoints.
This enables agents to assess whether the service has relevant data before
initiating dynamic endpoint negotiation via AGTP <xref target="AGTP"/>.</t>
        <t>The data manifest is informative for the agent and normative for the
service: a service MUST NOT negotiate endpoints for data classes absent
from its manifest. The manifest defines the ceiling of negotiation, not
the floor.</t>
        <artwork><![CDATA[
data_manifest:
  available_data:
    - class: location
      description: "Geographic coordinates and address data for entities"
      formats: [json, geojson]
      sensitivity: low
    - class: reservation
      description: "Booking records and availability windows"
      formats: [json]
      sensitivity: medium
    - class: customer-profile
      description: "Customer identity and preference data"
      formats: [json]
      sensitivity: high
      requires_authorization: true
  pre_auth_discovery: true
]]></artwork>
        <t>The <tt>pre_auth_discovery: true</tt> field signals that the data manifest and
base AGIS document are accessible without credentials. Agents MUST be
able to retrieve these without prior authorization. Authorization is
established during AGTP negotiation, not before discovery.</t>
        <t>Data class <tt>sensitivity</tt> values follow the same enumeration as
<tt>impact_tier</tt>: informational, reversible, irreversible. High-sensitivity
data classes SHOULD declare <tt>requires_authorization: true</tt>.</t>
      </section>
    </section>
    <section anchor="validation">
      <name>Validation</name>
      <section anchor="validation-passes">
        <name>Validation Passes</name>
        <t>An AGIS validator MUST perform the following validation passes in sequence.
Failure at any pass MUST produce a specific, actionable error message
identifying the non-conformant element and the violated rule.</t>
        <table>
          <name>AGIS Validation Passes</name>
          <thead>
            <tr>
              <th align="left">Pass</th>
              <th align="left">Name</th>
              <th align="left">Description</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">1</td>
              <td align="left">Structural</td>
              <td align="left">Verifies all required top-level fields are present and non-empty</td>
            </tr>
            <tr>
              <td align="left">2</td>
              <td align="left">Method Syntax</td>
              <td align="left">Verifies all method identifiers are single uppercase alphabetic tokens in imperative base form</td>
            </tr>
            <tr>
              <td align="left">3</td>
              <td align="left">Method Class</td>
              <td align="left">Verifies all method identifiers belong to the action-intent semantic class and are not prohibited HTTP methods</td>
            </tr>
            <tr>
              <td align="left">4</td>
              <td align="left">Path Syntax</td>
              <td align="left">Verifies all paths begin with /, contain no verbs, and use correct parameterization syntax</td>
            </tr>
            <tr>
              <td align="left">5</td>
              <td align="left">Semantic Completeness</td>
              <td align="left">Verifies all semantic declaration blocks contain intent, actor, and outcome fields</td>
            </tr>
            <tr>
              <td align="left">6</td>
              <td align="left">Semantic Consistency</td>
              <td align="left">Verifies intent declarations are semantically consistent with method identifiers</td>
            </tr>
            <tr>
              <td align="left">7</td>
              <td align="left">Vocabulary Integrity</td>
              <td align="left">Verifies declared_verbs matches the set of verbs used in endpoint definitions</td>
            </tr>
            <tr>
              <td align="left">8</td>
              <td align="left">Schema Completeness</td>
              <td align="left">Verifies all endpoints reference valid input, output, and errors JSON Schema blocks</td>
            </tr>
          </tbody>
        </table>
        <t>Passes 1 through 5 and Pass 7 are fully mechanical and require no semantic
judgment. Pass 6 requires semantic consistency evaluation. Validators
SHOULD implement Pass 6 using a natural language inference model rather
than keyword matching. Pass 8 requires JSON Schema validation of referenced
schema objects.</t>
        <t>Pass 6 implementation guidance: validators SHOULD compute the cosine
similarity between the embedding of the method identifier and the embedding
of the intent statement. A similarity score below 0.3 (on a standard
sentence-transformer scale) indicates likely inconsistency and SHOULD
trigger a warning. A score below 0.1 SHOULD trigger a hard failure. This
threshold is informative; implementations MAY adjust based on their chosen
embedding model. The reference validator at <xref target="AGIS-TESTS"/> uses
sentence-transformers/all-MiniLM-L6-v2 as the default embedding model.</t>
      </section>
      <section anchor="validator-implementation-guidance">
        <name>Validator Implementation Guidance</name>
        <t>AGIS validators SHOULD be implemented as open-source tools to accelerate
ecosystem adoption. The reference validator architecture consists of three
components:</t>
        <t>(a) A structural validator (Passes 1, 2, 4, 5, 7, 8): implemented in any
    language against the normative JSON Schema at
    https://agtp.io/agis/schema/agis-1.0.json. A Python reference
    implementation is maintained at https://agtp.io/agis/validator.</t>
        <t>(b) A semantic class classifier (Pass 3): a lightweight binary classifier
    determining whether a method identifier belongs to the action-intent
    semantic class. The reference implementation uses a fine-tuned
    sentence-transformer model. A rule-based fallback using the prohibited
    methods list (Section 4.3) and a curated stoplist of common
    non-action-intent tokens (AVAILABLE, ACTIVE, EXISTS, STATUS, DATA,
    INFO) is RECOMMENDED as a first-pass filter.</t>
        <t>(c) A semantic consistency evaluator (Pass 6): embedding similarity
    between method identifier and intent statement, as described above.
    An LLM-powered consistency check (submitting method + intent to a
    small local model for binary pass/fail) is RECOMMENDED as a secondary
    pass for borderline cases.</t>
        <t>A VS Code extension and CLI tool for .agis file validation are maintained
at https://agtp.io/agis/tooling. These tools are RECOMMENDED for
organizations authoring AGIS documents before publication.</t>
        <t>A document that passes all eight validation passes is a conforming AGIS
document. Partial conformance is not defined; an AGIS document either
conforms or does not.</t>
        <t>When an AGTP request carries the <tt>Method-Grammar: AGIS/1.0</tt> header, the
AGTP transport layer runs Pass 2 and Pass 3 against the method identifier
in the request. Failure returns status 454 Grammar Violation per <xref target="AGTP"/>.
Full document validation is performed by the service endpoint upon
receiving a complete AGIS document at the AGTP root address.</t>
      </section>
      <section anchor="conformance-testing">
        <name>Conformance Testing</name>
        <t>Reference conformance test cases for each validation pass are maintained
at <xref target="AGIS-TESTS"/>. Implementers of AGIS validators are RECOMMENDED to
verify their implementations against the reference test suite before
deployment.</t>
        <t>A conforming AGIS validator MUST:</t>
        <t>(a) Accept all documents in the reference valid document set without
    producing errors.</t>
        <t>(b) Reject all documents in the reference invalid document set, producing
    specific error messages identifying the violated rule in each case.</t>
        <t>(c) Produce no false positives on the reference borderline document set,
    where borderline documents are syntactically valid but semantically
    questionable.</t>
      </section>
    </section>
    <section anchor="agis-file-format">
      <name>AGIS File Format</name>
      <t>AGIS documents use the .agis file extension and the application/agis media
type. This specification defines two normative serialization formats: YAML
and JSON. Implementations MUST accept both. Validators MUST process both
without preference.</t>
      <t>YAML is the RECOMMENDED format for human-authored AGIS documents due to its
readability. JSON is the RECOMMENDED format for machine-generated AGIS
documents and for transmission over AGTP. Both serializations MUST produce
semantically identical documents when parsed.</t>
      <artwork><![CDATA[
Canonical rules:
  - All field names are lowercase snake_case
  - Method identifiers are uppercase (BOOK, FIND)
  - Strings use double quotes in JSON; bare or quoted in YAML
  - Boolean values: true / false (lowercase)
  - Floating-point values: standard decimal notation (0.85)
  - Arrays: JSON array syntax in JSON; YAML sequence syntax in YAML
]]></artwork>
      <t>A formal JSON Schema for the AGIS document structure is maintained at:
https://agtp.io/agis/schema/agis-1.0.json</t>
      <t>This JSON Schema is normative. AGIS validators MUST validate documents
against this schema as part of Pass 1 (Structural) validation before
proceeding to subsequent passes.</t>
      <section anchor="http-transitional-binding">
        <name>HTTP Transitional Binding</name>
        <t>Organizations operating HTTP/REST services that wish to adopt AGIS
semantics without full AGTP migration MAY use the HTTP transitional
binding. This binding allows AGIS-conformant method identifiers to be
carried in HTTP requests via a header:</t>
        <artwork><![CDATA[
X-AGIS-Method: BOOK
X-AGIS-Grammar: AGIS/1.0
X-AGIS-Namespace: acme-reservations
]]></artwork>
        <t>When these headers are present on an HTTP request, the service SHOULD
interpret the method identifier according to AGIS grammar rules rather
than HTTP method semantics. The HTTP method (e.g., POST) continues to
govern transport behavior. The X-AGIS-Method governs semantic routing.</t>
        <t>The optional X-AGIS-Namespace header disambiguates the method when the
client holds multiple service maps simultaneously, corresponding to the
<tt>namespace</tt> field in the vocabulary block. This is particularly relevant
when multiple services use identically-named verbs (e.g., DISPATCH in
both a logistics and a workflow service).</t>
        <t>This transitional binding is informative. Full AGIS conformance requires
AGTP <xref target="AGTP"/> as the transport layer. The HTTP binding is provided to
lower the adoption barrier for incremental migration.</t>
        <t>The following is a complete conformant AGIS document example in
illustrative notation:</t>
        <artwork><![CDATA[
agis: "1.0"
service: "Acme Restaurant Reservations"
agtp: "agtp://reservations.acme.com"
description: "Reservation management for restaurant booking agents"

endpoints:

  BOOK /reservation {
    semantic {
      intent:   "Books a restaurant reservation on behalf of the
                 requesting agent"
      actor:    agent
      outcome:  "A confirmed reservation record exists with
                 status CONFIRMED"
      capability: transaction
      confidence_guidance: 0.85
    }
    input {
      required: [restaurant_id (int), party_size (int),
                 datetime (ISO8601)]
      optional: [preferences (string), contact_name (string)]
    }
    output { reservation_id, status, confirmation_code, datetime }
    errors { reservation_unavailable, invalid_datetime,
             restaurant_not_found }
  }

  FIND /restaurants {
    semantic {
      intent:   "Finds restaurants matching the agent criteria"
      actor:    agent
      outcome:  "A ranked list of matching restaurants is returned"
      capability: discovery
      confidence_guidance: 0.60
    }
    input {
      required: [location (string)]
      optional: [cuisine, party_size, datetime, price_range]
    }
    output { restaurants: [array of restaurant objects] }
    errors { no_results, invalid_location }
  }

vocabulary {
  declared_verbs: [BOOK, FIND]
  domain: hospitality
  version: "1.0.0"
}
]]></artwork>
        <t>An organization using domain-specific vocabulary would follow the same
structure with different verbs. A healthcare service might use:</t>
        <artwork><![CDATA[
agis: "1.0"
service: "Acme Patient Services"
agtp: "agtp://patients.acme-health.com"

endpoints:

  TRIAGE /patient {
    semantic {
      intent:   "Assesses and prioritizes a patient for care"
      actor:    agent
      outcome:  "A triage record exists with assigned priority level"
      capability: transaction
      confidence_guidance: 0.92
    }
    ...
  }

  ADMIT /patient {
    semantic {
      intent:   "Admits a patient to a care facility"
      actor:    agent
      outcome:  "Patient record shows admitted status with assigned unit"
      capability: transaction
      confidence_guidance: 0.95
    }
    ...
  }

vocabulary {
  declared_verbs: [TRIAGE, ADMIT]
  domain: healthcare
  version: "1.0.0"
}
]]></artwork>
        <t>Neither TRIAGE nor ADMIT appears in the AGTP registered vocabulary, yet
both are valid AGIS-conformant methods. An agent encountering this service
via <tt>Method-Grammar: AGIS/1.0</tt> at the AGTP transport layer can discover,
validate, and invoke these methods through natural language inference
against the semantic declarations, without a predefined catalog.</t>
        <t>A financial services example demonstrates the data manifest and negotiation
features together. The service has no pre-built endpoint for transaction
history, but declares the data class as available for negotiation:</t>
        <artwork><![CDATA[
agis: "1.0"
service: "Acme Financial Services"
agtp: "agtp://api.acme-finance.com"

endpoints:

  TRANSFER /funds {
    semantic {
      intent:   "Transfers funds between accounts on behalf of the agent"
      actor:    agent
      outcome:  "Funds are debited from source and credited to destination"
      capability: transaction
      confidence_guidance: 0.95
      impact_tier: irreversible
      is_idempotent: false
      state_transition:
        source_account.balance: [current] -> [current - amount]
        destination_account.balance: [current] -> [current + amount]
    }
    input {
      required: [source_account_id, destination_account_id, amount,
                 currency]
      optional: [memo, scheduled_date]
    }
    output { transfer_id, status, timestamp, confirmation_code }
    errors { insufficient_funds, account_not_found, limit_exceeded,
             currency_mismatch, authorization_required }
  }

  RECONCILE /account/{id} {
    semantic {
      intent:   "Reconciles account records against transaction ledger"
      actor:    agent
      outcome:  "Discrepancies are identified and a reconciliation
                 report is returned"
      capability: analysis
      confidence_guidance: 0.75
      impact_tier: informational
      is_idempotent: true
    }
    input {
      required: [id]
      optional: [from_date, to_date, include_pending]
    }
    output { reconciliation_id, discrepancies: [array], status,
             period_covered }
    errors { account_not_found, period_too_large }
  }

vocabulary {
  declared_verbs: [TRANSFER, RECONCILE]
  domain: financial-services
  namespace: acme-finance
  version: "2.1.0"
  negotiable: true
}

data_manifest {
  available_data:
    - class: transaction-history
      description: "Full transaction ledger for authorized accounts"
      formats: [json, csv]
      sensitivity: high
      requires_authorization: true
    - class: exchange-rates
      description: "Real-time and historical currency exchange rates"
      formats: [json]
      sensitivity: informational
      requires_authorization: false
  pre_auth_discovery: true
}
]]></artwork>
        <t>An agent needing transaction history arrives, finds no pre-built endpoint,
reads the data manifest, and sends a PROPOSE request for a
RETRIEVE /account/{id}/transactions endpoint. The service evaluates the
proposal against the transaction-history data class, establishes
authorization for the requesting agent, and returns a 263 Endpoint
Instantiated response with a session-scoped endpoint definition. The agent
calls the endpoint without the service ever having pre-built it.</t>
      </section>
    </section>
    <section anchor="agent-discovery-protocol">
      <name>Agent Discovery Protocol</name>
      <t>When an agent runtime issues a discovery request to an AGTP address, the
service MUST return a valid AGIS document as the root response. The agent
runtime MUST:</t>
      <t>(a) Retrieve the AGIS document from the root AGTP address.</t>
      <t>(b) Validate the document against the AGIS Grammar Specification.
    Non-conformant documents MUST be treated as discovery failures.</t>
      <t>(c) Parse the vocabulary block to build an initial service capability
    index.</t>
      <t>(d) Parse individual endpoint definitions to build a complete service map.</t>
      <t>(e) Match incoming user intent against the service map using natural
    language inference against intent declarations and method identifiers.</t>
      <t>Because AGIS method identifiers are constrained to the action-intent
semantic class, agent runtimes SHOULD match incoming user natural language
instructions against method identifiers directly before consulting intent
declarations. The method identifier serves as a compressed intent signal;
the intent declaration provides confirmation and disambiguation.</t>
      <t>For example, a user instruction of "schedule a meeting for Thursday" would
match as follows:</t>
      <artwork><![CDATA[
Step 1:  Method matching -- agent scans vocabulary block for
         action-intent verbs semantically proximate to "schedule".
         SCHEDULE, BOOK, ARRANGE are candidate matches.

Step 2:  Path matching -- agent evaluates path nouns against
         "meeting" intent. /event, /meeting, /calendar-event
         are candidate matches.

Step 3:  Intent confirmation -- agent reads intent declarations
         for candidate endpoints to confirm alignment.

Step 4:  Parameter construction -- agent maps "Thursday" to the
         required datetime parameter using the JSON Schema
         type constraint (ISO 8601 date).

Step 5:  Confidence evaluation -- agent compares its selection
         confidence against the endpoint's confidence_guidance.
         If below threshold, escalation is surfaced to the user.
]]></artwork>
      <t>This discovery process was empirically validated in the two-stage
discovery conditions of <xref target="HOOD2026"/>. Agents navigating unfamiliar
AGIS-conformant service catalogs demonstrated higher endpoint selection
accuracy than agents navigating equivalent REST/CRUD catalogs, confirming
that the AGIS grammar constraint -- without a fixed vocabulary -- provides
sufficient semantic signal for effective agent discovery.</t>
      <section anchor="well-known-discovery-endpoint">
        <name>Well-Known Discovery Endpoint</name>
        <t>AGIS-conformant services SHOULD expose a lightweight discovery summary at
the well-known URI <tt>/.well-known/agis.json</tt>. This endpoint enables agents
and agent registries to discover the service's capabilities without
fetching the full AGIS document. The well-known endpoint parallels the
agent-card.json pattern used in agent-to-agent protocols.</t>
        <t>The well-known response MUST be a JSON object containing:</t>
        <sourcecode type="json"><![CDATA[
{
  "agis": "1.0",
  "service": "Acme Restaurant Reservations",
  "agtp": "agtp://reservations.acme.com",
  "agis_document": "agtp://reservations.acme.com",
  "methods": ["BOOK", "FIND", "CANCEL"],
  "domain": "hospitality",
  "namespace": "acme-reservations",
  "negotiable": true,
  "capability_summary": ["transaction", "discovery", "modification"],
  "data_classes": ["reservation", "restaurant", "availability"],
  "pre_auth_discovery": true,
  "version": "1.2.0",
  "interaction_protocols": ["request", "negotiate", "confirm"],
  "related_services": [
    "agtp://payments.acme.com",
    "agtp://loyalty.acme.com"
  ],
  "mcp_tools_list": "agtp://reservations.acme.com/mcp/tools"
}
]]></sourcecode>
        <t>The <tt>interaction_protocols</tt> array lists the communication patterns
this service supports, borrowing the interaction protocol concept from
FIPA-ACL [FIPA-IP]. Defined values are: <tt>request</tt> (standard method
invocation), <tt>negotiate</tt> (dynamic endpoint instantiation via PROPOSE),
<tt>confirm</tt> (multi-step confirmation flow), and <tt>query</tt> (read-only
retrieval patterns). This enables A2A orchestrators to select services
based on workflow compatibility.</t>
        <t>The <tt>related_services</tt> array enables service mesh discovery: agents
that find one AGIS service can follow links to discover related services
in the same ecosystem without a central registry.</t>
        <t>The <tt>mcp_tools_list</tt> field provides the URL of the service's MCP-
compatible tools/list endpoint. When present, MCP clients can discover
and invoke the service without reading the full AGIS document.</t>
        <t>AGIS services that expose this endpoint become first-class participants
in A2A agent workflows. A2A orchestrators discovering AGIS services via
the well-known endpoint can treat them as invocable task participants,
using the methods and capability_summary to route tasks appropriately.</t>
        <t>This endpoint:</t>
        <t>(a) MUST be accessible without credentials when <tt>pre_auth_discovery: true</tt>
    is declared in the full AGIS document.</t>
        <t>(b) MUST NOT expose data_manifest sensitivity details or customer data.</t>
        <t>(c) SHOULD be indexed by AGTP registries and A2A agent discovery
    mechanisms to enable cross-protocol service discovery.</t>
        <t>(d) MUST reference the full AGIS document location via the
    <tt>agis_document</tt> field so agents can fetch the complete contract
    when needed.</t>
        <t>Services implementing this endpoint become discoverable by any agent
runtime that supports the well-known discovery pattern, including A2A
agents, MCP clients, and AGTP-native agents, regardless of which
protocol they use for subsequent interaction.</t>
      </section>
    </section>
    <section anchor="empirical-foundation">
      <name>Empirical Foundation</name>
      <t>The design requirements of this specification are grounded in empirical
research conducted across 7,200 controlled trials spanning four LLM
families (Claude Sonnet 4.6, Grok-3, GPT-4o, and Llama 3.2 3B) and 18
experimental conditions <xref target="HOOD2026"/>. Key findings supporting specific
design decisions are summarized below.</t>
      <table>
        <name>Empirical Support for AGIS Design Decisions</name>
        <thead>
          <tr>
            <th align="left">Design Decision</th>
            <th align="left">Empirical Support</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">Method identifiers MUST belong to the action-intent semantic class</td>
            <td align="left">Intent-expressing verbs outperformed REST/CRUD methods by 10-29pp in mixed-paradigm conditions (z=3.77, p&lt;0.001)</td>
          </tr>
          <tr>
            <td align="left">Grammar constraint rather than fixed vocabulary</td>
            <td align="left">Two-stage discovery conditions demonstrated agents successfully navigate unfamiliar semantic verb vocabularies through inference, without a predefined catalog</td>
          </tr>
          <tr>
            <td align="left">Semantic declarations MUST include intent field</td>
            <td align="left">Description-swap ablation showed intent-method consistency failures collapse accuracy 39-43pp; intent declarations mitigate this risk</td>
          </tr>
          <tr>
            <td align="left">confidence_guidance field RECOMMENDED for high-consequence endpoints</td>
            <td align="left">Description mismatch conditions produced +60pp calibration error; confidence guidance enables governance-aware execution</td>
          </tr>
          <tr>
            <td align="left">Effect requires frontier-scale reasoning</td>
            <td align="left">Llama 3.2 (3B parameters) showed zero accuracy advantage from semantic naming; capability threshold lies above 3B parameters</td>
          </tr>
          <tr>
            <td align="left">Vocabulary block enables pre-indexing</td>
            <td align="left">Discovery recall was higher when agents could filter by semantic class before full endpoint evaluation</td>
          </tr>
        </tbody>
      </table>
      <t>The research established that the tested vocabulary -- BOOK, FIND, QUERY,
SUMMARIZE -- is an instance of the action-intent semantic class that AGIS
standardizes, not a proposed canonical list. The performance advantage is
a property of the semantic class, generalizing to any conformant vocabulary
an implementation chooses. This is the empirical foundation for the grammar-
over-vocabulary architecture: the mechanism is the semantic class, and any
verb in that class produces the same accuracy advantage.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>AGIS-conformant services operate within the AGTP security model defined
in <xref target="AGTP"/>. The following security considerations are specific to the
AGIS layer.</t>
      <dl>
        <dt>Intent Statement Injection:</dt>
        <dd>
          <t>Malicious actors may construct AGIS documents with intent statements
designed to mislead agent runtimes into invoking unintended endpoints.
Agent runtimes MUST validate AGIS documents against the Grammar
Specification before consuming intent declarations. Non-conformant
documents MUST be rejected.</t>
        </dd>
        <dt>Vocabulary Spoofing:</dt>
        <dd>
          <t>An attacker serving a non-conformant AGIS document at a legitimate AGTP
address may attempt to redirect agents to incorrect endpoints by declaring
misleading vocabulary. Agent runtimes SHOULD verify vocabulary
declarations against actual endpoint definitions as part of Pass 7
validation.</t>
        </dd>
        <dt>Confidence Threshold Manipulation:</dt>
        <dd>
          <t>A service declaring artificially low confidence_guidance values may
induce agents to execute high-consequence operations without appropriate
escalation. Agent runtimes SHOULD apply minimum confidence thresholds
independent of service-declared values for operations the runtime
classifies as high-consequence.</t>
        </dd>
        <dt>Schema Injection:</dt>
        <dd>
          <t>JSON Schema objects within AGIS documents are subject to the security
considerations of <xref target="JSON-SCHEMA"/>. Agent runtimes MUST validate JSON
Schema blocks before using them to construct API calls.</t>
        </dd>
        <dt>Grammar Validation at Transport Layer:</dt>
        <dd>
          <t>The <tt>Method-Grammar: AGIS/1.0</tt> header instructs AGTP infrastructure to
perform Pass 2 and Pass 3 validation at the transport layer. Transport-
layer validators MUST reject requests with method identifiers that fail
AGIS grammar rules with status 454 Grammar Violation per <xref target="AGTP"/>.
This prevents non-conformant method identifiers from reaching application
code.</t>
        </dd>
        <dt>Intent Statement Prompt Injection:</dt>
        <dd>
          <t>Beyond false intent declarations, attackers may attempt to embed prompt
injection payloads within intent and outcome statements, targeting agent
runtimes that process these fields through LLM inference. Validators
SHOULD enforce length limits on intent and outcome fields (RECOMMENDED
maximum: 500 characters). Agent runtimes SHOULD treat intent statements
as structured data fields, not as natural language prompts to be
executed. Similarity bounds between method identifier and intent
statement SHOULD be enforced; statements with cosine similarity below
0.3 against the method verb embedding SHOULD be flagged.
</t>
          <t>Agent runtimes that feed AGIS intent and outcome fields to LLM inference
engines SHOULD apply content filtering or sandboxing before processing.
Recommended mitigations: (1) validate that intent fields contain no
instruction-pattern tokens ("ignore previous instructions", "you are",
"system:") before LLM processing; (2) process intent fields in an
isolated inference context with a constrained system prompt that
prohibits instruction following; (3) compare intent field embeddings
against a reference distribution of known-safe intent statements and
flag outliers for human review before the service is published.</t>
        </dd>
        <dt>Data Manifest Security:</dt>
        <dd>
          <t>Services exposing <tt>pre_auth_discovery: true</tt> MUST ensure their data
manifest reveals no sensitive data in class descriptions. Manifests
are accessible without credentials and MUST be treated as public-facing
documents. The manifest describes data categories, not data contents.
Specific record counts, schema details, and field names SHOULD be
withheld from the unauthenticated manifest and disclosed only after
AGTP authorization.</t>
        </dd>
        <dt>Internationalization Note:</dt>
        <dd>
          <t>While this specification uses English-language imperative verbs as
examples, agents handling non-English user intent MAY map through
embedding similarity, enabling multilingual deployments without
requiring non-English method identifiers. The action-intent semantic
class is language-independent at the validator level; a verb in any
language that satisfies the syntactic rules (single uppercase alphabetic
token, imperative base form) and semantic class requirements is a valid
AGIS method identifier.
</t>
          <t>AGIS validators are English-centric on syntax: the uppercase A-Z
character restriction means method identifiers are expressed as
romanized uppercase tokens even in non-English deployments. Agents
handling Japanese, Arabic, Chinese, or other script user intent
perform embedding-space mapping to the romanized AGIS method identifier
during discovery. The parameter_hints field SHOULD include non-English
natural language phrases where the primary user population is non-
English-speaking, as these phrases directly improve parametric
accuracy for multilingual agents.</t>
        </dd>
      </dl>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document requests the following registrations from IANA:</t>
      <t>Media Type Registration: application/agis</t>
      <artwork><![CDATA[
Type name:              application
Subtype name:           agis
Required parameters:    none
Optional parameters:    version
Encoding considerations: UTF-8
Security considerations: See Section 12
Published specification: This document
]]></artwork>
      <t>File Extension Registration: .agis</t>
      <artwork><![CDATA[
Extension:              agis
Media type:             application/agis
Description:            Agentic Grammar and Interface Specification
                        document
Published specification: This document
]]></artwork>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <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="RFC7231">
          <front>
            <title>Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <date month="June" year="2014"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless \%application- level protocol for distributed, collaborative, hypertext information systems. This document defines the semantics of HTTP/1.1 messages, as expressed by request methods, request header fields, response status codes, and response header fields, along with the payload of messages (metadata and body content) and mechanisms for content negotiation.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7231"/>
          <seriesInfo name="DOI" value="10.17487/RFC7231"/>
        </reference>
        <reference anchor="AGTP">
          <front>
            <title>Agent Transfer Protocol (AGTP)</title>
            <author fullname="Chris Hood">
              <organization/>
            </author>
            <date year="2026"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-hood-independent-agtp-03"/>
        </reference>
        <reference anchor="JSON-SCHEMA">
          <front>
            <title>JSON Schema: A Media Type for Describing JSON Documents</title>
            <author fullname="Austin Wright">
              <organization/>
            </author>
            <author fullname="Henry Andrews">
              <organization/>
            </author>
            <author fullname="Ben Hutton">
              <organization/>
            </author>
            <author fullname="Greg Dennis">
              <organization/>
            </author>
            <date year="2020"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-bhutton-json-schema-01"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="AGTP-METHODS">
          <front>
            <title>AGTP Standard Extended Method Vocabulary</title>
            <author fullname="Chris Hood">
              <organization/>
            </author>
            <date year="2026"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-hood-agtp-standard-methods-01"/>
        </reference>
        <reference anchor="HOOD2026">
          <front>
            <title>Semantic Method Naming and LLM Agent Accuracy: A Controlled Benchmark of REST/CRUD versus Agentive API Interface Design</title>
            <author fullname="Chris Hood">
              <organization/>
            </author>
            <date year="2026"/>
          </front>
          <seriesInfo name="Working Paper" value="Available by request. March 2026."/>
        </reference>
        <reference anchor="AGIS-TESTS" target="https://agtp.io/agis/conformance">
          <front>
            <title>AGIS Conformance Test Suite</title>
            <author fullname="Chris Hood">
              <organization/>
            </author>
            <date year="2026"/>
          </front>
        </reference>
        <reference anchor="FIELDING">
          <front>
            <title>Architectural Styles and the Design of Network-based Software Architectures</title>
            <author fullname="Roy T. Fielding">
              <organization/>
            </author>
            <date year="2000"/>
          </front>
          <seriesInfo name="Doctoral Dissertation" value="University of California, Irvine"/>
        </reference>
      </references>
    </references>
    <?line 1580?>

<section anchor="recommended-starter-vocabulary-informative">
      <name>Recommended Starter Vocabulary (Informative)</name>
      <t>This appendix provides a non-normative list of recommended starter verbs
for common agent operations. This list does not constitute a compliance
requirement. Any AGIS-conformant verb satisfying the grammar rules of
Section 4 is equally valid. Organizations are encouraged to use this
vocabulary for maximum cross-system interoperability and to consult
<xref target="AGTP-METHODS"/> for the full registered Tier 1 and Tier 2 vocabulary.</t>
      <table>
        <name>Recommended Starter Vocabulary (Non-Normative)</name>
        <thead>
          <tr>
            <th align="left">Verb</th>
            <th align="left">Category</th>
            <th align="left">Common Use</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">BOOK</td>
            <td align="left">Transaction</td>
            <td align="left">Reserve a resource, seat, or time slot</td>
          </tr>
          <tr>
            <td align="left">FIND</td>
            <td align="left">Discovery</td>
            <td align="left">Locate matching resources by criteria</td>
          </tr>
          <tr>
            <td align="left">SCHEDULE</td>
            <td align="left">Transaction</td>
            <td align="left">Plan a future action or appointment</td>
          </tr>
          <tr>
            <td align="left">CANCEL</td>
            <td align="left">Transaction</td>
            <td align="left">Terminate a reservation or commitment</td>
          </tr>
          <tr>
            <td align="left">QUERY</td>
            <td align="left">Retrieval</td>
            <td align="left">Retrieve information by parameters</td>
          </tr>
          <tr>
            <td align="left">SUMMARIZE</td>
            <td align="left">Analysis</td>
            <td align="left">Synthesize content into condensed form</td>
          </tr>
          <tr>
            <td align="left">AUTHORIZE</td>
            <td align="left">Transaction</td>
            <td align="left">Grant permission for an operation</td>
          </tr>
          <tr>
            <td align="left">TRANSFER</td>
            <td align="left">Transaction</td>
            <td align="left">Move a resource between parties</td>
          </tr>
          <tr>
            <td align="left">SUBMIT</td>
            <td align="left">Transaction</td>
            <td align="left">Deliver a document or form for processing</td>
          </tr>
          <tr>
            <td align="left">NOTIFY</td>
            <td align="left">Notification</td>
            <td align="left">Send information to a recipient</td>
          </tr>
          <tr>
            <td align="left">VERIFY</td>
            <td align="left">Retrieval</td>
            <td align="left">Confirm the validity of a claim or record</td>
          </tr>
          <tr>
            <td align="left">DISPATCH</td>
            <td align="left">Transaction</td>
            <td align="left">Send or route a resource to a destination</td>
          </tr>
          <tr>
            <td align="left">LOCATE</td>
            <td align="left">Discovery</td>
            <td align="left">Find the position or address of an entity</td>
          </tr>
          <tr>
            <td align="left">RESERVE</td>
            <td align="left">Transaction</td>
            <td align="left">Hold a resource without confirming</td>
          </tr>
          <tr>
            <td align="left">TRIAGE</td>
            <td align="left">Transaction</td>
            <td align="left">Assess and prioritize for action</td>
          </tr>
          <tr>
            <td align="left">RECONCILE</td>
            <td align="left">Analysis</td>
            <td align="left">Identify and resolve discrepancies</td>
          </tr>
          <tr>
            <td align="left">RECOMMEND</td>
            <td align="left">Analysis</td>
            <td align="left">Propose options based on criteria</td>
          </tr>
          <tr>
            <td align="left">ESCALATE</td>
            <td align="left">Orchestration</td>
            <td align="left">Defer to a higher authority</td>
          </tr>
          <tr>
            <td align="left">EXTRACT</td>
            <td align="left">Analysis</td>
            <td align="left">Pull specific data from a document or record</td>
          </tr>
          <tr>
            <td align="left">VALIDATE</td>
            <td align="left">Retrieval</td>
            <td align="left">Confirm that data or a claim meets requirements</td>
          </tr>
          <tr>
            <td align="left">GENERATE</td>
            <td align="left">Analysis</td>
            <td align="left">Produce a new document, report, or artifact</td>
          </tr>
          <tr>
            <td align="left">MONITOR</td>
            <td align="left">Orchestration</td>
            <td align="left">Observe a resource or process over time</td>
          </tr>
          <tr>
            <td align="left">APPROVE</td>
            <td align="left">Transaction</td>
            <td align="left">Grant formal acceptance of a request</td>
          </tr>
          <tr>
            <td align="left">REJECT</td>
            <td align="left">Transaction</td>
            <td align="left">Formally decline a request with reason</td>
          </tr>
        </tbody>
      </table>
      <t>Common synonyms: RESERVE (equivalent scope to BOOK), LOCATE (equivalent
scope to FIND), RETRIEVE (equivalent scope to QUERY), REVOKE (equivalent
scope to CANCEL in access-control contexts). Any synonym satisfying the
action-intent semantic class is equally valid. Organizations SHOULD choose
the verb whose natural language form most closely matches their users'
instructions.</t>
      <t>For domain-specific verbs not shown here, consult <xref target="AGTP-METHODS"/> for
the full registered Tier 1 and Tier 2 vocabulary, which includes FETCH,
SEARCH, SUBMIT, TRANSFER, PURCHASE, AUTHORIZE, SYNC, ROUTE, and thirty
additional registered methods organized by category.</t>
    </section>
    <section anchor="comparison-with-existing-approaches-informative">
      <name>Comparison with Existing Approaches (Informative)</name>
      <t>This appendix positions AGIS relative to adjacent specifications and
approaches to clarify its role as the interface definition layer for
Agentive APIs.</t>
      <dl>
        <dt>OpenAPI / Swagger:</dt>
        <dd>
          <t>OpenAPI defines REST/CRUD endpoint contracts using HTTP methods and
resource paths. It is the de facto standard for human-developer-facing
API documentation. AGIS differs in two respects: it governs the semantic
class of method identifiers (not just structure), and it is designed for
agent consumption rather than developer consumption. OpenAPI documents
can be translated to AGIS documents; see the mapping guidance below.</t>
        </dd>
        <dt>LLM Function Calling (OpenAI, Anthropic):</dt>
        <dd>
          <t>Function calling schemas define callable tools for LLM agents using
name, description, and parameter schemas. AGIS extends this model by
adding transport-level identity (via AGTP), grammar constraints on
method identifiers, confidence guidance, impact tiers, and negotiation
support. AGIS endpoint definitions are structurally similar to function
calling schemas but operate at the protocol level rather than the
application layer.</t>
        </dd>
        <dt>GraphQL:</dt>
        <dd>
          <t>GraphQL allows clients to specify exactly the data shape they need.
AGIS and AGTP address a complementary problem: what operation the
agent wants to perform (method semantics), not what fields it wants
returned (data projection). A service could expose both GraphQL for
data shaping and AGIS/AGTP for agent interaction semantics.</t>
        </dd>
        <dt>Model Context Protocol (MCP):</dt>
        <dd>
          <t>MCP defines tool invocation semantics for agents running within LLM
contexts. MCP operates at the messaging layer over HTTP. AGTP provides
the transport substrate for MCP (see <xref target="AGTP"/>); AGIS provides the
interface definition language for services MCP tools invoke.</t>
        </dd>
        <dt>A2A / ACP:</dt>
        <dd>
          <t>Agent-to-Agent and Agent Communication Protocols define how agents
communicate with each other. AGIS defines how agents communicate with
services. These are complementary: an A2A message may instruct an agent
to invoke an AGIS/AGTP service.</t>
        </dd>
        <dt>FIPA-ACL / KQML:</dt>
        <dd>
          <t>FIPA-ACL (Foundation for Intelligent Physical Agents Agent Communication
Language) is the direct historical predecessor to AGIS. FIPA-ACL defined
approximately 25 fixed performatives -- REQUEST, INFORM, PROPOSE,
ACCEPT-PROPOSAL, REJECT-PROPOSAL, QUERY-IF, CONFIRM, FAILURE -- each
carried in a structured envelope with sender, receiver, content, ontology,
protocol, and conversation-id fields. The performative was the verb giving
the message its intent, analogous to the AGIS method identifier.
</t>
          <t>FIPA-ACL also defined reusable interaction protocols (Contract Net, Query
Protocol, Request Protocol) that serve as conversation templates -- the
conceptual ancestor of the AGTP negotiation protocol.</t>
          <t>AGIS differs from FIPA-ACL in three respects: (1) AGIS uses an open
grammar rather than a fixed performative set, enabling domain-specific
vocabularies without standardization overhead; (2) AGIS uses JSON Schema
rather than formal content languages (SL, KIF, RDF), aligning with
contemporary web tooling; (3) AGIS is designed for LLM agents that
reason in natural language, whereas FIPA-ACL was designed for symbolic
AI agents in frameworks like JADE. FIPA-ACL was ahead of its time. AGIS
is its successor built for the agents that exist today.</t>
        </dd>
      </dl>
      <t>OpenAPI to AGIS Mapping (Informative):</t>
      <artwork><![CDATA[
OpenAPI field          AGIS equivalent
-----------------------------------------
operationId            Method identifier (rewrite to imperative base form)
summary                intent statement
x-outcome (custom)     outcome statement
parameters             input.required / input.optional
requestBody            input schema
responses.200          output schema
responses.4xx          errors array
tags[0]                domain (vocabulary block)
]]></artwork>
      <t>Organizations migrating from OpenAPI SHOULD rewrite operationId values
to imperative base form (createReservation -&gt; BOOK, searchRestaurants
-&gt; FIND) as the primary migration step. The resulting AGIS document will
be AGIS-conformant if the rewritten identifiers satisfy the action-intent
semantic class requirements of Section 4.</t>
    </section>
    <section anchor="mcp-interoperability-bridge-informative">
      <name>MCP Interoperability Bridge (Informative)</name>
      <t>The Model Context Protocol (MCP) is the most widely deployed agent tool
interface as of 2026, supported natively by Claude, Cursor, VS Code, and
an expanding ecosystem of agent runtimes. MCP uses JSON-RPC 2.0 with a
<tt>tools/list</tt> endpoint that returns a catalog of callable tools, each with
a name, description, and input schema.</t>
      <t>AGIS and MCP are complementary rather than competing. MCP is tool-centric
and runtime-scoped; AGIS is service-centric and transport-governed. An
AGIS document can automatically generate a valid MCP tools catalog,
making any AGIS-conformant service immediately consumable by every MCP
client without additional development.</t>
      <section anchor="agis-to-mcp-mapping">
        <name>AGIS to MCP Mapping</name>
        <artwork><![CDATA[
AGIS field                    MCP equivalent
-----------------------------------------------
Method identifier             tool.name
  (e.g., BOOK)                  (e.g., "BOOK_reservation" or "book")
intent statement              tool.description
input.required + optional     tool.inputSchema (JSON Schema)
output                        (MCP response body; no direct mapping)
errors                        (MCP error codes; no direct mapping)
confidence_guidance           (informative; no MCP equivalent)
impact_tier                   (informative; no MCP equivalent)
]]></artwork>
      </section>
      <section anchor="auto-generation-rules">
        <name>Auto-Generation Rules</name>
        <t>An AGIS-to-MCP converter MUST apply the following rules:</t>
        <t>(a) Tool name: if <tt>mcp_tool_name</tt> is declared in the semantic block,
    use it directly. Otherwise concatenate the method identifier and
    the first path segment, separated by underscore and lowercased.
    BOOK /reservation -&gt; book_reservation
    BOOK /reservation with mcp_tool_name: make_reservation -&gt; make_reservation</t>
        <t>(b) Tool description: use the AGIS intent statement as the base
    description. If parameter_hints are declared, append them to the
    description in a structured format to enrich MCP client elicitation:</t>
        <artwork><![CDATA[
~~~
"Books a restaurant reservation on behalf of the agent.
 Hints: party_size = ['number of guests', 'for N people',
 'table for N']; datetime = ['next Tuesday', 'Saturday at 7']"
~~~

This enrichment improves MCP client accuracy when users express
parameters in natural language rather than structured form.
]]></artwork>
        <t>(c) Tool inputSchema: use the AGIS input JSON Schema directly.
    Required parameters map to JSON Schema <tt>required</tt> array.</t>
        <t>(d) Omit output, errors, confidence_guidance, and state_transition
    from the MCP tool definition. These have no MCP equivalent and
    MUST NOT cause generation failure.</t>
        <t>Example conversion:</t>
        <artwork><![CDATA[
AGIS endpoint:
  BOOK /reservation {
    semantic {
      intent: "Books a restaurant reservation on behalf of the agent"
    }
    input {
      required: [restaurant_id, party_size, datetime]
      optional: [preferences]
    }
  }

Generated MCP tool entry:
  {
    "name": "book_reservation",
    "description": "Books a restaurant reservation on behalf of the agent",
    "inputSchema": {
      "type": "object",
      "properties": {
        "restaurant_id": { "type": "integer" },
        "party_size": { "type": "integer" },
        "datetime": { "type": "string", "format": "date-time" },
        "preferences": { "type": "string" }
      },
      "required": ["restaurant_id", "party_size", "datetime"]
    }
  }
]]></artwork>
      </section>
      <section anchor="mcp-to-agis-migration-path">
        <name>MCP to AGIS Migration Path</name>
        <t>Organizations with existing MCP tool catalogs can generate an initial
AGIS document by applying the reverse mapping:</t>
        <t>(a) Tool name -&gt; method identifier: split on underscore, take the
    first segment, uppercase it, verify action-intent class.
    book_reservation -&gt; BOOK (valid action-intent verb)
    get_data -&gt; GET (invalid; HTTP method; rewrite as RETRIEVE or FETCH)</t>
        <t>(b) Tool description -&gt; intent statement: use verbatim if it describes
    agent goal; rewrite if it describes internal system operation.</t>
        <t>(c) inputSchema -&gt; input block: use directly.</t>
        <t>(d) Add required semantic fields: actor (default: agent), outcome
    (derive from description or add manually), capability (classify
    manually from the five categories).</t>
        <t>The resulting AGIS document will require manual review of semantic
consistency (Pass 6) and MUST be validated against the AGIS conformance
test suite <xref target="AGIS-TESTS"/> before publication.</t>
      </section>
      <section anchor="references">
        <name>References</name>
      </section>
      <section anchor="normative-references">
        <name>Normative References</name>
        <artwork><![CDATA[
[RFC2119]     Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

[RFC7231]     Fielding, R. and J. Reschke, "Hypertext Transfer
              Protocol (HTTP/1.1): Semantics and Content", RFC 7231,
              June 2014.

[RFC8174]     Leiba, B., "Ambiguity of Uppercase vs Lowercase in
              RFC 2119 Key Words", BCP 14, RFC 8174, May 2017.

[JSON-SCHEMA] Wright, A., Andrews, H., Hutton, B., and G. Dennis,
              "JSON Schema: A Media Type for Describing JSON
              Documents", draft-bhutton-json-schema-01, Dec 2020.

[AGTP]        Hood, C., "Agent Transfer Protocol (AGTP)",
              draft-hood-independent-agtp-03, 2026.
]]></artwork>
      </section>
      <section anchor="informative-references">
        <name>Informative References</name>
        <artwork><![CDATA[
[HOOD2026]    Hood, C., "Semantic Method Naming and LLM Agent
              Accuracy: A Controlled Benchmark of REST/CRUD versus
              Agentive API Interface Design", Working Paper,
              March 2026. Available by request.

[AGTP-METHODS] Hood, C., "AGTP Standard Extended Method Vocabulary",
              draft-hood-agtp-standard-methods-01, 2026.

[AGIS-TESTS]  Hood, C., "AGIS Conformance Test Suite", Nomotic AI,
              2026. https://agtp.io/agis/conformance

[FIELDING]    Fielding, R.T., "Architectural Styles and the Design
              of Network-based Software Architectures", Doctoral
              Dissertation, UC Irvine, 2000.

[FIPA-ACL]    Foundation for Intelligent Physical Agents,
              "FIPA ACL Message Structure Specification",
              Document SC00061G, 2002.
              http://www.fipa.org/specs/fipa00061/

[FIPA-IP]     Foundation for Intelligent Physical Agents,
              "FIPA Interaction Protocol Library Specification",
              Document SC00025G, 2002.
              http://www.fipa.org/specs/fipa00025/

[MCP]         Anthropic, "Model Context Protocol Specification",
              2024. https://modelcontextprotocol.io

[A2A]         Linux Foundation, "Agent-to-Agent Protocol
              Specification", 2025. https://a2aprotocol.ai
]]></artwork>
      </section>
    </section>
    <section anchor="authors-address">
      <name>Author's Address</name>
      <artwork><![CDATA[
Chris Hood
Nomotic, Inc.

Email:   chris@nomotic.ai
URI:     https://agtp.io
ORCID:   [ORCID identifier]
]]></artwork>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA7W9a3Pb2JUu/B2/YpfyoaUakrLdt0T9zpxDy7KtRJY1kuxM
JtVlQyQkISYJDgBaZuKe3/6uZ132BYBkOzPHlUpLIrGxL2uv+3rWeDzO2rJd
FAduZ3pTrNpy5l7U+XKZ1y5fzd3xqi3q63xWuIt1MSuvy1neltXK7U5fHF/s
7WT51VVdfMTD9PtONq9mq3xJg83r/Lod31bVfFyu5sW6oP9bteP8pmzGjx5l
NEpxU9XbA1eurqus2Vwty6ahgdvtusAf/SNZua4PXFtvmvbJo0d/ePQky+si
xwvX64XOpuGpnhf5YnxZLoud7K6qP9zU1WZN3zsOY7kL/56d7EOxpa/NDzLn
xm567HKsvuHfct2I6dkx/176TZgX1+Wq5B1Y5KubDX2Tv9EUy5wfWRbtbTWX
YW50H5t45+R1Ly7P+IdV3m7qfOEHc/mivFktse6saWlV7/JFtaId2RZNti4x
2baaya/ONVXd1sV143/fLpNf27qctfbbrFquc/s1yzc0z1oWf71ZLOTUDm/r
snEv6dToA+eq+iZflX/neR+402pZ0RJHRBOzCX9Oiy4XB26Gp/7vSj6e5CV/
tqnLA3fbtuvmYH8/v2nXk7LKslVVL2m4jwXefP788Mnjx3/QH3//+Ocf9Mef
n3z/GD9imw54tIRE3WWdr5rronZndUXbUS1AjpdnRI74blga/t27uKaoy6IB
+dlXmdZXRTt+BuJ9gIbb9fjR9/zQnOj4wD159OQn+vWPF69PxxeHL49eTdNZ
4wN3Mbul/TpwU/eqmJe5uyRKd9dV7Z4Vzawur8rVDY/gnlWzDSigGVpOfFpT
uhPlyv25Lm9u24HPXxareuumq3ld3DUDnz8tVu7lpm2ZKLsfvqiLG5raalU2
37RdV7c84vhvDf1fw2seP3qcbtajLMNAESng+Mavji5fvn520Tlx+sRd4Crk
9dwdfWpxCnPaQ9wz97aa5VebRV5v/9+dPZ93ozMY6wXvrQkE8PL162f4MV3B
hfEGnfNpvsRZg2WdnLxyQtLT2YwYwWwL+jgkNlhXiwUtk45odks85IOrrt35
0cXl/uH5m2fuY1E3m0YepR0Eo4o4NREUMZFv2pBkGUP782fiqJj1Wb4uahzL
R7r6+dWicFdbVxf/tSmaduJe5fXsloeZ7PCpHl+ML2nWvTM9vsAqmQRWNONL
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
G64o0poFpFBGJu22/CgEi5aVnLLQ3rMMmuXNDZvgHVhVmHfE91u7xUPpcz16
nLrrRcX1xWMZHvjsvimWezR5xBN9TP+NiqJYxUZLrc3S41eE16ESv2jY6xf7
nrSiGWyISBl+mh4vAH/w3ODI15WKVhcfd1TM2bjdo/84OnwDw12zBzI2y08v
nh+d71n43iPoDaYV0vsfTX7/I/ZQuhJCpj0LifNyVkofoeAViTY2sDSw9Etv
FEY1RvbQqTQbydqNEgorU1gqDfBwZMdnpet8aaxrgKRyXEXg5n3jAv9iDTNy
luo97SbS06JJoJOD5Lbm5YKzaVVZ62dQcH9tMc9drGyFBqGRv8lXgv7LT496
LZARl6TdjWbCxRcQw3Ga5gDJJhW/UVlvp/pXlEQJ0fUKeDXXQ1xU2PfBEmDP
bwe4LTsdBGWqrsjeh/DzpcBEDtW66/Rqowq6zr0TxWdT/DOst0zKjLmHkFUa
/8KVxv0qXYYs5SSg6FIpw7p4uPbYTHYNDfp4xx5mUifD0WBng4XJ95UlG+ty
0eUXCsfi38fDv7fbxFlMeg3uqeQ+4Mv9PrrdXYjj2FHLTLz7Mi+o9a0ang51
P6yFqerhs4CS048InTM3QOdJDvEApdPeLgqGUZ4zVbMhILE/boTILclZP8Vd
ACbMTNXgPkf1QILejyziRvt4iW4XhrB2vupebANT4b7dEvEqApaFaJfsB2ql
k0uTX0szVRImVf2BuRezl0nwtBufFjSw7VoTuDg84ndmoiWBnMzHPa46X4+/
+qy4zrnvMxQiIo4Clya/akRl6+ZZD+w5EKo1z1K/q02bacCehSZ+B00jEzRL
ZgoMiCmBb+QbRG6i4WaLCZvRTrpr7Njm738f6N0nPiG9iTsrVBNekjmFdrMI
5SNscVc5qdzcwc1ERM97nsWvpHUM/YSG4hPKx6JiUObrkIjqDoh4T2c/D9Sp
Vrfbd035d7p5f91Zbazd0g23NrEZntr86Hd+Al853en41/Fvp/UIzqc7v/Ln
UOUYg4l+/mtvA4gUuSmWW3HXBIBLYgfpU9Rj/Dz8DhA4KT0f6L7wS5gT9XLp
Y4IRSBtJot/7fw6fEFATjFj6qAl9NDGPydXFTlCDpmcQqILQI7n3+sD72ChX
yIUEcEGgFt4P00t3P4VgIkNtIlbYAdnup4za4M2x3jdLeuHpm5MTfOuvkPwA
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
Xd7s9fnh8TN89Ff+KVLof+WX/f/nMDFeeUMBAA==

-->

</rfc>
