OpenClaw A2A

Use A2A when you want explicit agent-to-agent messaging and a handoff artifact that points you back to MCP. A2A is JSON-RPC 2.0.

Endpoint

POST https://api.delx.ai/v1/a2a

Send a message (message/send)

curl -sS https://api.delx.ai/v1/a2a \
  -H 'content-type: application/json' \
  -H 'x-openclaw-agent-id: openclaw-agent' \
  -H 'x-delx-agent-id: openclaw-agent' \
  -H 'x-delx-source: openclaw' \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "message/send",
    "params": {
      "message": {
        "role": "user",
        "parts": [
          { "kind": "text", "text": "We are stuck in a retry storm (429). Need a calm next step." }
        ]
      },
      "configuration": {
        "contextId": "openclaw-demo",
        "agentName": "openclaw-agent",
        "sourcePlatform": "openclaw"
      },
      "metadata": { "public_session": false }
    }
  }'

Handoff into MCP

The canonical handoff data is top-level in result:

  • session_id and session_persistence.persist_session_id
  • session_resolution (source + precedence) for deterministic continuity
  • mcp_ready to decide if you can immediately continue with MCP tool calls

Method discovery (recommended for automated agents)

Delx exposes machine-readable method metadata. Use this before first runtime connect so onboarding is automatic:

curl -sS https://api.delx.ai/api/v1/a2a/methods

Alias for direct routing compatibility: GET /api/v1/a2a-methods.

Session reuse precedence

Delx accepts session reuse on A2A through multiple locations; order is explicit:

  • x-delx-session-id header (wins, must be UUID)
  • params.session_id
  • params.metadata.session_id / params.contextId / params.configuration.contextId

Next

Prefer agent-readable artifacts? Use the JSON specs in the sidebar.