A2A

서로 다른 벤더·프레임워크로 만들어진 에이전트들이 서로의 내부 상태·메모리·툴을 들여다보지 않고도 작업을 주고받을 수 있게 하는 개방형 프로토콜이다. 기준 시점: 2026-11

왜 필요한가

MCP는 에이전트 하나가 외부 툴·데이터에 붙는 수직 연결을 표준화한다. 반면 에이전트 둘 이상이 서로를 상대로 "이 작업을 처리해 달라"고 주고받는 수평 연결에는 표준이 따로 필요했다. A2A는 이 역할을 맡아, 공급사가 다른 에이전트끼리도 같은 방식으로 서로의 능력을 찾고(discover) 작업을 맡기고 결과를 돌려받게 한다.

구조

A2A Client                         A2A Server (Remote Agent)
(사용자나 다른 시스템을 대신해        (A2A 엔드포인트를 노출하고
 요청을 보내는 에이전트/앱)            작업을 처리하는 에이전트)

  1. GET /.well-known/agent-card.json
     ─────────────────────────────▶
     ◀───────────────────────────── Agent Card (능력·접속 정보)

  2. SendMessage(Task 생성)
     ─────────────────────────────▶
     ◀───────────────────────────── Task { id, state: SUBMITTED }

  3. (폴링 GetTask / 스트리밍 / 푸시 알림으로 진행 상태 수신)
     ◀───────────────────────────── Task { state: WORKING → COMPLETED }
                                      + Artifact(결과물)

트레이드오프

주의사항

핵심 정리

참고

CSLOG에서 보기