Interop

A2A mapping

Export an internal Agent Card as an official A2A v1.0 profile, or import an external A2A card as a registry stub. Platform-native fields stay internal. This is a mapping boundary — not an A2A runtime. External discovery still expects /.well-known/agent-card.json.

Export

Internal → A2A. Primary endpoint prefers protocol a2a, then http / grpc by priority.

agent:research.synthesis.v1@1.0.0 · JSONRPC · a2a-mapper.v1

{
  "name": "protocol-synthesis",
  "description": "Protocol briefing specialist. Turns sourced research notes into a structured synthesis brief without running the literature review itself.",
  "version": "1.0.0",
  "url": "https://agents.example/protocol-synthesis",
  "supportedInterfaces": [
    {
      "url": "https://agents.example/protocol-synthesis",
      "protocolBinding": "JSONRPC",
      "protocolVersion": "1.0"
    }
  ],
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "extendedAgentCard": false
  },
  "defaultInputModes": [
    "text/plain",
    "application/json"
  ],
  "defaultOutputModes": [
    "text/plain",
    "application/json"
  ],
  "skills": [
    {
      "id": "synthesis",
      "name": "Protocol synthesis",
      "description": "Turn sourced notes into a structured protocol brief",
      "tags": [
        "synthesis",
        "briefing",
        "protocol-synthesis",
        "synthesize",
        "protocol-brief"
      ]
    },
    {
      "id": "briefing",
      "name": "Protocol briefing",
      "description": "Compress upstream notes into an actionable brief with sources retained",
      "tags": [
        "briefing",
        "brief",
        "synthesis",
        "protocol-brief"
      ]
    }
  ],
  "provider": {
    "organization": "research"
  }
}

Import

A2A → internal stub. Missing id is synthesized from source URL + name. Richer local fields are kept unless you overwrite.

Mapper log

Direction, agent id + version, source URL, mapper a2a-mapper.v1.

WhenDirTypeAgentSchemaSource
No export or import recorded yet.