바이브 코딩, 자동화, 그리고 MCP
바이브 코딩 = AI에게 외주 맡기기
- 코딩 = 내 작업을 대신하는 프로그램을 개발자가 만든다
- 바이브 코딩 = 내 작업을 대신하는 프로그램을 AI가 만든다
기획자 입장에서 이 둘은 본질적으로 같다. 프로그램 외주를 맡기는 거다.
외주 개발 경험을 돌이켜보면 좋은 의뢰자는 이것들을 잘 하더라.
- 내 문제를 풀기 위한 작업 정의
- 그걸 개발자가 잘 이해할 수 있게 의사소통
- 프로그램을 잘 만들기 위한 리소스 지원
- 만들어진 프로그램이 의도대로 작업을 대신해주는지 검수
- 이 과정에서 본인이 모르는 건 개발자에게 배워서 점차 스스로 할 수 있게 됨
이걸 AI에게 의뢰 맡기는 바이브 코더 입장으로 대입해보면 이런 키워드들이 중요해진다는 걸 알 수 있다.
1) PRD와 유저 플로우 정의
2) 좋은 프롬프트와 지침(Cursor Rules 등) 사용
4) 의도에서 어긋난 부분을 캐치하고 자동화된 테스트 실행
5) 이 과정에서 AI와 핑퐁하며 학습
그러면 3은 뭘까. 이건 프로그램의 두 가지 측면에서 생각할 수 있다.
첫째, 프로그램은 어딘가에서 실행되어야 한다. → 실행 및 배포 환경 결정
둘째, 프로그램은 '입력을 처리해서 출력하는' 코드 뭉치다. → 데이터와 API 제공
하나씩 살펴보자.
프로그램은 실행되어야 한다
개발 외주에서는 개발자는 보통 코드 구현까지만 하고, 배포와 운영 책임은 의뢰자에게 있다. 대신 개발자는 의뢰자가 이 프로그램을 실행할 수 있는 가이드를 제공한다.
AI에게는 코드를 실행하고 배포하는 환경을 알려주면 기깔나게 잘해준다. 특히 웹 브라우저 위에서 돌아가는 코드라면 더욱 그렇다. 예전에는 '정규표현식으로 마크다운 문서의 일부 문법을 지우는' 것과 같은 아주 간단한 스크립트조차 비개발자가 실행/배포하기 쉽지 않았다.

이제는 프롬프팅 좀만 잘하면 클로드 아티팩트, 제미니 캔버스 같은 걸로 나만의 작은 프로그램을 뚝딱 만들어서 실행할 수 있다. 그냥 브라우저에서 그 탭을 열어두면 계속 사용도 가능하다. 남들도 쓰게 하고 싶다면 러버블에서 만들어 배포하면 된다. 전부 순식간에, 무료로 가능하다.
바이브 코딩이라고 해서 꼭 '앱'을 만들 필요 없다. 내 문제를 해결하고 반복 작업을 줄여주는 프로그램이라면 그게 앱이든, 스크립트든, GPTs든, 프롬프트든 상관없다.
프로그램을 더 유용하게 만들어주는 API
하지만 작은 프로그램에는 한계가 있다. 예를 들어 내가 만든 '텍스트에서 특정 마크다운 문법을 제거해주는 앱'을 보자. 여기에는 아무런 외부 의존성이 없다. DB도, API도, LLM도 연결되어있지 않다. 그래서 텍스트 입력도 사용자가 직접 하고, 출력된 텍스트도 사용자가 직접 복사해서 다른 곳에 올려야 한다.
만약 사용자에게 '노션에 써둔 글을 정제해 SNS에 올리는' 목적이 있었다면, 그래서 이런 기능들이 있다면 어땠을까?
- 입력: 노션 페이지 링크만 입력
- 처리: 가져온 글을 LLM에 넣어 SNS에 어울리게 요약 후 마크다운 문법은 제거
- 출력: 글 검토, 승인하면 내 SNS 계정에 자동으로 올려줌
빠른 응답 시간과 범용성을 포기하는 대가로, 해당 작업에 드는 사용자의 시간과 에너지를 많이 줄여줬을 것이다. 즉 특정 목적에 있어서는 더 '유용'해진다.
결국 프로그램의 유용성은 입력/처리/출력 측면에서 사용자가 직접 해야 하는 일을 얼마나 줄여주는가에 달려있다. 그러려면 이 3가지를 해야 한다.
- 입력을 자동화하거나
- 처리를 더 복잡하게 하거나
- 출력을 자동화하거나
일반적인 프로그램에서는 API를 통해 (즉 다른 프로그램과 연결됨으로써) 입출력 자동화와 고도화된 처리가 가능해진다.
- 입력: 노션 권한 얻고 노션 API 호출해서 페이지 내용 가져옴
- 처리: LLM API로 시스템 프롬프트와 함께 노션 페이지 내용 넣어서 SNS에 맞게 응답 받음
- 출력: 쓰레드 권한 얻고 SNS API 호출해서 글 게시
그런데 이렇게 프로그램을 만드는 게 숙련된 개발자에게도 아주 쉬운 일은 아니다. 특히 권한 부여, 즉 API Key나 Access Token 등을 통해 내 프로그램이 다른 프로그램의 데이터를 읽고, 다른 프로그램에 데이터를 쓰게 하는 게 까다롭다. 이걸 더 쉽게 할 수 있을까?
까다로운 API 연동을 대신해주는 자동화 도구와 MCP
여기서 1차로 등장하는 게 Zapier, Make, n8n, IFTTT 같은 자동화 도구다.
예를 들어 노션 데이터베이스에 새 아이템이 올라오면 ChatGPT 돌린 다음 인스타그램에 업로드하도록 설정해둘 수 있다. 원래 인스타그램에 글을 게시하기 위한 API를 호출하려면 전용 앱을 만들어 심사까지 받아야 한다. Zapier나 Make에서는 인스타그램 업로드용 앱을 이미 만들아놨고, 권한을 얻어 데이터를 주고받는 플로우도 다 구현해두었다. 노션, OpenAI API도 마찬가지. 이렇게 하면 까다로운 권한 문제를 신경쓸 필요 없다.

