Transcript
00:00:00N8N이 모두가 가장 좋아하는 노코드 AI 자동화 도구였던 시절이 그리 오래전 일은 아닙니다.
00:00:05하지만 Claude Code나 Cursor 같은 다른 도구들이 등장하면서
00:00:09N8N을 완전히 압도하기 시작했죠.
00:00:11그런데 바로 이번 주, N8N에서 새로운 도구를 출시했습니다.
00:00:14다시 N8N을 여러분의 도구 모음에 넣어야 할 이유가 생겼을지도 모릅니다.
00:00:17그래서 오늘은 그 도구를 자세히 살펴보고
00:00:19N8N이 다시 시간을 투자할 가치가 있는지 알려드리겠습니다.
00:00:22제가 말씀드리는 도구는 완전히 새로워진 N8N MCP 서버입니다.
00:00:26Claude Code나 Cursor 같은 에이전트 기반 코딩 도구를 염두에 두고 제작되었죠.
00:00:30이것이 중요한 몇 가지 이유가 있다고 생각합니다.
00:00:33첫째는 이전에는 이런 도구가 없었기 때문입니다.
00:00:37음, 어느 정도는 있었다고 할 수도 있겠네요.
00:00:38Lonkowski의 N8N MCP 서버처럼 임시방편적인 해결책이나
00:00:42다른 편법들이 있었지만, 말 그대로 편법이었을 뿐입니다.
00:00:46그런 도구들은 Claude Code나 Cursor 같은 도구의 컨텍스트 창에
00:00:49엄청난 양의 문서를 밀어 넣을 수 있다는 가정하에 작동했습니다.
00:00:53수십억 줄의 문서를 통해
00:00:56해야 할 일과 하지 말아야 할 일을 설명하면서 말이죠.
00:00:58그 모든 컨텍스트를 집어넣었으니
00:01:02실제로 작동하는 JSON이 생성되기를 바랄 뿐이었습니다.
00:01:04또 다른 해결책은 수많은 마크다운 줄로 채워진 거대한 스킬 파일이었습니다.
00:01:08마찬가지로 Claude Code가 N8N에서 작동하는 방식으로
00:01:11JSON을 생성하도록 강제하려는 시도였죠.
00:01:14하지만 이번 공식 MCP는 조금 다르고 훨씬 더 정교합니다.
00:01:19반드시 JSON이 아니라 TypeScript 기반으로 작동하기 때문입니다.
00:01:24이는 워크플로를 검증하고
00:01:27우리가 작성 중인 코드를 실제로 컴파일할 수 있음을 의미합니다.
00:01:30JSON 파일로 변환되어 N8N 내부에 채워지기 전 단계에서 말이죠.
00:01:34즉, 이 새로운 N8N MCP 서버를 사용해 Claude Code에 프롬프트를 주면
00:01:39우리가 만드는 결과물이 실제로 작동하도록 보장하는 안전장치가 있는 셈입니다.
00:01:44예를 들어, 제가 Claude Code에 매일 아침 이메일을 보내주는
00:01:50간단한 날씨 자동화 기능을 만들어 달라고 요청한다고 가정해 봅시다.
00:01:54먼저 도구는 의도를 파악하고, 아주 간단한 자동화가 필요하며
00:01:58세 개의 노드가 필요하다는 것을 깨닫게 됩니다.
00:02:01그다음 MCP 서버에 접속하여 노드 유형을 가져오고
00:02:06거기서 TypeScript로 코드를 작성합니다.
00:02:10작성된 코드는 MCP 서버로 전송되어 검증 및 파싱 과정을 거칩니다.
00:02:15이것은 큰 차이점입니다.
00:02:16이전의 MCP 방식들과는 엄청난 차이가 있습니다.
00:02:20그 후 JSON으로 변환되어
00:02:24여러분의 인스턴스 내부에 자동으로 채워지게 됩니다.
00:02:28N8N 팀의 한 멤버가 링크드인 게시물에서
00:02:31워크플로를 표현할 때 JSON이 아닌 TypeScript를 사용하는 것에 대해
00:02:35조금 더 자세히 설명했는데, 그의 말에 따르면
00:02:38"LLM에게 워크플로를 위한 원시 JSON 생성을 요청하면
00:02:41아무런 안전장치 없이 구조를 추측할 뿐입니다."
00:02:43그것이 지금까지 우리가 해온 방식이었죠.
00:02:45하지만 이 새로운 서버에서는 TypeScript가 타입 체크와 컴파일 기능을 제공하여
00:02:50인스턴스에 적용되기 전에 미리 검증해 줍니다.
00:02:52모델은 실제로 컴파일 가능한 결과물을 만들어야 하므로
00:02:55수많은 오류를 사전에 걸러낼 수 있습니다.
00:02:58이 모든 장점을 종합해 보면
00:02:59새로운 N8N MCP 서버는 Claude Code와 같은 코딩 에이전트를 통해
00:03:04자동화 워크플로를 생성하는 가장 좋은 방법입니다.
00:03:07이 정도로 강력한 방식은 이전에 없었습니다.
00:03:09두 번째로 이 MCP 서버가 중요한 이유는
00:03:12N8N이 여전히 여러분의 기술 스택의 일부가 되어야 한다고 생각하기 때문입니다.
00:03:15지금은 2024년이나 2025년이 아닙니다.
00:03:18N8N이 예전만큼 큰 역할을 한다고 생각하지는 않습니다.
00:03:21역할이 좀 더 특화되었죠.
00:03:23하지만 예를 들어 AI 에이전시 분야에서 일하는 분이라면
00:03:26시각적이고, 비기술적인 클라이언트에게 넘겨줄 수 있는
00:03:30자동화 도구를 만드는 것이 얼마나 가치 있는지 아실 겁니다.
00:03:34클라이언트가 기술을 잘 모르더라도 직접 관여해야 할 때가 있는데
00:03:38"GitHub 리포지토리에 있으니 직접 확인하세요"라거나
00:03:42"Claude Code 인스턴스를 직접 실행하세요"라고 말하는 건 무리겠죠.
00:03:45그런 경우에 N8N은 실질적인 가치가 있으며, 지금까지는 Claude Code로
00:03:50JSON을 생성해서 가져오는 게 상당히 번거로운 일이었습니다.
00:03:54조금 조잡한 방식이었죠.
00:03:55하지만 이제는 그렇지 않습니다.
00:03:57N8N의 영역은 아주 복잡한 자동화가 아니어도 된다고 생각합니다.
00:04:01N8N으로 구축해야 하는 자동화가 반드시 엄청나게 복잡할 필요는 없습니다.
00:04:05만약 정말 복잡한 것이라면, 그냥 일반적인 코드를 써서
00:04:08Claude Code 안에서 해결하는 방향으로 갈 것입니다.
00:04:11하지만 구조가 꽤 단순해야 하고, 비기술적인 사람도
00:04:15직접 보고 관리할 수 있어야 한다면
00:04:17이제는 이런 작업을 정말 쉽고 빠르게 끝낼 수 있습니다.
00:04:20이제 실제로 설치하는 방법을 알아보면, 이 또한 매우 간단합니다.
00:04:24우선 N8N 인스턴스가 최신 버전인지 확인해야 합니다.
00:04:27그다음 설정으로 들어갑니다.
00:04:32그리고 '인스턴스 레벨 MCP(Instance level MCP)'로 이동합니다.
00:04:34자체 호스팅이나 클라우드 버전 모두 가능합니다.
00:04:37인스턴스 레벨 MCP 메뉴에 들어오면
00:04:39이 항목이 '활성화(Enabled)'로 설정되어 있는지 확인하세요.
00:04:41여기서 워크플로를 활성화할 수 있는 옵션이 있습니다.
00:04:44워크플로를 활성화하는 것은 이미 존재하는 워크플로를 위한 것입니다.
00:04:47따라서 이미 만들어 둔 워크플로에 이 기능을 사용하려면
00:04:50여기서 활성화해주어야 합니다.
00:04:52하지만 처음부터 새로 만드는 경우라면
00:04:54따로 설정할 필요가 없습니다.
00:04:57다음으로 '연결 상세 정보(Connection details)'를 클릭합니다.
00:05:00액세스 토큰(Access token) 방식을 사용하시면 됩니다.
00:05:01Claude Code 같은 도구를 사용 중이라면
00:05:03이 MCP 서버에 Claude Code를 연결하기만 하면 됩니다.
00:05:06URL, 액세스 토큰, 그리고 JSON 설정값을 입력해 주세요.
00:05:10빠르게 테스트해보고 싶다면 채팅창에 바로 액세스 토큰을 넣을 수도 있지만,
00:05:15보안상 좋지 않다는 점을 유의하세요. 주기적으로 교체하거나 환경 변수로 설정해야 합니다.
00:05:18시간 관계상 그 과정을 단계별로 다루지는 않겠습니다.
00:05:21다만 그렇게 해야 한다는 것만 알아두세요.
00:05:23Claude Code가 완료에 필요한 단계들을 정확히 안내해 줄 것입니다.
00:05:24어쨌든 실행해서 실제로 작동하는지 확인해 보려면
00:05:28그냥 정보를 복사해서 붙여넣기만 하면 준비가 끝납니다.
00:05:31자, 서버 URL, 액세스 토큰, JSON 설정을 Claude Code에 복사해 넣고
00:05:33"이 MCP 서버를 설정해 줘"라고 요청했다면
00:05:36Claude Code를 종료했다가 다시 시작한 뒤
00:05:41'/mcp'를 입력해 보세요. N8N MCP가 연결된 것을 볼 수 있습니다.
00:05:45만약 보이지 않는다면
00:05:49재설정을 안 했거나 뭔가 잘못된 것입니다.
00:05:51그럴 땐 다시 시도해 보세요.
00:05:54이제 사용하려면 Claude Code 안에서 자연어로 말하기만 하면 됩니다.
00:05:56MCP를 설정했으므로 N8N과 직접 연결되어
00:06:00코드 생성뿐만 아니라 인스턴스 내부에 실제로 구축까지 해줍니다.
00:06:04더 이상 코드를 복사해서 왔다 갔다 할 필요가 없죠.
00:06:06예를 들어, "N8N MCP를 사용해서 매일 오전 9시에 실행되고
00:06:09토론토 날씨를 가져와 이메일로 보내주는 워크플로를 만들어 줘"라고 하면
00:06:10알아서 척척 진행할 것입니다.
00:06:15보시다시피 SDK와 노드 목록을 가져오고 있네요.
00:06:16어떤 노드를 사용해야 할지 파악하고
00:06:19워크플로를 작성했습니다.
00:06:22유효한지 확인하고
00:06:25이제 생성 중입니다.
00:06:27그런 다음 N8N MCP를 호출하여
00:06:30제 인스턴스에 워크플로를 직접 채워 넣고 완료되었다고 알려줍니다.
00:06:31여기 'Toronto daily weather email' 워크플로가 보이네요.
00:06:33잘 작동합니다.
00:06:35클릭해 보면 이메일 주소와 메시지가 들어있고
00:06:40모든 것이 이미 매핑되어 있습니다. 워크플로를 실행해 보죠.
00:06:43이메일을 확인해 보면
00:06:46바로 와 있네요. 아주 간단한 자동화 예시지만
00:06:50이런 식으로 작동합니다. 정말 간단하죠.
00:06:55이제 조금 더 복잡한 것을 요청해 보겠습니다.
00:06:56새 캔버스에서 시작하죠.
00:07:01매일 오전 10시에 실행되는 뉴스레터 자동화를 만들고 싶습니다.
00:07:02다양한 RSS 피드에서 트렌딩 뉴스를 가져오도록 할게요.
00:07:03API 키를 쓰고 싶지 않으니
00:07:06어떤 RSS 피드를 쓸지는 도구가 직접 판단하게 하겠습니다.
00:07:09그다음 AI 시스템으로 데이터를 가져와서
00:07:13GPT-5를 사용해 요약한 뒤 제게 이메일로 보내게 할 것입니다.
00:07:17이번에는 뉴스레터 자동화를 만들어 달라고 하는 건데요.
00:07:20엄청나게 복잡한 건 아니지만, 이런 서비스를 위해 돈을 지불하는 사람들도 있습니다.
00:07:23그리고 클라이언트 작업 같은 경우, 요즘 N8N의 특화 영역은
00:07:25아주 고난도의 작업이 아니라고 생각합니다.
00:07:29정말 복잡한 사례도 만들게 할 수 있겠지만
00:07:34그 단계가 되면 굳이 N8N을 써야 할 이유가 없거든요.
00:07:38다시 말하지만 특화된 영역이 중요합니다. 모든 것에 N8N을 쓸 필요는 없지만
00:07:42사용하기로 했다면 이 MCP가 훌륭한 선택이 될 것입니다.
00:07:44뉴스레터 자동화 제작이 끝났네요.
00:07:48한번 살펴봅시다.
00:07:52여기 새로운 워크플로가 생겼습니다.
00:07:56보기에도 깔끔하네요. 트리거가 있고
00:07:58세 개의 다른 RSS 피드를 가져와서 병합하고
00:07:59지난 24시간 동안의 뉴스만 필터링해서 합칩니다.
00:08:01데이터를 여기에 넣고
00:08:05도구가 생성한 시스템 프롬프트도 보이네요.
00:08:08GPT-5를 사용해 뉴스레터를 발송하는데
00:08:12한 번에 제대로 작동하는지 봅시다.
00:08:15오히려 실패했으면 좋겠네요.
00:08:18그래야 문제 해결을 위해 대화를 주고받는 모습을 보여드릴 수 있으니까요.
00:08:23네, 여기서 오류가 발생했습니다.
00:08:27어떤 오류일까요?
00:08:30'Bad request, unsupported parameter temperature'. 알겠습니다.
00:08:31확인해 보니 temperature 파라미터를 보내면 안 되는 상황이군요.
00:08:35하지만 제가 어떻게 고치는지 전혀 모른다고 가정해 봅시다.
00:08:38제가 해야 할 일은 그냥
00:08:41출력된 내용을 복사하는 것뿐입니다.
00:08:46"이런 오류가 났어"라고
00:08:51붙여넣으면 되죠.
00:08:54수정했다고 하니 다시 실행해 봅시다.
00:08:57temperature 같은 간단한 문제를 해결하려고 Claude Code에
00:09:00오류 메시지를 넣는 건 좀 과하지만, 시연을 위해 해봤습니다.
00:09:04이제 성공적으로 결과가 나왔습니다.
00:09:06이메일도 아무 문제 없이 발송되었고요.
00:09:09여기 뉴스레터가 있네요. 정말 쉽죠.
00:09:14보신 것처럼 약간의 문제 해결 과정을 포함해도
00:09:18이 모든 것을 만들고 작동시키는 데 5분 정도밖에 안 걸렸습니다.
00:09:21괜찮지 않나요? 정리하자면, 코딩 스택에
00:09:24N8N 워크플로를 도입하려는 분들에게
00:09:27이것은 훌륭한 도구가 될 것입니다.
00:09:31N8N이 가장 자주 사용하는 도구가 되어서는 안 된다고 생각합니다.
00:09:34특히 복잡한 작업일수록 Claude Code나 Cursor에서
00:09:38직접 코드를 작성하는 것이 훨씬 낫습니다.
00:09:41하지만 N8N이 유용한 상황은 분명히 있습니다.
00:09:43그리고 지금까지는 이만큼 효율적인 해결책이 없었죠.
00:09:46방금 보신 것처럼 설정과 사용법도 정말 간단합니다.
00:09:49언제나 그렇듯 댓글로 여러분의 생각을 알려주세요.
00:09:53댓글 이야기가 나와서 말인데, 고정 댓글에
00:09:55제 Claude Code 마스터 클래스를 들을 수 있는 링크가 있습니다.
00:10:01그럼 다음 영상에서 뵙겠습니다.
00:10:03그럼 언제나처럼 여러분의 의견을 댓글로 남겨주세요.
00:10:06댓글 이야기가 나와서 말인데, 고정 댓글에 제 Chase A+
00:10:09링크가 있으니 제 Claude Code 마스터 클래스가 궁금하신 분들은 확인해 보세요.
00:10:12그럼 전 다음 영상에서 뵙겠습니다.