AI Agent 구현의 두 갈래: 일반 Tool Calling vs MCP 비교
AI 에이전트를 구축할 때, LLM이 외부 도구를 사용하게 만드는 과정은 필수적입니다. 하지만 최근 등장한 **MCP(Model Context Protocol)**와 기존의 Function/Tool Calling은 비슷해 보이면서도 구조적으로 큰 차이가 있습니다. 오늘은 이 두 방식의 특징과 실제 구현 관점에서의 차이를 상세히 비교해 보겠습니다. 1. 한눈에 보는 비교 요약 구분 일반 Tool Calling (기존 방식) MCP (Model Context Protocol) 핵심 개념 함수 정의와 실행 로직의 수동 연결 도구의 정의와 실행이 결합된 표준화된 서버 실행 주체 에이전트 애플리케이션 (Local, Tightly Coupled) 독립된 MCP 서버 (Remote/Isolated) 통신 규격 모델별 전용 API (OpenAI, Anthropic 등) JSON-RPC 2.0 표준 프로토콜 툴 목록 관리 코드에 하드코딩, 앱 재배포 필요 서버에서 동적으로 list_tools() 조회 확장성 새 툴 추가 시 앱 코드 수정 및 재배포 MCP 서버만 추가·재시작하면 즉시 연동 상호운용성 모델별 규격 변환 코드 직접 작성 필요 MCP 지원 클라이언트라면 어떤 모델이든 재사용 컨텍스트 제공 주로 ‘액션(함수 호출)‘에 집중 툴 + 리소스(파일, DB) + 프롬프트 템플릿 패키지 보안/격리 에이전트 프로세스 내에서 직접 실행 실행 로직이 서버에 캡슐화, 권한 경계 명확 2. 일반 Tool Calling: “직접 요리하기” 방식 일반적인 방식에서 에이전트는 요리사(LLM)가 준 레시피(JSON)를 보고 **직접 요리(함수 실행)**를 합니다. 실행 로직이 에이전트 코드 내부에 깊게 박혀 있는 구조(Tightly Coupled)입니다. ...