기타

N8N-MCP을 사용해서 자연어로 워크플로우 구성 해보기

페이지 정보

작성자 바이브입니다만
작성일 15:20
5 조회
0 추천
0 비추천

본문

최근에 Railway에 n8n과 n8n-mcp를 사용해서 산업 및 Tech 관련 RSS을 자동화 하고 있습니다.


기존에는 워크플로우 생성후 개별적으로 노드를 생성 및 각 노드간 연결관계를 일일이 맺고 만드는 반복적인 작업이 필요한 과정이었습니다. 해당 과정을 n8n-mcp을 통해 자동화를 손쉽게 하였는데.해당 내용을 정리한 외국 블로그가 있어서 공유드립니다. 


https://github.com/czlonkowski/n8n-mcp
https://railway.com/deploy/n8n-mcp

 

Claude한테 "n8n 워크플로우 좀 만들어줘"라고 했더니, HTTP Request 노드 파라미터를 완전히 잘못 알려주거나, 존재하지 않는 필드명을 생성해서 실행할 때마다 빨간 에러 메시지가 뜨는 경험 해보셨나요? Gemini도 마찬가지고요. n8n 노드 500개 넘는데, 제대로 알고 있는 AI는 하나도 없더라고요.

이런 문제가 생기는 이유는 LLM이 n8n 노드의 최신 스키마와 파라미터 구조를 실시간으로 알 수 없기 때문입니다. 학습 데이터는 오래됐고, 노드는 자꾸 업데이트되니까요. 그래서 환각(hallucination)으로 이상한 설정을 만들어내거든요.

이 글에서는 Romuald Czlonkowski가 만든 n8n-MCP가 어떻게 AI 에이전트를 n8n 전문가로 바꿔놓는지 정리해 봅니다. 특히 다음 내용을 중심으로 살펴볼 거예요.

  • AI가 n8n 워크플로우를 제대로 만들지 못하는 이유 - 스키마 미스매치와 환각 문제
  • MCP(Model Context Protocol)가 해결하는 것 - 실시간 노드 스키마 주입 방식
  • 536개 노드 + 263개 AI 툴을 완벽하게 이해시키는 법 - 99% 파라미터 커버리지
  • Claude/Gemini에서 자연어로 워크플로우 만들기 - 에러 자동 수정까지
  • Docker로 10분 만에 나만의 n8n AI 어시스턴트 셋업 - MIT 라이선스 오픈소스

AI가 n8n 워크플로우를 망치는 3가지 이유

n8n 워크플로우를 AI로 만들려고 할 때 겪는 핵심 문제들입니다.

1. 학습 데이터가 오래됐다

Claude나 Gemini가 학습한 n8n 데이터는 몇 개월 전 버전입니다. 그 사이 노드가 추가되고, 파라미터가 바뀌고, 필드 이름이 변경됐죠. AI는 이걸 모르니까 옛날 방식으로 워크플로우를 만들어서 실행하면 에러가 납니다.

2. 노드 파라미터 구조를 환각한다

n8n 노드는 복잡한 중첩 구조를 가진 파라미터가 많습니다. HTTP Request만 해도 인증 방식에 따라 20개 이상의 옵션이 바뀌는데, AI는 이 동적 스키마를 정확히 파악 못해서 존재하지 않는 필드를 만들거나 필수 값을 빠뜨립니다.

3. 263개 AI 툴 노드를 활용 못한다

n8n은 LangChain 노드 등 263개의 AI 툴 노드를 지원하지만, 이 노드들이 어떤 입출력 구조를 가지는지 AI 에이전트가 모릅니다. 그래서 AI Agent 워크플로우를 만들 때 노드 연결이 계속 실패하죠.

n8n 공식 API 문서를 읽어도 실제 노드 파라미터 스키마는 안 나와 있습니다. 직접 n8n 소스 코드를 뒤져야 하는데, AI가 그럴 리 없고요. n8n-MCP는 이 문제를 근본적으로 해결했죠.

MCP가 AI와 n8n 사이 다리 놓는 법

해결책은 Model Context Protocol(MCP)입니다. Anthropic이 만든 이 프로토콜은 AI 에이전트가 외부 시스템의 실시간 데이터에 접근할 수 있게 해주죠.

// MCP 서버가 AI에게 주는 정보 { "nodeType": "nodes-base.httpRequest", "parameters": { "authentication": { "type": "predefinedCredentialType", "options": ["OAuth2", "basicAuth", "headerAuth", ...] }, "url": { "type": "string", "required": true }, "method": { "type": "options", "values": ["GET", "POST", ...] } } }

n8n-MCP는 이런 식으로 실시간 노드 스키마를 AI에게 주입합니다. AI가 워크플로우를 만들려고 하면, MCP 서버에 "HTTP Request 노드 스키마 줘"라고 요청하고, 최신 버전의 정확한 파라미터 구조를 받아서 워크플로우를 생성하죠.

주요 기능

  • list_nodes: 536개 노드 목록 조회 (카테고리, 타입별 필터링)
  • get_node_info: 특정 노드의 전체 스키마 + 예시
  • search_nodes: 키워드로 노드 검색 (퍼지 매칭 지원)
  • validate_node_operation: 노드 설정 검증 + 에러 피드백
  • get_node_documentation: 공식 문서 + 사용 패턴

