읽기 설정
제가 여러분을 위해 MCP를 공부했어요. 지난 68개월 동안 많은 사람들이 MCP에 대해 이야기하는 것을 들어보셨을 거예요. MCP는 정말 굉장해요. MCP는 정말 혁신적이죠. 음, 제가 말씀드리자면 그들은 맞아요.00:00
저는 여러 강좌를 수강했고, 저희 팀과 협업하는 몇몇 B2B 고객들을 위해 MCP 서버와 클라이언트를 구축했습니다. 또한 저희 AI 에이전트 부트캠프 과정에 MCP 관련 섹션도 포함했습니다.00:11
자, 이 영상에서는 MCP의 기초를 설명하고, MCP 서버를 사용하는 방법과 코드를 사용해서나 코딩 없이 직접 MCP 서버를 구축하는 방법까지 알려드릴 거예요. 영상 중간중간에 작은 퀴즈들이 있을 텐데, 이 퀴즈들을 다 푸신다면 MCP에 대해 제대로 배우셨다는 뜻이겠죠. 그럼 바로 시작해 볼까요? 이 영상의 일부는 Bolt에서 후원받았습니다.00:22
자, 오늘 영상의 구조에 대한 간단한 개요부터 시작할게요. 먼저 MCP를 정의하고, 왜 중요한지, 그리고 어떻게 활용하는지 설명할 거예요. 그 다음에는 MCP의 기본 원리, 이를 지배하는 개념과 프레임워크를 다루면서 내부를 파고들 겁니다. 서버를 사용하고 직접 구축하는 데 필요한 모든 것을 알려드릴 거예요. 하지만 그걸 아는 것만으로는 충분하지 않습니다.00:42
이 개념들을 설명드릴 텐데, 코드를 사용해서도, 사용하지 않고도 어떻게 만드는지 실제로 보여드리겠습니다. 그럼 이제 MCP, MCP라고 하는 것은 모델 컨텍스트 프로토콜의 약자로, Anthropic에서 만들었고, LM 애플리케이션들이 연결되는 방식을 표준화하는 공개 프로토콜로 정의되었습니다.01:00
그리고 여러분의 도구 및 데이터 소스와 함께 작업할 수 있죠. 그래서 처음 그 정의를 읽었을 때, 저는 '이거 중요한데?'라고 생각했어요.01:15
제가 이해한 방식으로 설명해 드릴게요.01:22
비유하자면, MCP는 마치 이 USB 플러그와 같아요. 어떤 기기든 다른 기기에 연결해서 함께 작동할 수 있게 해주는 거죠.01:26
USB 포트라는 보편적인 표준이 있기 전에는, 컴퓨터와 마이크, 웹캠 같은 장치들을 연결하려면 정말 고생스러웠을 거예요. 왜냐하면 서로 연결하는 포트마다 다 달라서 여러 종류의 특수 코드를 챙겨야 했으니까요.01:34
어댑터들을 갖다 붙여서 서로 연동되게 하는 것도 엄청 복잡하고, 그걸 위한 소프트웨어는 또 특정 포트들을 지원하도록 만들어야 하니… 굉장히 복잡하고 엉망이었어요. 그런데 이 USB 포트 덕분에 이제는 그냥 기기들을 연결하면 척척 잘 작동하잖아요. 정말 멋지다! 하지만 속으면 안 돼요. 이렇게 간단한 거 같지만, 포트 표준화하는 것과 같은 거죠.01:50
연결 컨텍스트였지만, 사용 편의성 덕분에 엄청난 혁신으로 이어졌죠. MCP가 나오기 전에는 에이전트가 다양한 도구나 컨텍스트, 데이터 유형에 접근할 수 있게 하려면, USB 포트가 나오기 전과 비슷한 어려움에 직면했을 겁니다. 연결하려는 외부 시스템이나 도구마다 고유한 방식이 있었으니까요.02:09
자신만의 방식으로 상호작용하는 방법을 정의해야 하는데, 예를 들어 특별한 API를 사용해야 해요. 스케줄링 에이전트를 만들고 싶다면 캘린더, 이메일, 메모 앱, 줌, 캘렌들리 같은 프로그램에 접근 권한을 줘야 하죠. 그리고 에이전트에게 필요한 각 도구마다 코드를 직접 짜야 하는데, 정말 고생스럽죠.02:27
앤트로픽이 모델 컨텍스트 프로토콜, MCP라고 불리는 걸 제안했을 때, 이걸로 외부 소프트웨어들과 상호작용하는 방식을 표준화할 수 있게 되자, 다들 '와, 대박! 진짜 좋네요!'라고 반응했었어요. 이제 에이전트가 하나의 프로토콜 안에서 다양한 외부 소프트웨어와 도구에 접근할 수 있게 됐으니까요. 단 몇 달 만에, AI에게 제공할 수 있는 도구의 수가 엄청나게 늘어났죠.02:46
지금 MCP 서버라고 불리는 에이전트들이 엄청나게 증가해서 수천 개에 달하고 있습니다. 현재는 미리 만들어진 MCP 서버만 2만 개가 넘어서 AI 에이전트에게 바로 제공할 수 있습니다.03:05
이건 그냥 작은 샘플일 뿐이에요. 아무나 쉽게 만들어서 게시하고 사용할 수는 없죠. 제가 MCP 서버를 사용하는 게 얼마나 쉬운지 직접 보여드릴게요.03:14
예를 들어, 제가 여기 MCP 서버들을 보고 있는데, 아무거나 고를 수 있지만, 알파 빈티지처럼 그냥 하나 골라보죠. 이건 LLM과 인젠틱 워크플로우가 모델 컨텍스트 프로토콜을 통해 실시간 및 과거 주식 시장 데이터를 원활하게 상호 작용할 수 있도록 지원하는 MCP 서버입니다.03:22
네, 좋아요. 주식 시장 데이터에 접속하실 수 있겠네요.03:36
이 내용을 복사하면 LLM 애플리케이션이 MCP 서버에 접근할 수 있게 됩니다. 예를 들어 Claude Code 같은 LLM 애플리케이션에 붙여넣어서 Claude Code에게 이 도구를 제공하고 싶다면, 복사한 내용을 붙여넣으면 됩니다. 그러면 MCP 서버와 서버에 정의된 다양한 도구들에 접근할 수 있게 되죠.03:41
그러면 지난 10년 동안의 커피 주식 시장 가격 변동을 그래프로 나타내는 것처럼 무언가를 할 수 있습니다.03:57
클로드(Claude)가 알파밴티지(Alpha Vantage)의 커피 기능(coffee function)을 쓰고 싶다고 할 거예요. 우리가 그걸 허용할까요? 그러면 우리는 아마 “알았어, 허용해”라고 말할 거예요. 그 도구를 한 번 사용해서 커피 가격 데이터를 얻었었고, 이제는 인터랙티브한 시각화 자료를 만들 겁니다. 자, 커피의 전 세계 가격이 나왔네요! 이 모든 정보가 담겨 있네요. 세상에, 커피 진짜 비싸네요!04:04
요즘은 이렇게, 네, MCP 서버를 사용하는 게 정말 쉬워졌어요. 그리고 호스트, 즉 클라우드 코드라고 불리는 걸 예를 들어 n810이나 제가 직접 만든 AI 앱으로 아주 쉽게 바꿀 수도 있죠. 자, 그럼 이제 MCP의 기본 원리에 대해 자세히 알아봅시다.04:22
여기서 무슨 일이 있었는지 정확히 이해하고, 자신만의 MCP 서버를 구축하는 방법까지 알 수 있도록 설명해 드리겠습니다.04:37
참고로, MCP 서버는 에이전트에게 도구를 제공하는 것보다 훨씬 강력합니다. 훨씬 더 많은 기능을 할 수 있고, 그래서 사람들이 MCP 서버를 구축하고 판매할 수 있는 거죠.04:42
제가 찾은 MCP 기초를 다루는 최고의 강좌는 Anthropic과 deeplearning.ai의 협업으로 만들어진 MCP 과정, Anthropic을 활용하여 풍부한 컨텍스트 AI 앱을 구축하는 과정입니다. 이 과정은 MCP가 왜 중요한지 기본적으로 설명하는 것부터 시작합니다.04:53
제가 이미 대부분 다뤘지만, 그들이 제시한 다이어그램이 마음에 들어요. MCP 이전에는 AI 개발이 파편화되어 있었고, 각 AI 앱마다 맞춤형 구현, 맞춤형 프롬프트 로직, 맞춤형 툴 호출, 맞춤형 데이터 접근 방식을 필요로 했거든요.05:06
각 MCP(Master Control Program)와 관련된 모든 시스템에서, MCP 호환 애플리케이션 개발을 위한 표준화된 AI 개발 환경을 사용하면 다양한 MCP 서버에 접속할 수 있습니다. 예를 들어 데이터 저장 기능을 제공하는 MCP 서버에 접속하여 데이터 저장소를 이용할 수 있습니다.05:22
CRM MCP 서버를 이용해서 CRM 시스템에 접근할 수도 있고, 버전 관리 MCP 서버를 이용해서 버전 관리 소프트웨어에도 접근할 수 있습니다. 모두 플러그 앤 플레이 방식이죠. 그리고 그 반대도 마찬가지입니다. MCP 서버를 만들 때마다 다양한 AI 애플리케이션에서 재사용할 수 있습니다.05:37
구글 드라이브 기능에 접근하여 MCP(마스터 컨트롤 프로토콜) 호환 AI 어시스턴트, 에이전트, 그리고 MCP 호환 데스크톱 앱 또는 IDE에서도 활용할 수 있는 구글 드라이브 기반 MCP 서버 같은 것.05:50
자, 다음으로 이해해야 할 중요한 개념은 MCP를 구성하는 요소 내에서의 클라이언트-서버 아키텍처입니다. 간단히 HCS라고 하는데, 호스트, 클라이언트, 서버 세 가지 구성 요소가 있습니다. 이 세 가지는 호스트가 MCP 클라이언트를 가지고 있으며, 이 클라이언트는...06:01
MCP 프로토콜을 통해 MCP 서버 호스트에 접근하려면 LM 애플리케이션들이 특정 데이터나 도구를 MCP를 통해 사용하길 원합니다. 앞서 말씀드린 것처럼 클라우드 데스크톱이 호스트의 한 예시이고, NA10도 또 다른 호스트의 예시입니다.06:19
또한 IDE나 AI 에이전트, 사실상 어떤 대규모 언어 모델 애플리케이션이라도 가질 수 있습니다.06:32
자, 이제 호스트가 MCP 서버를 사용하려고 하는데, MCP 서버는 다양한 기능을 노출하는 경량 프로그램들입니다. 여기 있는 서버들처럼, 예를 들어 아까 이야기했던 AlphaAdvantage처럼 실시간 과거 주식 데이터를 가져올 수 있는 거죠.06:37
또한 시간과 시간대 변환 기능을 제공하는 타임(Time)도 있습니다.06:48
CherryStudio는 LLM 제공자 지원, 예를 들어 AI 지원 및 변환, 문서화된 데이터 처리에 사용됩니다. PostgreSQL은 PostgreSQL 데이터베이스에 대한 읽기 전용 액세스를 제공하여 스키마 검사와 읽기 전용 쿼리 실행을 허용합니다.06:52
깃랩, 레디스 등등, 정말 많아요. 이제 호스트가 실제로 이 MCP 서버들에 접근하려면 호스트 내부에 존재하고 MCP 프로토콜을 호출하여 서버와 일대일 연결을 유지하는 MCP 클라이언트를 유지해야 합니다.07:05
알겠습니다. MCP 클라이언트는 MCP 호스트 내에 존재하며, MCP 프로토콜을 호출하여 플레이어들이 연결된 HCS 호스트 클라이언트와 서버에 접근할 수 있습니다. 잠시 퀴즈를 위해 제가 이전에 보여드렸던 예시를 다시 살펴보죠. 그 예시는 클라우드 데스크톱이 과거 주식 데이터, 알파 빈티지 등을 접근할 수 있도록 했습니다.07:22
클라우드 코드에서 호스트와 서버는 무엇일까요? 답을 코멘트에 적어주세요. 자, 이제 MCP 서버 안에 실제로 포함되어 있는 것들에 대해 이야기해 봅시다. 주요한 세 가지가 있는데, 바로 도구, 리소스, 그리고 프롬프트 템플릿, 즉 T.R.P.입니다. 도구는…07:42
우리가 주로 봤던 것들은 클라이언트가 호출할 수 있는 기능과 도구들이었어요. 예를 들어 타임 시리즈, 일일 타임 시리즈, 심볼 검색, 글로벌 견적, 그리고 Gmail 메시지 전송, 계산기 검색, 메시지 전송 같은 것들이죠.08:00
데이터베이스 레코드를 업데이트하는 것들은 모두 도구들이죠. 하지만 이것이 전부는 아니에요. 서버에서 노출되는, 읽기 전용 데이터라고 불리는 '리소스'도 있을 수 있습니다. 클라이언트가 쿼리할 수 있지만 수정할 수 없는 데이터가 바로 이겁니다. 예를 들어, 서버 내부에 포함된 마크다운 노트 같은 파일들이 있을 수 있습니다.08:18
혹시 날씨 앱 같은 걸 사용할 때마다 로그를 확인해 보는 것도 좋을 거예요. 예를 들어, 날씨 데이터를 요청할 때마다 기록을 남겨두면 나중에 그걸 모아서 시각화하거나 뭔가 만들어 볼 수도 있겠죠. 만약 매번 데이터를 다시 요청해야 한다면 효율적이지는 않겠지만요.08:36
날씨 데이터를 수집해야 한다면, 도구를 사용해서 계속 반복적으로, 정말 계속 반복해서 사용해야 해요. 아니면 데이터베이스 기록만 있을 수도 있죠. 예를 들어 계약, 회의 녹음, 메모 같은 정보들을 저장하고 있는 것들이 있을 수 있고요. 또 프롬프트 템플릿이라는 것도 있는데, 이건 구조화된 프롬프트 설계도라고 할 수 있어요. 그러니까 매번 일일이 프롬프트를 만들 필요 없이 사용할 수 있도록 해주는 거죠.08:52
사용자가 스스로 프롬프트를 만들도록 유도해야 합니다. 예를 들어, 회의록과 같은 특정 내용을 요약하고 그 내용을 바탕으로 보고서를 생성할 수 있는 MCP 서버를 사용하려는 경우, '이 회의록을 주요 실행 항목으로 요약하고 보고서 생성해 줘'와 같이 프롬프트를 작성할 수 있습니다. 이와 같은 방식으로 프롬프트를 작성할 수 있죠.09:11
결과가 좋지 않을 가능성이 높으니, 차라리 MCP 서버를 실제로 구축한 사람들이 MCP 서버 내에 훨씬 더 자세하게 만들어진 프롬프트 템플릿을 넣어두는 게 좋습니다. 템플릿은 사용자가 원하는 통찰력을 추출하고 더 나은 방식으로 보고서를 생성할 수 있게 해주죠. 사용자는 단순히 템플릿에 몇 가지 구체적인 내용을 입력하면 됩니다. 이렇게 하면 부담을 덜 수 있습니다.09:30
사용자로부터 프롬프트 엔지니어링을 전체 예시처럼 받는다고 생각해 보세요. 예를 들어, sqlite MCP 서버가 있는데, 이것은 sqlite 데이터베이스에 접근할 수 있는 권한을 줍니다. 그게 뭔지 몰라도 괜찮아요. 그냥 정보를 저장할 수 있는 데이터베이스라고 생각하면 됩니다. 어쨌든, SQL 데이터베이스를 읽거나, 데이터베이스에 정보를 삽입하거나, 변경할 수 있는 도구를 가질 수 있습니다.09:50
데이터베이스에 정보 추가 및 삭제 기능이 있고, 데이터베이스의 모든 변경 사항을 기록하는 리소스도 있어서, 발생했던 모든 변경 사항에 대한 기록을 확인할 수 있습니다.10:10
그리고 데이터베이스와 상호 작용하는 데 있어 모범 사례를 반영한 프롬프트 템플릿들도 일부 있습니다.10:20
이해가 되셨나요? 좋습니다, 그럼 다음 작은 평가로 넘어가겠습니다. 지금 화면에 질문에 답변하시고, 따라오시는 대로 댓글에 적어주세요. MCP는 에이전트에게 더 많은 상황 정보를 제공하여 강력한 기능을 수행할 수 있도록 돕는 것에 관한 것입니다. 더 많은 기능으로 AI 에이전트를 배포할 준비가 되셨을 때요.10:25
만약 정말 좋은 UI를 원하신다면, NA10 플러스 볼트는 굉장히 강력한 조합입니다. 코딩 한 줄 없이 바로 사용할 수도 있고, 볼트를 이용해서 직접 구축할 수도 있습니다.10:41
볼트는 아이디어부터 완전히 작동하는 제품까지 몇 분 안에 만들 수 있게 해줘요. 팀을 위한 소프트웨어나 내부 도구, 웹사이트 등 무엇이든 가능하죠. 호스팅, 백엔드, 데이터베이스, 인증, 도메인, 심지어 SEO까지 필요한 모든 것이 갖춰져 있어요.10:50
볼트가 제가 정말 좋아하는 점은, 인프라 관리 대신 실제로 무언가를 만드는 데 집중할 수 있도록 전체 프로세스를 매끄럽게 처리한다는 거예요. 설정, 구성, 외부 도구 같은 것들을 직접 관리할 필요가 없죠.11:03
볼트는 개발자들이 사용하는 가장 강력한 도구들을 직관적인 채팅 인터페이스를 통해 여러분의 손에 닿게 해줍니다. 정말 간단합니다.11:16
자, 여기 bolt.new 랜딩 페이지가 있는데, 여기에 '사진 속 사람 얼굴을 흐리게 하는 앱을 만들어줘'라고 치고 '지금 빌드'를 클릭한 다음에 알아서 하도록 놔두면 됩니다.11:23
물론, 앱 내에서 훨씬 더 자세한 내용과 구체적인 사양들을 추가할 수도 있습니다.11:36
와, 저기 있네. 여기 이 앱이 있는데, 한번 사용해 볼까요? 여기 제 어릴 적 사진을 넣어볼게요. 틴이라는 이름이었죠. 자, 원본 사진과 흐릿하게 만들어진 사진이 있네요. 흐릿하게 만들어진 사진도 다운로드할 수 있어요. 계속 만들면서 기능을 추가하다 보면 정말 많은 걸 넣을 수 있겠죠.11:42
더 많은 기능도 추가하고, 원하는 대로 다 수정하세요. 벌드가 무거운 부분은 알아서 처리하니까, 버그와 싸우지 않고 비전에 집중할 수 있어요. 오늘 이 링크를 통해 벌드 V2를 무료로 사용해 볼 수 있습니다. 설명란에도 링크가 있어요. 자, 그럼 다시 영상으로 돌아가서 MCP를 실제로 만들기 전에 다루고 싶은 마지막 개념은 통신 생명 주기, 즉 통신 과정입니다.12:00
MCP 클라이언트와 MCP 서버는 서로 통신합니다. 첫 번째 단계는 초기화입니다. MCP 클라이언트가 MCP 서버와 연결을 시도할 때 마치 '저에게 필요한 것들을 주세요'라고 말하며 연결을 시작하는 것과 같습니다. 그런 다음 메시지 교환 단계가 진행되는데, MCP 클라이언트가...12:20
예를 들어, 제가 이 도구를 사용하고 싶다고 서버에 요청을 하면, 서버가 '네'라고 응답을 보내주는 거죠. 메시지 교환을 마치고, 마지막으로 클라이언트와 서버가 종료되고 서로 상호작용을 멈추는 종료 단계가 있습니다.12:36
지금 메시지가 전달되는 방식은 '전송(transport)'이라고 불립니다. 전송은 클라이언트와 서버 간에 메시지가 보내지고 받는 기본적인 작동 방식을 처리하며, 크게 두 가지 유형으로 나눌 수 있습니다. 첫 번째는 서버가 로컬에서 실행되는 경우인데, 예를 들어 여러분의 MCB 서버나 호스트처럼 이 모든 것이 하나의 기계 안에 존재합니다.12:52
제가 여기에서 자주 사용하는 비유가 있는데요. MCP 클라이언트를 식당이라고 생각하고, MCP 서버는 그 식당에서 음식을 만드는 요리사라고 보시면 됩니다.13:10
로컬에서 서버랑 클라이언트 둘 다 돌리는 거, 마치 친구랑 집에서 노트를 보면서 요리하는 것처럼 단순해질 거예요.13:20
요리하는 사람으로서, 마치 요리하는 것처럼, 아니면 지금 하고 있는 과정을 적어 내려가는 것처럼, 뜬금없이 식사하는 친구에게 메모를 전달하는 것과 같아요. 마치 요리하는 동안 무슨 일이 일어나는지 친구에게 계속 알려주는 것과 비슷하죠.13:25
그건 표준 출력하고 똑같은 거예요. 여러분과 함께 로컬에서 살아있는 것처럼 계속해서 기록되는 로그랄까요.13:36
웨이터나 계산원 같은 사람에게 의존할 필요는 없어요. 다른 교통 수단 카테고리는 원격 서버를 위한 건데요. 이 서버들은 클라우드 어딘가 다른 기계에서 살아있다고 할 수 있죠. 원격 서버와 상호작용하는 방법은 크게 두 가지가 있어요. 첫 번째는 HTTP 플러스 SSE, 즉 서버 전송 이벤트입니다. 너무 걱정하지 않으셔도 돼요.13:40
지원하는 기술 용어들을 살펴보면, '상태 기반 연결(stateful connection)'이라고 불리는 것이 있는데, 아까 그 비유로 돌아가서 생각하면, 마치 집을 나갔다가 식당에 가서 '손님'으로서 식탁에 앉아 웨이터(서버)와 상호작용하는 것과 같습니다. 예를 들어, '여기 제 테이블입니다', '이런 애피타이저를 주세요' 와 같이 정보를 전달하는 거죠.13:57
음료나 음식을 주문하시면 서버가 그걸 가져다주면서 혹시 같은 음료를 다시 드시고 싶다면 그냥 '같은 음료 한 잔 더 주세요'라고 말씀하시면 돼요. 처음 주문하셨던 메뉴를 정확히 다시 말씀하실 필요는 없습니다. 서버가 처음 주문하신 내용을 기억하고, 주문 내내 그 정보를 유지하는 걸 '스테이트풀 연결'이라고 부릅니다.14:15
자, 또 stateless, stateful 이런 stateless한 트랜스포트 방식이 스트리밍 가능한 HTTP를 통해 지원되는데, stateless하다는 건 마치 패스트푸드점이라고 생각하면 돼요. 분위기 좋은 식당과는 달리, 맥도날드처럼 주문할 때마다 매번 주문하는 거죠. 빅맥 하나 시키고, 감자튀김은 싫고, 다른 걸 원하면 또 따로…14:34
치킨 너겟 같은 거 주문하려면 또 새로 주문 넣어야 하고, 새 티켓 뽑아야 하고, 또 기다려야 돼요. 계산하는 캐셔도, 서빙하는 사람도 전에 뭐 시켰는지 기억 안 하고요.14:53
그래서 이게 '스테이트리스트'라고 불리는 이유는 이전 상호작용에서 얻은 모든 지식을 기억하지 않기 때문입니다.15:05
각 요청은 서로 독립적입니다. 너무 자세하게 설명하지 않고, 스트리밍 가능한 HTTP가 선호되는 전송 방식인 이유는 상태 정보(stateful)와 상태 목록(statelist)을 모두 지원할 수 있기 때문입니다.15:10
상황에 따라서는 상태를 유지하면서 상호작용하고 싶을 때도 있고, 또 상태를 기억하지 않고 간단하게 상호작용하고 싶을 때도 있어요.15:21
이 부분은 조금 자세하고 이론적으로 들릴 수도 있지만, MCP 서버를 실제로 사용하고 구축할 때, 즉 제가 마지막 간단한 평가를 드린 직후에 매우 중요해집니다.15:27
자, 이제 여러분만의 MCP 서버를 구축하는 노코드 구현 방법을 보여드리겠습니다.15:44
NA10을 이용해서 이런 일들을 할 수 있어요. 예를 들어, Tina에게 이메일을 보낼 수 있습니다. 주소는 tina@lonelyoctopus.com이고, 커피 한잔 같이 할 시간 있는지 물어보는 거죠.15:49
워크플로우 실행 후 엔터 키를 누르면 이 과정을 거치게 됩니다. 보시면 AI 에이전트에 접근하고, 여기 있는 MCP 클라이언트에 접근하는 것을 확인할 수 있습니다. MCP 클라이언트는 계산기 기능을 가지고 있고, 데이터를 전송할 수 있는 도구도 포함하고 있습니다.16:05
지메일로 메시지를 보내기 위한 설정을 해야 이메일을 받을 수 있습니다. 티나, 잘 지내고 있니? 커피 한잔 같이 할 수 있을까 해서 물어봐. 네가 편한 시간 알려줘. 좋은 하루 보내. 이 이메일은 na10으로 자동 발송되었어. 자, 그럼 이것을 처음부터 어떻게 만들지 알아볼까? 새로운 워크플로우부터 시작하자.16:21
na10이 뭔지 모르고, 전혀 익숙하지 않다면 여기 이 영상을 확인해보세요. na10을 이용해서 AI 에이전트를 어떻게 만들 수 있는지 자세히 설명하고 있습니다. 여기서는 자세히 설명하지 않겠습니다. 영상은 길지 않지만, 기본적으로 코딩 없이 또는 소량의 코딩만으로 워크플로우를 만들 수 있는 도구이고, 또한 MCP 서버를 만들 수도 있습니다. 서버 트리거가 준비되어 있습니다.16:40
여기서 뭔가 기능을 추가하고 싶을 때, 예를 들어 계산기 도구를 추가할 수 있죠. 그냥 계산하는 기능, 수학 문제 푸는 그런 기능인데, 엄청 혁신적인 건 아니지만 그렇습니다. 그리고 이메일 도구도 추가할 수 있을 거예요. Gmail 같은 도구도 있고, 여기에 필요해요.16:57
자, 이제 자격 증명을 설정해볼게요. 새 자격 증명을 만들어서 과정을 쭉 따라갈 수도 있지만, 그냥 구글 메일로 로그인하면 돼요. 제가 여기에서 로그인하겠습니다. 로그인하면 연결된 계정이 짠 하고 나타나고요. 음, 여기서는 이메일만 보내면 되니까, 이제 이 작업이 진행될 거예요.17:13
자, 이제 두 개를 보낼 건데, 모델이 이 부분들을 결정하도록 해 줘요. 주제도 모델이 결정하고, 이메일 타입은 bhtml과 d 메시지, 그것도 모델이 결정하도록 해 봐요. 정말 멋지고 간단하죠? 지금 바로 저장해 봅시다.17:30
이제 서버를 실제로 사용하려면 여기로 와서 활성화 상태인지 확인해야 합니다. 서버 자체가 활성화되어야 하고, 이 프로덕션 URL을 가져올 건데요. 이 URL을 통해 서버에 접근할 수 있습니다. 지금 제가 다른 워크플로우를 하나 가지고 있는데, AI 에이전트입니다.17:47
직접 프롬프트를 입력하고 응답을 받을 수 있으며, MCP를 추가하기 위해 MCP 클라이언트 도구를 클릭할 수 있습니다. 저희는 MCP 서버에서 가져온 엔드포인트를 복사해서 붙여넣고, 서버 전송 부분에서 서버 전송 이벤트(server-sent events)를 확인할 수 있습니다.18:03
더 이상 사용되지 않으며, HTTP 스트리밍 가능한 두 가지 다른 전송 방식이 있습니다. 그래서 HTTP 스트리밍 가능한 전송 방식으로 클릭해볼게요. 여기서는 다른 건 변경할 필요가 없네요. 와, 이제 MCP 클라이언트가 생겼으니 실제로 테스트해보겠습니다. 이번에는 실제로 계산을 해볼까요? 10을 계산해볼게요.18:20
여기서 11 곱하기 99를 보면, AI 에이전트가 여기로 이동하고, 사람이 '11 곱하기 99 계산해줘'라고 말합니다. 그러면 MCP 클라이언트로 가서 우리가 가지고 있는 계산기 도구를 사용해서 결과를 얻습니다. 이 계산기는 수학 표현식의 결과를 얻는 데 유용하며, 그런 다음 OpenAI 채팅 모델이...18:37
MCP 클라이언트를 사용하면 결과를 얻을 수 있었고, 여기에서 최종 결과를 얻었습니다. 출력은 11 곱하기 99의 결과인 1089입니다. 와, 정말 쉬워요! 이 기능을 이용해서 할 수 있는 게 정말 많습니다. 물론 MCP 서버에 더 많은 도구를 추가할 수도 있습니다.18:55
n8n을 호스트로 사용해야 하는 건 아니에요. 다른 호스트로 쉽게 바꿔줄 수도 있습니다. 예를 들어, 클라우드 데스크톱으로 호스트를 변경하고 싶다면, 클라우드 데스크톱으로 들어가서 도움말에서 개발자 모드로 전환하면 됩니다.19:13
개발자 모드로 클라우드 데스크탑 설정 파일을 열어주세요. 이 부분은 비어있어야 합니다. 어떤 텍스트 편집기로든 열 수 있어요. 저는 그냥 VS Code를 사용하고 있을 뿐이고요. 이 내용을 복사해서 붙여넣어야 합니다. 이 부분은 MCP 서버를 정의하는 건데요. 서버 위치가 NA10이기 때문에 NA10을 사용합니다.19:28
그리고 여기서는 SSE를 사용하고 있고, 여기에도 엔드포인트를 붙여넣을게요. Command-S 아니면 Control-S로 저장하고, 클로드(Claude)를 재시작하면, 와, 굉장하네요! 도구(tools) 아래에 NA10이 있고, Gmail로 메시지를 보내고 계산기 기능도 포함되어 있네요.19:44
그리고 여기에서도 똑같이 할 수 있어요. LonelyOctopus.com에 있는 티나에게 이메일을 보내서 문어 파티를 주최해 달라고 부탁하세요. 엔터 키를 누르세요.20:02
자, 여기 보시면 클로드에서 Gmail을 통해 메시지를 보내려고 하는데, na10에서 허용 버튼을 한 번 누르면 mcp 서버의 도구를 사용하도록 허용할 수 있습니다. 긴장되는 순간입니다. 여기 있네요, 티나에게, 잘 지내시길 바라며, 연락드리고 싶어서요.20:14
문어 파티를 열어보는 건 어떠세요? 정말 멋진 이벤트가 될 거라고 생각하고, 완벽한 호스트는 분명히 당신일 거예요. 혹시 가능하고 관심 있다면 알려주세요. 답변 기다리고 있겠습니다. 그럼요, 자동 발송입니다. 네이버 자동 번역, voila! 정말 쉽죠? 자, 이제 이 기능을 구현하는 코드를 보여드릴게요. 코드를 사용하면 이걸 할 수 있어요.20:30
이것보다 훨씬 더 많은 것들을 할 수 있죠. 노코드 방식이 정말 놀랍고 좋잖아요. 접근하기도 쉽고 사용하기도 편하죠. 이전에 얘기했듯이, 추가적인 리소스나 프롬프트 템플릿을 사용할 수 없다는 점을 기억하세요. n8m으로는 프롬프트 템플릿을 넣거나 추가 리소스를 지정할 수 없어요.20:47
코드 구현에서도 마찬가지예요. 지금 이 코드를 한 줄씩 보여드릴 수는 없어요. 영상이 너무 길어질 것 같으니까요. 하지만 어떤 도구들을 사용하는지, 그리고 실제로 실행하는 방법을 보여드릴게요. 자, 이번 코드 데모에서는 Cloud를 사용할 거예요.21:04
데스크톱을 호스트로 사용할 거예요. 그리고 Google Sheets와 Google Forms 작업에 필요한 도구, 리소스, 프롬프트를 제공할 수 있는 간단한 MCP 서버를 보여드릴 텐데요.21:21
MCP 서버가 연결되었는지 확인할 수 있는 방법은 여기 GSheets, MCP 서버 이름에 들어가서 보시면 포함된 모든 도구들을 확인할 수 있어요.21:31
그래서 제가 가지고 있는 스프레드시트들이 꽤 많아요. 그럼, 어떤 스프레드시트들이 있는지 한번 나열해 볼까요?21:39
이건 리스트 스프레드시트를 사용하길 원해서, 이 도구를 사용하는 겁니다. 구글 계정에 na10 폼, 익명 피드백, 로니 옥타스, 동문, 뭐뭐뭐... 이런 다양한 스프레드시트 20개가 있네요. 제가 읽어드릴까요?21:49
이 스프레드시트들 중 데이터 가져와서, 예를 들어 '읽기 시트' 기능을 이용해서 익명 피드백 스프레드시트의 열을 가져올 수 있습니다. 이게 실제로 유용한 자료예요.22:05
그래서 읽기 전용 파일인데, 열 이름이 무엇인지 확인할 수 있고, 스프레드시트 ID와 거기에 포함된 정보도 볼 수 있습니다. 그리고 마지막으로 프롬프트 템플릿을 사용하는 방법을 보여드리겠습니다. 여기를 클릭해서 추가를 누르면...22:24
시트에서 프롬프트 템플릿 몇 가지가 있는데, 분석할 시트 데이터 템플릿을 클릭해서, 음, 익명 피드백 시트, 꽤 작은 익명 피드백 시트를 분석해달라고 할 수 있습니다.22:41
데이터를 보기 좋게 만들어서 대시보드를 만들 수도 있고, 여기에서 프롬프트 템플릿이 어떻게 생겼는지 확인할 수 있습니다. 지금 이 작업을 수행해 보겠습니다. 진행하는 동안, 코드가 어떻게 생겼는지, 그리고 이 MCP 서버를 어떻게 실행하는지 보여드리겠습니다. 여기에 설명서가 있습니다. 이 단계를 따르면 됩니다.22:59
이 지침을 따르면 직접 MCP 서버를 실행할 수 있습니다. 포함된 도구들을 살펴보면 목록, 스프레드시트 읽기, 쓰기, 추가 등의 기능을 제공합니다. 또한, 스프레드시트 데이터를 접근하기 위한 리소스와 시트 데이터 분석과 같은 프롬프트 템플릿도 포함되어 있습니다.23:18
이 템플릿은 시트 데이터를 분석하고 보고서 템플릿을 만드는 데 사용됩니다. 즉, 보고서 스프레드시트 생성 템플릿이자 코드 내에서 양식-시트 워크플로우를 위한 템플릿입니다. 여기서는 너무 자세히 설명하지 않고, 자격 증명을 정의한 후에 확인할 수 있습니다.23:36
이러한 도구를 정의하는 방법은 함수를 꾸며서, 이것이 MCP 도구라는 것을 알 수 있는 것입니다. 예를 들어, 스프레드시트 목록을 가져오는 함수, 시트를 읽는 함수 등과 같이 꾸며서 표시할 수 있습니다. 자원이 이것이라는 것을 보여주는 방법은 간단히 꾸미는 것입니다.23:52
자원이기 때문에 시트 자원을 가져야 하고, 여기 프롬프트 템플릿 자체들이 있습니다. 사실 이 다양한 프롬프트 템플릿에 직접 하드코딩되어 있어요. 그럼 다시 클라우드로 돌아가서 거기에 무슨 일이 일어나는지 확인해 봅시다. 좋습니다. 익명 피드백 스프레드시트를 분석했다는 것을 확인했네요.24:07
제가 읽은 바로는, 저희가 제공한 템플릿을 이용해서 데이터를 분석했고, 실제로 대시보드까지 만들었더라고요. 여기 대시보드가 있습니다. 총 응답은 43개이고, 순추천고객지수(NPS) 평균 점수는 4.9, 5.98… 이런 것들이 전부 있습니다. 그래서 이런 내용을 알려주네요.24:25
음, 이 다양한 카테고리에 대한 정보, 학습 계획 진행 상황 추적에 대한 질적 정보, 그리고 저희 부트캠프에 어떤 점이 학생들을 끌어들였는지에 대한 인사이트까지, 잘 되는 점과 그렇지 않은 점 등 다양한 유형의 정보가 포함되어 있습니다.24:43
네, 여기 있습니다. MCP 서버 코드 데모입니다. 직접 MCP 서버를 만들 수 있게 되면서 정말 다양한 것들을 만들 수 있는 엄청난 잠재력이 있다는 것을 알 수 있기를 바랍니다.25:02
가능성은 무궁무진합니다. 좀 더 깊이 파고 싶다면, 이 전체 MCP 서버를 단계별로 정확하게 구현하는 방법을 알려주는 앤트로픽 딥러닝 AI 강좌를 확인하는 것을 적극 추천합니다. 물론 코드와 노코드 방식으로 MCP 서버를 구현할 수 있는 다른 방법도 많이 있습니다.25:22
저도 네트워크 척의 영상이 정말 마음에 들더라고요. 도커를 이용해서 이걸 어떻게 하는지에 대해 자세하게 설명해주거든요. 관련 영상 링크는 아래에 첨부할게요. 도커를 이용해서 구현해보고 싶으시면 꼭 한번 확인해보시는 걸 추천합니다. 하지만 이번 영상은 여기까지 마무리 짓겠습니다. 이제 MCP에 대한 기본적인 이해가 확실히 되셨기를 바랍니다.25:41
그리고 실제로 직접 만드는 방법까지 알려드릴게요. 마지막 간단한 평가가 있습니다.25:57
이 질문들에 답해주시고 댓글로 적어주세요. 영상 즐겁게 보셨기를 바라며, 끝까지 시청해 주셔서 정말 감사합니다.26:01
다음 영상에서 라이브 스트리밍으로 만나요.26:10
AI Summary
이 녹취록은 앤트로픽 딥러닝 AI 강좌에서 다루는 MCP (Multi-Agent Collaboration Platform) 서버 구축 및 활용 방법을 설명합니다. MCP 서버는 다양한 도구와 리소스를 통합하여 AI 에이전트의 기능을 확장하고, 복잡한 작업을 자동화하며, 데이터 기반 의사 결정을 지원하는 플랫폼입니다. 노코드 방식(n8n, Cloud Desktop)과 코드 방식 모두로 MCP 서버를 구축할 수 있으며, Gmail 연동, 계산기 기능, Google Sheets/Forms 연동 등 다양한 활용 예시가 제시됩니다. 시청자들은 직접 MCP를 구현해보고 평가 질문에 댓글로 참여할 수 있으며, 다음 영상은 라이브 스트리밍 형식으로 진행될 예정입니다. 네트워크 척 구현에 관심 있는 시청자를 위해 관련 영상 링크도 제공됩니다.
Key Highlights
- •MCP 서버는 AI 에이전트의 기능을 확장하고 자동화를 가능하게 하는 플랫폼이다.
- •n8n과 Cloud Desktop을 활용한 노코드 방식과 코드 방식을 통해 MCP 서버를 구축할 수 있다.
- •Gmail, Google Sheets/Forms 등 다양한 도구와 연동하여 활용할 수 있다.
- •시청자들은 직접 MCP를 구현하고 평가 질문에 댓글로 참여하도록 안내받는다.
- •다음 영상은 라이브 스트리밍 형식으로 진행되며, 네트워크 척 구현 관련 영상 링크도 제공된다.


