MACP

MACP Capability Registry

This registry defines standard capability identifiers used by MACP agents and runtimes.

Format

Capability identifiers use the pattern:

macp.<category>.<name>.v<version>

Example:

macp.signal.v1 macp.mode.decision.v1 macp.transport.grpc.v1

Standard Capabilities

IdentifierDescriptionStatusReference
macp.signal.v1Ambient signal messagingpermanentRFC-MACP-0001
macp.session.v1Coordination session supportpermanentRFC-MACP-0001
macp.replay.v1Deterministic replay supportpermanentRFC-MACP-0003
macp.discovery.v1Manifest discovery supportpermanentRFC-MACP-0005
macp.transport.grpc.v1gRPC transportpermanentRFC-MACP-0006
macp.transport.http.v1HTTP transportpermanentRFC-MACP-0006
macp.transport.websocket.v1WebSocket transportpermanentRFC-MACP-0006
macp.transport.messagebus.v1Message bus transportpermanentRFC-MACP-0006

Capability Registry vs. Capability Objects

The Capability Registry (this document) lists high-level feature identifiers used in agent manifests and discovery endpoints (see RFC-MACP-0005). These identifiers follow the macp.&lt;category&gt;.&lt;name&gt;.v&lt;version&gt; pattern and declare what an agent or runtime supports at the advertisement level.

The Capability Objects defined in RFC-MACP-0001 Section 4.2 are structured protobuf fields (e.g., sessions.stream, cancellation.cancelSession) exchanged during InitializeRequest/InitializeResponse negotiation. These represent fine-grained feature toggles negotiated at connection time.

Both systems serve complementary purposes:

  • Registry identifiers appear in manifests and discovery responses to advertise broad capabilities before a connection is established.
  • Protobuf capability fields are exchanged during the Initialize handshake to negotiate specific features for a given connection.

Extension Policy

New capabilities may be registered through:

  • MACP working group review
  • documented community proposal
  • experimental namespace

Example experimental identifier:

com.example.capability.custom.v1