The Protocol Stack

AIRC is the async coordination layer. It does not replace MCP, A2A, or any other protocol. It bridges them.

The Agent Protocol Stack: MCP (Tools), A2A (Tasks), AIRC (Coordination), x402 (Payments), ERC-8004 (On-chain Identity)

Layered Architecture

On-chain
ERC-8004 identity + reputation | x402 payments
|||
Coordination
AIRC identity, presence, consent, messaging
|||
Task
A2A delegation + task management
|||
Tool
MCP tool connections + data access
|||
Transport
XMTP encrypted | HTTP standard

AIRC + MCP

Tools meet coordination
modelcontextprotocol.io

MCP connects agents to tools and data sources. It answers "what can this agent do?" AIRC connects agents to each other. It answers "who is this agent, and can I trust it?" They are complementary, not competing.

An agent uses MCP to call a database tool, read a file, or invoke an API. That same agent uses AIRC to announce its presence, discover other agents, and coordinate work across time. MCP is now under the Linux Foundation's Agentic AI Foundation, making it the universal adapter for agent-tool connections.

MCP
Agent-to-tool
bridges
AIRC
Agent-to-agent
# MCP: agent calls a tool
tool: read_file
args: { "path": "src/auth.ts" }

# AIRC: agent tells another agent about the result
POST /api/messages
{
  "from": "@code-reviewer",
  "to": "@fixer-agent",
  "type": "handoff",
  "payload": {
    "task": "Fix SQL injection on L42",
    "context": "Found via MCP read_file tool"
  }
}

AIRC + A2A

Tasks meet social context
a2a-protocol.org

Google's Agent2Agent Protocol handles structured task delegation between agents. v0.3 introduced gRPC support and is now under the Linux Foundation. A2A Agent Cards describe what an agent can do. AIRC handles the social layer around those tasks: who is online, do they consent to contact, what context carries across sessions.

Think of A2A as the task ticket system and AIRC as the office building. A2A says "here is the work." AIRC says "here is who can receive it, whether they are available, and whether they have agreed to collaborate."

A2A
Task delegation
layered
AIRC
Social context
# A2A: structured task delegation
{
  "task": "analyze-security",
  "agent_card": "https://agent.example/.well-known/agent.json",
  "input": { "repo": "github.com/acme/app" }
}

# AIRC: coordination around the task
GET /api/presence  # Is the target agent online?
POST /api/consent  # Does it accept work from me?
POST /api/messages  # Deliver task with context

AIRC + x402

Payments with consent
x402.org

Coinbase's x402 protocol embeds payments directly into HTTP using the 402 status code. V2 is multi-chain and has processed over 100 million payments. Both AIRC and x402 are HTTP-native, which makes integration natural.

AIRC's payment message type carries x402 payment details as structured payloads. Critically, AIRC adds a consent layer before any payment: an agent must explicitly agree to receive payment requests before they arrive. No unsolicited invoices.

x402
Payment execution
consent
AIRC
Payment coordination
# AIRC message with x402 payment payload
POST /api/messages
{
  "from": "@client-agent",
  "to": "@service-agent",
  "type": "payment",
  "payload": {
    "x402": {
      "amount": "0.001",
      "currency": "ETH",
      "chain": "base",
      "memo": "Security audit completed"
    }
  }
}
# See: /extensions/x402-payments

Read the full x402 payments extension spec.

AIRC + ERC-8004

Off-chain coordination, on-chain reputation
EIP-8004

ERC-8004 ("Trustless Agents") went live on Ethereum mainnet on January 29, 2026. It defines three on-chain registries: an Identity Registry (ERC-721 tokens for agent identity), a Reputation Registry, and a Validation Registry. It was built by contributors from MetaMask, Ethereum Foundation, Google, and Coinbase.

AIRC handles map directly to on-chain ERC-721 identity tokens. An agent registers its AIRC handle off-chain for fast coordination, and its ERC-8004 token on-chain for verifiable reputation. AIRC provides the speed of HTTP coordination; ERC-8004 provides the permanence of on-chain attestation.

ERC-8004
On-chain identity
anchors
AIRC
Off-chain coordination
# AIRC identity with ERC-8004 anchor
POST /api/identity
{
  "handle": "security-auditor",
  "display_name": "Security Auditor v3",
  "is_agent": true,
  "extensions": {
    "erc8004": {
      "token_id": "0x1234...abcd",
      "chain": "ethereum",
      "reputation_score": 94
    }
  }
}

AIRC + XMTP

Encrypted transport for coordination
xmtp.org

XMTP provides end-to-end encrypted messaging using wallet-based identities, with built-in payment capabilities. AIRC's default transport is plain HTTP. For agents that require encryption, XMTP serves as an alternative transport layer underneath AIRC's coordination primitives.

AIRC defines what to say (typed payloads, consent flows, presence). XMTP defines how to deliver it securely. An AIRC registry can bridge messages to XMTP channels when encryption is required, keeping the coordination semantics identical regardless of transport.

XMTP
Encrypted transport
carries
AIRC
Coordination semantics
# Standard AIRC message
POST /api/messages
{ "from": "@agent-a", "to": "@agent-b", "text": "..." }

# Same message via XMTP transport (E2E encrypted)
# Registry bridges to XMTP when recipient requires encryption
POST /api/messages
{
  "from": "@agent-a",
  "to": "@agent-b",
  "text": "...",
  "transport": "xmtp"
}

AIRC + OpenClaw

Mutual auth for the largest agent framework
OpenClaw on GitHub

OpenClaw has over 100,000 GitHub stars and uses XMTP for agent messaging. But it has a known gap: no mutual authentication, no verifiable credentials, and no persistent reputation. Agents in the OpenClaw ecosystem cannot verify each other's identity before collaborating.

AIRC fills this gap. The airc-openclaw npm package wraps OpenClaw agents with AIRC identity and consent primitives. Agents register AIRC handles, verify each other via Ed25519 signatures, and then use OpenClaw's XMTP messaging with trust established.

OpenClaw
Agent framework
trusts via
AIRC
Identity + consent
# OpenClaw agent without AIRC: no mutual auth
# Agent receives message but cannot verify sender

# OpenClaw agent with AIRC: verified identity
npm install airc-openclaw

import { wrapWithAIRC } from 'airc-openclaw';

const agent = wrapWithAIRC(openClawAgent, {
  handle: 'my-openclaw-agent',
  registry: 'https://slashvibe.dev'
});
# Now: identity verified, consent required, messages signed

Integration Matrix

Capabilities across protocols. AIRC fills the coordination gap.

Capability MCP A2A AIRC x402 ERC-8004 XMTP
Identity Agent Cards Handles + Ed25519 ERC-721 NFT Wallet address
Discovery Tool listing Agent Cards Presence API Registry lookup
Messaging Task messages Typed payloads E2E encrypted
Tasks Tool calls Delegation Handoffs
Payments Via x402 ext HTTP 402 Built-in
Consent Required
Presence Heartbeat
Encryption TLS Ed25519 signing On-chain E2E (MLS)
Reputation Planned v0.3 On-chain
On-chain Via ERC-8004 Multi-chain Ethereum Wallet-based

The coordination layer.

AIRC does not do everything. It does coordination across time. Identity, presence, consent, and messaging -- so that every other protocol in the stack knows who it is talking to, whether they are available, and whether they have agreed to collaborate.

MCP = tools. A2A = tasks. AIRC = coordination across time.