차세대 은행은 어떤 모습 일까? - 1편 (Agentic AI)

2025. 9. 7.Tech

 

아이언맨 - 자비스 (Agentic AI)

 

안녕하세요.

케이뱅크 데이터인텔리전스팀에서 Data Scientist로 일하고 있는 조용걸입니다.

 

생성형 AI와 Agent라는 개념이 화두가 되었던 게 엊그제 같은데,

올 3월 OpenAI가 MCP(Model Context Protocol)를 도입한다는 소식으로

작년 11월 엔트로픽이 발표했던 MCP가 폭발적인 관심을 받기 시작하였고

연이어서 4월 Google이 A2A(Agent to Agent) 프로토콜을 발표하면서 AI 쪽에서 다시 한 번 새로운 태동이 일어나고 있습니다.

 

해당 개념들을 하나씩 살펴보면 더 이상 단일 Agent(AI)에 대한 논의는 이제 옛날 이야기가 되었고

  • 여러 단일 Agent들을 어떻게 통합할 것인가? (A2A)
  • 단일 Agent와 외부 도구들과의 연계를 어떻게 할 것인가? (MCP)

 

이를 통해 만들어지는 Agentic AI(에이전틱 AI)라는 개념과 용어가 언론과 세미나 전반에서 빠르게 보편화되어

아이언맨에서만 보던 자비스가 현실에 점점 그 실체를 드러내고 있습니다.

 

 

들어가며

 

그렇다면 Agentic AI와 MCP, A2A 내용들이 차세대 은행과 어떤 관련이 있을까요?

 

미래의 은행앱이 어떤 형태일지에 대해서는 함부로 예단하기 어렵지만 행 내부적으로는 아래 이미지처럼 AI 비서(자비스) or 챗봇 형태의 인터페이스를 생각하고 있는 것 같습니다.

 

예를 들면 앱을 켜게 되면 AI 은행원에게 아래와 같은 사용자 요청 사항을 음성으로(이미지 왼쪽) 또는 텍스트(이미지 오른쪽) 형태로 지시하는 모습처럼요.

 

  • 이체(사용자 간 이체, 수신 상품 입금 등)
  • 거래 조언
  • 고객 상담 Q&A
  • etc....

 

차세대 은행앱의 모습(?)

 

사용자의 요청사항을 수행하기 위해서는 아마 아래 순서처럼 AI가 처리할 것으로 예상 됩니다.

 

  1. 사용자 요청 입력 (음성 or 텍스트)
  2. AI가 사용자 요청을 바탕으로 어떤 Agent를 수행할 건지에 대해 판단 (A2A Client)
  3. 단일 Agent에게 사용자 요청 전달 (Agent)
  4. 사용자 요청을 처리하기 위해 필요한 도구가 있다면 도구 호출 (MCP)
  5. 수행 결과를 A2A Client에게 전달 

이 모두를 가능케 하는 기술이 바로 Agentic AI 입니다.

 

이번 1편에서는 Agentic AI를 구성하는 용어와 개념에 대해 하나씩 살펴보고 바닐라 코드와 데모에 대한 설명은 2편에서 이어서 진행하겠습니다.

 

이미 A2A, MCP, Function Calling 용어를 다 알고 있다면

차세대 은행은 어떤 모습일까? - 2편 (Agentic AI) -> 보러가기

 

A2A (Agent to Agent)

 

그렇다면 이걸 가능케 하는 A2A는 어떤 내용일까요?

 

아래 링크에 들어가면 구글 블로그에 자세하게 기재가 되어 있는데 핵심 내용만 추려보면 

https://developers.googleblog.com/ko/a2a-a-new-era-of-agent-interoperability/ 

 

  • 단일 Agent들은 어플리케이션 단위로 배포가 됨
  • Client Agent를 앞에 두어 배포된 단일 Agent 어플리케이션과 통신하게 함
  • 단일 Agent들은 에이전트 카드를 통해 Client Agent에게 내가 어떤 Agent인지 정보를 제공함

 

여러 프레임워크 또는 회사에서 각기 다른 기능을 가진 Agent를 만들어 배포할 텐데, 이 각기 다른 Agent들을 통합해서 사용하기 위해

서로 합의된 프로토콜 형식대로 Agent 카드를 정의해서 Client Agent에게 정보를 제공하면 멀티 에이전트 생태계에서 협업이 가능하다.라는 게 핵심 내용입니다.

https://developers.googleblog.com/ko/a2a-a-new-era-of-agent-interoperability/

 

 

아래 예시처럼 Air Ticketing Agent에 대한 명세를 아래 json형태로 Client Agent에게 제공하면

