A2A (Agent to Agent) Protocol : AI Agent의 협업
- Agent 간 협업을 위한 공통 언어
- AI 에이전트끼리 서로 소통하고 협력할 수 있게 만들어주는 표준화된 규칙
- 서로 다른 프레임워크, 벤더, 시스템에서 만들어졌더라도 에이전트들끼리 자유롭게 정보교환과 작업 협업 가능
- 여러 플랫폼과 클라우드 환경에서도 에이전트를 통합적으로 관리할 수 있는 이점이 있음
A2A 설계 원칙
- 에이전트 중심 기능 지원
- 공유된 메모리, 도구, 컨텍스트가 없어도 에이전트 간 자연스러운 협업 지원
- 기존 표준 기반
- HTTP, SSE, JSON-RPC와 같은 이미 널리 쓰이는 기술 위에 구축되어 IT 환경과 쉽게 통합 가능
- 기본적 보안 강화
- OpenAPI 수준의 인증 체계를 기본으로 제공, 엔터프라이즈급 보안 보장
- 장기 실행 작업 지원
- 수 초에서 수 일에 이르는 작업도 실시간 피드백과 상태 업데이트를 통해 지원 가능
- 다양한 모달리티 수용
- 텍스트뿐 아니라 오디오, 비디오 스트리밍도 지원
A2A 작동 방식
- 클라이언트 에이전트와 원격 에이전트 간 상호작용
- 클라이언트 에이전트는 작업 요청을 보내고, 원격 에이전트는 이를 수행
- 능력 탐색
- JSON 형식의 “에이전트 카드”를 통해 각 에이전트가 수행 가능한 작업을 알리고, 적합한 에이전트를 선택 가능
- 작업 관리
- 작업은 A2A에서 정의된 구조로, 단기 작업 또는 장기 작업 모두 지원되며, 출력 결과는 “artifact”로 표현
- 협업 기능
- 에이전트 간 메시지를 주고 받으며 컨텍스트, 답변, artifact, 사용자 지시사항 등을 공유
- 사용자 경험 협상
- 메시지 구성 요소(”part”)는 명확한 콘텐츠 형식을 가지며, 클라이언트와 원격 에이전트 간 UI 형식을 협상

주요 개념
- Agent Card : 에이전트의 능력과 엔드포인트, 인증 방식 등을 설명하는 JSON 파일
- A2A Server : 에이전트가 요청을 수신하고 작업을 실행하는 HTTP 엔드포인트
- A2A Client : 다른 에이전트에게 작업을 요청하는 클라이언트 (클라이언트 에이전트)
- Task : 에이전트 간 주고받는 핵심 작업 단위 (상태 기반으로 관리)
- Message / Part / Artifact : 메시지는 작업 내 대화 단위, Part는 메시지 내용 단위, Artifact는 작업 결과
A2A vs MCP 차이점
- MCP
- 함수 호출, API 연동
- 에이전트 ↔ 도구 연결
- 구조화된 입력/출력 기반
- A2A 에이전트를 MCP 리소스로 모델링 가능
- A2A
- 협업, 대화, 작업 분담
- 에이전트 ↔ 에이전트 연결
- 동적, 비구조화, 멀티모달 기반
- 두 프로토콜을 함께 사용하면 확장성 극대화
