19. n8n 입문: 노코드로 만드는 에이전트
- n8n이 무엇이고 코드 기반 프레임워크와 어떻게 다른지 이해한다
- 노드·트리거·연결의 개념과 AI Agent 노드의 구조를 안다
- "언제 워크플로, 언제 에이전트"의 판단 기준을 잡는다
- 첫 요약 워크플로의 구성 요소를 파악한다
비유로 시작하기: 레고 블록으로 짓는 자동화
지금까지는 파이썬으로 에이전트를 "코딩"했습니다. n8n은 다릅니다. 화면에서 블록(노드)을 끌어다 선으로 연결하면 워크플로가 됩니다. 레고 블록을 조립하듯, 코드를 거의 쓰지 않고도 "메일이 오면 → 요약하고 → 슬랙에 알린다" 같은 자동화를 만듭니다.
n8n은 원래 Zapier 같은 자동화 도구였지만, 2026년 현재 AI 워크플로 레이어로 진화했습니다. 에이전트 노드, 도구, 메모리, 구조화 출력, 재시도, 자격증명, 실행 이력을 한 캔버스에서 다룹니다. 비개발자도 쓸 수 있고, 감사 추적(audit trail)과 트리거 연동이 강해 내부 업무 자동화에 특히 강합니다. 감사 추적은 "누가 언제 무엇을 실행했는지" 기록을 남겨 나중에 따라가 볼 수 있게 하는 것으로, 문제가 생겼을 때 원인을 추적하고 책임 소재를 가리는 데 쓰입니다.
코드 프레임워크 vs n8n
| 관점 | 코드 프레임워크(LangGraph 등) | n8n |
|---|---|---|
| 만드는 방식 | 파이썬 코딩 | 노드 드래그앤드롭 |
| 대상 | 개발자 | 개발자 + 비개발자 |
| 강점 | 정밀 제어·복잡한 로직 | 빠른 구축·외부 앱 연동·운영 |
| 약점 | 글루 코드 직접 작성 | 매우 복잡한 로직은 한계 |
| 적합 | 독립 에이전트·정교한 흐름 | 업무 자동화 속 에이전트 한 조각 |
📌 핵심: n8n의 진짜 가치는 "AI가 모든 걸 한다"가 아니라, 지루한 자동화(입력 파싱·분기·저장·재시도·알림)는 워크플로가 하고, 판단이 필요한 한 조각만 AI에게 맡기는 데 있습니다. n8n은 "두뇌 전체"가 아니라 "실행기(runner)"입니다.
핵심 개념: 노드·트리거·연결
n8n 워크플로는 세 가지로 구성됩니다. 노드(Node)는 하나의 작업 단위입니다(트리거, AI 호출, 앱 연동, 분기 등). 트리거(Trigger)는 워크플로를 시작시키는 노드입니다(수동 실행, 채팅 메시지, 웹훅, 일정 등). 여기서 웹훅(webhook)은 "특정 사건이 일어나면 미리 정한 주소로 자동으로 알림 요청을 보내는" 방식으로, 외부 서비스의 이벤트(결제 완료 등)를 받아 워크플로를 즉시 작동시킬 때 쓰입니다. 연결(Connection)은 노드를 잇는 선으로, 데이터가 이 선을 따라 흐릅니다.
flowchart LR
classDef trigger fill:#FFE082,stroke:#F9A825,color:#000
classDef node fill:#80DEEA,stroke:#00838F,color:#000
classDef out fill:#A5D6A7,stroke:#2E7D32,color:#000
T[트리거<br/>채팅·웹훅·일정]:::trigger --> A[AI Agent 노드<br/>판단·도구 호출]:::node
A --> O[출력 노드<br/>슬랙·시트·메일]:::out
AI Agent 노드의 구조
AI Agent 노드가 n8n에서 에이전트의 "두뇌"입니다. 단순 LLM 노드(입력→출력 한 번)와 달리, 도구 목록을 받아 어떤 도구를 어떤 순서로 쓸지 스스로 결정하고 작업이 끝날 때까지 루프를 돕니다. 1부의 에이전트 루프가 노드 하나로 캡슐화된 셈입니다.
AI Agent 노드에는 서브 노드를 연결합니다. Chat Model(어떤 LLM을 쓸지), Memory(대화 맥락 유지), Tool(검색·HTTP·앱 연동 등), 그리고 선택적으로 Output Parser(구조화 출력)입니다.
flowchart TB
classDef agent fill:#80DEEA,stroke:#00838F,color:#000
classDef sub fill:#90CAF9,stroke:#1565C0,color:#000
AG[AI Agent 노드]:::agent
CM[Chat Model<br/>OpenAI·Claude·Ollama]:::sub
ME[Memory<br/>대화 맥락]:::sub
TL[Tools<br/>검색·HTTP·앱]:::sub
OP[Output Parser<br/>구조화 출력]:::sub
CM --> AG
ME --> AG
TL --> AG
OP --> AG
📌 핵심: 2~6부에서 코드로 만든 요소들(모델·메모리·도구·구조화 출력)이 n8n에서는 연결하는 서브 노드가 됩니다. 개념은 같고, 표현이 시각적일 뿐입니다.
언제 워크플로, 언제 에이전트
n8n에서 가장 중요한 판단입니다. AI Agent 노드를 떨궜다고 자동으로 "에이전트"가 되는 게 아닙니다. 트리거 달린 LLM 호출일 뿐일 수 있습니다.
flowchart TD
classDef q fill:#FFE082,stroke:#F9A825,color:#000
classDef wf fill:#A5D6A7,stroke:#2E7D32,color:#000
classDef ag fill:#80DEEA,stroke:#00838F,color:#000
Q{규칙을 10분 안에<br/>명확히 쓸 수 있나?}:::q
Q -->|예| W[일반 워크플로<br/>if/분기로 충분]:::wf
Q -->|아니오, 50개 if로도<br/>못 잡는 판단| A[AI Agent 노드<br/>퍼지한 판단 한 조각]:::ag
판단 기준은 명확합니다. 규칙을 쉽게 쓸 수 있으면 일반 워크플로로, 규칙으로 못 잡는 "퍼지한 판단"이 필요할 때만 에이전트를 씁니다. 예를 들어 "Stripe 웹훅이 오면 영수증 발송"은 LLM이 필요 없는 워크플로입니다. 반면 "고객 메일의 어조를 보고 화난 고객을 우선 처리"는 키워드 매칭으로 놓치기 쉬워 에이전트가 어울립니다.
⚠️ 흔한 실수: 모든 단계에 AI를 욱여넣는 것. 토큰 비용만 늘고 안정성은 떨어집니다. AI Agent 노드는 하나의 판단만 맡기고, 그 앞뒤는 지루하고 믿을 수 있는 일반 워크플로로 두세요.
첫 워크플로: 요약 에이전트 (구성)
강의의 첫 요약 워크플로를 구성 요소로 보면 이렇습니다. 트리거(수동 또는 채팅)로 텍스트를 받고, AI Agent 노드(Chat Model 연결)가 요약하고, 출력 노드가 결과를 전달합니다.
구성 순서는 이렇습니다. 새 워크플로를 만들고, 트리거 노드(테스트용 Manual Trigger)를 추가하고, AI Agent 노드를 붙여 Chat Model(OpenAI 등)을 연결하고, System Message에 "너는 요약 비서다. 핵심을 3문장으로 요약하라"를 넣습니다. 실행하면 노드의 출력 패널에서 각 단계(도구 호출·중간 결과·최종 답)를 볼 수 있습니다.
💡 팁: AI Agent 노드가 10단계 넘게 돌면 기본 step 한도에 걸려 에러가 납니다. 복잡한 작업은 Max Iterations를 15~20으로 올리고, 단순 작업은 낮춰 비용을 아끼세요. 12장 LangGraph의 recursion_limit과 같은 안전장치입니다.
💡 실습 아이디어(강의의 번역 워크플로 대응): System Message만 "너는 번역가다. 입력을 한국어로 번역하라"로 바꾸면 번역 에이전트가 됩니다. Chat Model을 Claude로 바꿔 품질을 비교해 보세요. 노드 구조는 그대로입니다.
이 장에서 배운 것
- n8n은 노드를 드래그앤드롭으로 연결해 만드는 노코드 자동화 도구이며, 2026년엔 AI 워크플로 레이어로 진화했다.
- 워크플로는 노드·트리거·연결로 구성되고, AI Agent 노드가 에이전트의 두뇌 역할을 한다.
- 모델·메모리·도구·출력 파서는 AI Agent 노드에 연결하는 서브 노드다. 코드 프레임워크의 요소와 개념이 같다.
- 규칙으로 못 잡는 "퍼지한 판단"에만 에이전트를 쓴다. n8n은 두뇌 전체가 아니라 실행기다.
✍️ 확인 문제
- "AI Agent 노드를 워크플로에 떨어뜨리면 곧 에이전트가 된다"는 말이 부정확한 이유는?
- "결제 웹훅이 오면 영수증 발송"과 "고객 메일 어조를 보고 우선순위 분류" 중 AI Agent가 어울리는 쪽과 그 이유는?
- AI Agent 노드가 끝없이 도는 것을 막는 설정은 무엇이며, 코드 프레임워크의 어떤 개념과 같은가?
이전 부: 18. MCP 서버를 에이전트에 연결하기
다음 장: 20. 실전 n8n: 메모리·도구·앱 연동·프로덕션