Client Agent가 사용자 요청을 받아 요청을 처리할 때, 이 명세를 참고해서 Air Ticketing Agent가 수행되어야 하는지? 판단하는 거죠.

 

 

 

 

참조 : https://github.com/a2aproject/a2a-samples/blob/main/samples/python/agents/a2a_mcp/agent_cards/air_ticketing_agent.json

 

a2a-samples/samples/python/agents/a2a_mcp/agent_cards/air_ticketing_agent.json at main · a2aproject/a2a-samples

Samples using the Agent2Agent (A2A) Protocol. Contribute to a2aproject/a2a-samples development by creating an account on GitHub.

github.com

 

MCP (Model Context Protocol)

 

MCP는 Model Context Protocol의 약자로 AI Agent가 외부 데이터, 도구와 연결할 때 어떻게 확장 가능한 형태로 만들 수 있을까? 에 대한 내용입니다.

 

일반적으로 Agent에서 자주 사용하는 도구(Tool)로는 웹 검색, 내부 PDF와 같은 자료 검색, 메일 발송과 같은 것들이 있는데 기능들이 있는데 사용자의 요청을 어떻게 처리할까에 대해 살펴보면 아래처럼 진행할 것으로 예상됩니다.

 

  1. 사용자 요청을 받는다.
  2. 사용자 요청을 처리하기 위해 내가 가지고 있는 도구가 필요한지 판단한다.
  3. 도구가 필요하다면 해당 도구를 이용하거나 필요하지 않다면 그냥 응대한다.

 

이때, AI가 스스로 도구 사용여부를 판단하고 도구를 사용해야 한다고 판단한다면 도구에 필요한 파라미터들을 추출해서 사용합니다.

기존에 OpenAI가 제공했던 Function Calling기능과 유사한데 해당 개념과의 차별점은 더 이상 단일 코드 레벨 단위로 Tool을 사용하는 것이 아닌, 위에서 소개한 A2A와 마찬가지로 여러 프레임워크 또는 회사에서 개발한 Tool(도구)들을 표준 프로토콜 형태로 명세하여 Agent에게 전달함으로써 확장 가능한 형태로 개발이 가능하다는 점입니다.

 

MCP 형태로 Tool을 개발한다는 것은 도구(Tool)가 어플리케이션 형태로 배포되고 Agent가 이 배포된 Tool을 사용하기 위해서 REST API형태로 호출하게 되는데,  이때 이 도구에 대한 명세를 아래 json형태로 Client Agent에게 제공하여 Agent가 사용자 요청을 수행할 때 판단하는 거죠.

 

아래처럼, Agent가 get_weather이라는 도구(Tool)를 가지고 있는데 사용자 요청이 특정 지역에 대한 날씨가 어떤지 요청이 들어왔을 때, 아래 도구(Tool)에 대한 명세를 참고하여 사용자 요청에서 지역을 추출하여 get_weather를 수행하고 그 결과를 바탕으로 사용자의 질의를 처리합니다.

 

 

 

 

참조 : https://modelcontextprotocol.io/docs/getting-started/intro

 

What is the Model Context Protocol (MCP)? - Model Context Protocol

Responses are generated using AI and may contain mistakes.

modelcontextprotocol.io

 

 

Function Calling

 

MCP 소개할 때 설명 드렸던 Function Calling은 위에 MCP의 단일 코드 레벨이라고 생각하시면 이해가 편한데 어떤 식으로 AI가 수행하는지에 대해서 살펴보면 이해가 편할 것 같아 부가설명 차원에서 한 섹션을 준비해 보았습니다.

 

ChatGPT의 도움을 받아 스텝 별로 코드를 준비했고 Function Calling이 단일 코드레벨 단위의 수행이라면, MCP는 이 호출을 서버와 REST API형태로 호출한다 정도의 차이만 인지하고 다음 편에서 MCP 바닐라 코드를 살펴보면 이해가 쉽게 될 것 같습니다.

 

1. 함수 정의

 

 

 

2. LLM 호출

 

 

 

3. 모델 응답 예시 (tool call)

 

 

 

4. 코드에서 함수 실행 ( <> MCP 서버에서 엔드포인트로 해당 기능 수행)

 

 

 

5. 결과를 다시 모델에 전달 (최종 답변 생성)

 

 

 

마치며

 

이번 1편에서는 차세대 은행앱 구현을 위해 필요한 기술인 Agentic AI에 대한 개념 소개와 

이를 구현하기 위한 기술들인 A2A, MCP 그리고 Function Calling에 대한 개념에 대해 살펴보았는데요.

 

다음 편에서는 해당 기술들에 대해 바닐라 코드 구현한 내용들을 Step by Step으로 살펴보고

케이뱅크 행 내에서는 어떻게 준비하고 있는지 살펴보겠습니다.

 

감사합니다.