특히 검증 기능이 강력합니다. AI가 만든 노드 설정을 실시간으로 체크해서 "이 필드는 필수입니다" 같은 피드백을 바로 주거든요. 이걸 받아서 AI가 자동으로 고칩니다.

99% 커버리지 = AI가 거의 완벽하게 이해

n8n-MCP가 제공하는 데이터의 양과 질이 압도적입니다.

Total Nodes
536개
core + LangChain 전체
Schema Coverage
99%
노드 파라미터 상세 스키마
AI Tool Nodes
263개
LangChain AI 에이전트 지원
Documentation
90%
공식 n8n 문서 통합

데이터 구성 방식

1. 노드 스키마 DB (SQLite)

모든 노드의 파라미터 타입, 기본값, 옵션, 의존성 관계를 구조화된 DB에 저장. AI가 쿼리하면 즉시 응답합니다. 동적으로 변하는 필드(예: 인증 방식에 따라 바뀌는 옵션)도 정확히 표현되죠.

2. 실전 예제 포함

각 노드에 대해 인기 있는 n8n 템플릿에서 추출한 실제 설정 예시를 포함합니다. AI가 "Slack으로 메시지 보내는 법"을 물으면, 이론적 스키마뿐 아니라 실전에서 쓰이는 구체적 설정을 바로 보여주죠.

3. 검증 엔진 내장

AI가 생성한 워크플로우 JSON을 n8n 스키마로 검증하는 엔진이 MCP 서버에 내장돼 있습니다. 틀린 설정은 즉시 에러 메시지와 함께 수정 제안을 제공하고, AI가 이를 받아 재시도하죠. 무한 루프 방지 로직도 있습니다.

결과는? Claude나 Gemini가 만든 n8n 워크플로우가 첫 실행에 바로 작동합니다. 더 이상 빨간 에러 메시지 안 보고요.

자연어로 워크플로우 만들고 바로 실행

이제 실제로 어떻게 쓰는지 봅시다. Claude Desktop이나 Gemini에 n8n-MCP를 연결하면 이렇게 됩니다.

# 사용자 프롬프트 "GitHub에서 새 이슈 생기면 Slack #dev-alerts 채널로 알림 보내는 워크플로우 만들어줘" # Claude가 하는 일 1. search_nodes("github webhook slack") → 노드 목록 확인 2. get_node_info("nodes-base.githubTrigger") → Webhook 설정법 파악 3. get_node_info("nodes-base.slack") → Slack 메시지 포맷 파악 4. create_workflow(nodes=[...], connections={...}) → 워크플로우 생성 5. validate_workflow(workflow_id="123") → 자동 검증 6. 에러 발견 시 autofix_workflow(workflow_id="123") → 자동 수정

에러 자동 수정의 위력

n8n-MCP v1.3.0부터 추가된 autofix_workflow 기능은 게임 체인저입니다. 일반적인 검증 에러(필수 필드 누락, 잘못된 enum 값, 연결 오류 등)를 자동으로 감지하고 수정하거든요.

자동 수정 예시

→ HTTP Request의 authentication 필드를 잘못 설정 → MCP가 감지하고 올바른 credential 타입으로 수정
→ Slack 노드에 필수인 channel 파라미터 누락 → 기본값 자동 추가
→ 노드 간 연결이 호환되지 않는 데이터 타입 → 중간에 변환 노드 자동 삽입

Claude나 Gemini는 MCP 서버의 피드백을 받아서 즉시 재시도합니다. 보통 2-3번 반복하면 완벽하게 작동하는 워크플로우가 나오죠. 사용자는 그냥 자연어로 말만 하면 됩니다.

Docker로 10분 만에 셋업 완료

n8n-MCP는 GitHub에서 MIT 라이선스로 공개돼 있고, Docker로 간단히 배포할 수 있습니다.

# Docker Compose로 n8n + MCP 서버 동시 실행 version: '3' services: n8n: image: n8nio/n8n ports: ['5678:5678'] environment: - N8N_API_KEY=your-api-key n8n-mcp: image: romuald/n8n-mcp:latest ports: ['3000:3000'] environment: - N8N_API_URL=http://n8n:5678 - N8N_API_KEY=your-api-key - MCP_MODE=stdio

Claude Desktop 연결

Claude Desktop의 claude_desktop_config.json에 MCP 서버 추가하면 끝입니다.

{ "mcpServers": { "n8n-mcp": { "command": "npx", "args": ["-y", "n8n-mcp"], "env": { "N8N_API_URL": "http://localhost:5678", "N8N_API_KEY": "your-api-key" } } } }

이제 Claude Desktop을 재시작하면 n8n-MCP 툴들이 자동으로 보입니다. "n8n 워크플로우 만들어줘"라고 하면 Claude가 알아서 MCP 서버를 호출하고 정확한 워크플로우를 생성하죠.

Gemini + n8n-MCP도 가능

원문 저자는 Claude에서 Gemini로 갈아탔다고 하는데, MCP는 Claude 전용이 아닙니다. MCP SDK를 지원하는 어떤 LLM이든 연결할 수 있죠. Gemini API에 MCP 클라이언트를 붙여서 사용하면 됩니다.용 인사이트

n8n-MCP는 단순한

댓글 0
전체 170 / 1 페이지
홈으로 전체메뉴 마이메뉴 새글/새댓글
전체 검색
회원가입