그러나 어떤 사람들에게는 이렇게 '이거 다음 저거'를 구축하는 것조차 어렵고 귀찮을 수 있다.
여기서 2차로 등장하는 게 MCP와 A2A 같은 녀석들이다. 그냥 LLM 챗봇이 다 할 수 있게 해주자, 는 것이다.
일반적인 프로그램이 API를 통해 단순한 로직 이상을 수행할 수 있게 된 것처럼, LLM 챗봇이라는 프로그램도 MCP를 통해 다른 프로그램과 연결되어 단순한(?) 텍스트/이미지/보이스 출력 이상을 수행할 수 있게 된다. 클로드에서 '내 노션 페이지 긁어서 요약한 다음 인스타그램에 올려줘'가 가능해진다는 뜻이다.
물론 이렇게 하려면 적절한 MCP 서버(노션, 인스타그램)를 MCP 클라이언트(클로드)에 연결해야 한다. MCP 서버의 가장 큰 역할이 tool을 통해 API를 대신 호출하는 건데, 노션은 이미 공식 MCP 서버가 있지만 인스타그램은 없다. 그러면 클로드가 인스타그램 API를 어떻게 호출하지?
여기서 다시 Zapier가 나온다. Zapier나 Make가 제공하는 MCP 서버를 통하면 인스타그램 업로드가 가능하다. 즉 클로드에 노션 MCP와 Zapier MCP를 연결하면 된다(사실 Zapier가 노션 연결도 이미 가지고 있긴 하다).
MCP의 잠재력과 한계
이렇게 보면 왜 굳이 MCP를 쓰나 싶을 수도 있다. 현재 챗봇 + MCP로 할 수 있는 작업은 거의 대부분 자동화 도구에서도 할 수 있기 때문이다. 하지만 나는 MCP의 잠재력이 아주 크다고 느끼는데, 여기엔 3가지 이유가 있다.
- 인터페이스가 편리하다. 챗봇 비서가 모두 알아서 해주는 게 궁극의 프로그램 아닐까?
- 중간에 민감한 작업에 대해 사용자 승인을 받기 더 편리하다(human-in-the-loop). 비서가 완벽해지기 전까지는 꼭 필요한 과정이다.
- 단순한 외부 API wrapping 역할을 넘어 파일 시스템 제어, 브라우저 제어 등 내 로컬 PC에서 해야 할 일도 자동화할 수 있을 뿐더러 리소스, 프롬프트 템플릿 등 더 많은 정보도 제공할 수 있다.

그러나, 당연히 MCP가 만능은 아니다. 신경쓸 게 여럿 있다.
MCP를 쓴다는 건 LLM에게 더 많은 권한과 책임을 넘기는 것인데, 그럴수록 보안도 신경써야 한다. 파일 시스템 MCP를 연결했는데 내 중요한 파일 삭제를 무심코 승인한다면? 브라우저 MCP를 통해 내 암호가 유출된다면? 이런 문제를 피하려면 '공식 리모트 MCP' 위주로 사용하는 게 안전하다.
그리고 MCP의 장점은 LLM이 여러 MCP 툴 중 맥락에 맞는 걸 알아서 실행하는 건데, MCP 툴을 너무 많이 주면 내가 원하는 툴이 실행되지 않을 수 있다. 툴 정의가 모두 입력 토큰으로 넘어가므로 LLM 호출 비용과 시간도 늘어난다. LLM 특유의 무작위성을 주의해야 함은 물론이다.
결국 내 프로그램에 API를 연결하든, 자동화 플로우를 설계하든, LLM 챗봇에 MCP를 붙이든 하는 일은 똑같다. '내 일 대신해줘'다. Make, MCP 같은 키워드가 급부상한다고 스트레스받을 필요는 없다. 나에게 편한 방식으로, 각 방식의 장단점을 파악해가며 내 일을 대신하는 프로그램을 만들면 된다.
정리
- 바이브 코딩은 프로그램 개발 외주를 AI에게 맡기는 것이다.
- 내 작업을 잘 대행해주기만 한다면 웹앱, 코드 스니펫, 프롬프트 모두 유용한 프로그램이 될 수 있다.
- 프로그램이 더 유용해지려면 입출력 자동화와 고도화된 처리를 위해 API 연결이 필요하다.
- 자동화 도구들은 API 연결의 까다로움을 대신 해결해준다.
- LLM 챗봇이라는 프로그램도 MCP 연결을 통해 더 유용해질 수 있다. 특히 자동화 도구가 제공하는 MCP 서버를 연결하는 게 강력하다.
API, 자동화, MCP 중 하나만 고집할 필요도 없다. 어떤 작업은 API 직접 호출, 어떤 작업은 Zapier 웹훅 호출, 어떤 작업은 LLM + MCP를 호출할 수도 있다. 클로드에 노션 MCP만 붙이고, Zapier에 노션 to 인스타그램 설정해서 업로드 자동화를 할 수도 있다.
장단점을 고려하여, 내게 맞는 방식으로, 내 문제를 해결하는 프로그램을 (AI와 함께) 만들어보자.
해피 바이브 코딩!
Member discussion