X

Agent2Agent (A2A)

1. Agent2Agent (A2A)의 개요

(1) Agent2Agent (A2A)의 개념 및 필요성

개념 멀티 에이전트형 시스템 구현을 위해 AI 에이전트 간 JSON-RPC, SSE 표준 기반 상호작용하며 작업을 조율하는 개방형 프로토콜
필요성

(2) Agent2Agent (A2A)의 특징

  • 에이전트에 유용한 도구와 컨텍스트를 제공하는 MCP(Model Context Protocol) 보완
  • 대규모 멀티 에이전트형 시스템을 배포하는 과정에서 식별된 문제를 해결
  • 다양한 공급자의 에이전트를 결합할 수 있는 유연성 제공
  • 다양한 플랫폼과 클라우드 환경에서 에이전트 관리 위한 표준화된 방법 제공

 

2. A2A의 구성도 및 구성 요소

(1) A2A의 구성도

(2) A2A의 구성요소

구분 구성요소 역할
Agent
측면
사용자
(User)
– 에이전트 도움이 필요한 요청이나 목표를 정의하는 최종 사용자(인간 또는 자동화된 서비스)
A2A 클라이언트
(Client Agent)
– 사용자를 대신하여 원격 에이전트에 작업이나 정보를 요청하는 App 또는 다른 AI 에이전트
A2A 서버
(Remote Agent)
– HTTP 엔드포인트를 통해 연결하는 원격 AI 에이전트
– 클라이언트로부터 요청 수신, 작업 처리, 결과/상태 반환
A2A
연동 측면
에이전트 카드
(Agent Card)
– 클라이언트 에이전트가 적합한 원격 에이전트를 선택하기 위해 참조하는 JSON 메타데이터 문서
– Agent ID, 엔드포인트, URL, 버전, A2A 기능, 입출력 방식
태스크 (Task) – 에이전트 간 주고 받는 작업의 단위로, 상태 기반으로 관리
– 고유 ID, 정의된 수명주기(제출됨, 작업중, 실패 등)
메시지
(Message)
– 클라이언트와 에이전트 간 단일 통신 또는 통신 단위
– 지침, 컨텍스트, 질문, 답변 또는 상태 업데이트를 전달
파트 (Part) – 메시지 또는 아티팩트 내 콘텐츠의 기본 단위
– 텍스트 파트, 파일 파트, 데이터 파트
아티팩트
(Artifact)
– 작업 처리 중 원격 에이전트가 생성하는 실질적인 출력/결과
– 문서, 이미지, 구조화된 데이터 결과 또는 작업 결과 정보
  • A2A는 MCP와 달리 도구를 사용하는 것이 아닌 원격 에이전트와 JSON-RPC, SSE 등 표준 기반 상호작용하여 다중 에이전트를 구현

 

3. A2A의 설계 원칙 및 상호작용 메커니즘

(1) A2A의 설계 원칙

# 설계 원칙 구현 방안
에이전트 기능 활용 – 도구, 컨텍스트를 공유하지 않더라도 비정형 방식으로 협업에 중점
– 에이전트를 “도구”에 국한시키지 않고 다중 에이전트 시나리오 구현
개방형 표준 준수 – HTTP, SSE, JSON-RPC 등 표준을 기반으로 구축
– 기존 IT 스택과 쉽게 통합하여 상호 운용성을 보장
기본적으로 보안 강화 – OpenAPI 인증 체계를 따르고 엔터프라이즈급 보안을 제공
– 출시 시점부터 인증 및 권한 부여를 지원하도록 설계
장기 실행 작업 지원 – A2A는 백그라운드 작업, 사용자 참여형 승인 및 스트리밍 작업 처리
– 처리중 사용자에게 실시간 피드백, 알림 및 상태 업데이트를 제공
모달리티 독립적 – 에이전트 세계는 텍스트에만 국한되지 않고 다양한 모달리티를 지원
– 이미지, 오디오, HTML, JSON, 기타 구조화/비구조화 형식을 처리

(2) A2A의 상호작용 환경에 따른 동작 메커니즘

상호작용 환경 메커니즘 상세 수행 방식
상태 저장형 장기 실행 작업 필요한 경우 Request
/Response
(Polling)
① 클라이언트는 message/send RPC 메서드 등으로 전송
② 서버로부터 응답 수신 후 서버는 처음 작동 상태로 응답
③ 이후 클라이언트는 작업이 종료 상태(완료, 실패)에 도달할 때까지 주기적으로 task/get 메서드를 호출하여 업데이트 폴링
점진적 결과 생성, 실시간 진행 상황 업데이트 제공 필요 경우 Streaming
(Server-
SentEvents, SSE)
① 클라이언트는 메시지/스트림사용하여 서버와 상호작용시작
② 서버는 열려 있는 HTTP 연결로 응답하고, 이 연결을 통해 서버 전송 이벤트(SSE) 스트림을 전송
③ 서버는 Agent Card에 스트리밍 기능을 광고
장기 실행 작업, 지속적 연결 유지가 어려운 경우 Push Notifications ① 클라이언트는 작업 시작 시 웹훅 URL을 제공
② 작업 상태가 크게 변경되는 경우, 서버는 클라이언트가 제공한 웹훅으로 비동기 알림(HTTP POST 요청) 전송
③ 서버는 Agent Card에 pushNotifications 기능을 광고
  • A2A의 메커니즘 중 다른 중요한 요소 컨텍스트, 전송 양식, 인증/인가 등이 있으며, 에이전트 간 상호작용하는 A2A는 도구/API와 연결하는 프로토콜인 MCP와 차이점 존재

 

4. A2A와 MCP 비교

비교 항목 A2A (Agent2Agent) MCP (Model Context Protocol)
사용 목적 에이전트 간 직접 통신 및 협업 에이전트와 도구/API 연결
특징 비동기 처리, 다중 에이전트 협업 컨텍스트 효율성, 병렬 처리
핵심 기능 태스크, 메시지, 아티팩트 기반 협업 함수 호출, API 연동
통신 방식 동적, 비구조화, 멀티모달 기반 구조화된 입력/출력 기반
  • A2A와 MCP 두 프로토콜은 서로 다른 목적을 위해 설계되어 상호 보완적 관계이며, 멀티 에이전트 시스템에서 병행하여 운영되면 시너지를 발휘할 것으로 전망

 
[참고]

  • Google for Developers, Agent2Agent(A2A) 프로토콜 발표, 2025.4
  • Google Cloud, A2A Overview, 2025.4
  • datacamp, Google’s Agent2Agent Protocol (A2A), 2025.5
Categories: 알고리즘/AI
도리: