Computer >> 컴퓨터 >  >> 소프트웨어 >> 메일

지메일 받은 편지함을 자동으로 정리해주는 무료 오픈소스 도구 n8n

지메일 받은 편지함을 자동으로 정리해주는 무료 오픈소스 도구 n8n

예전의 저에게 지메일 받은 편지함을 여는 일은 부담 그 자체였습니다. 광고, 프로모션, 스팸 메일 사이에 중요한 메일이 파묻혀 어떤 메일이 유용한지 일일이 판단하기 어려웠고, 그때마다 정리는 숙제처럼 느껴졌습니다.

그러던 어느 날, 하루 종일 수작업으로 받은 편지함을 청소하고 나서 문득 생각했습니다. "더 적은 노력으로 깨끗한 상태를 유지할 방법은 없을까?" 여러 자동화 도구를 조사한 끝에 무료 오픈소스 도구 하나에 정착했으니, 바로 n8n(읽을 때는 '엔-에잇-엔')입니다. 코드 없이 워크플로를 자동화할 수 있는 이 도구로 받은 편지함을 대신 관리해주는 자동화를 구축했고, 덕분에 편지함이 항상 깔끔하게 정돈된 상태로 유지되고 있습니다.

n8n 한눈에 보기

어떤 시스템에서든 작동하는 최고의 자동화 도구 중 하나

지메일 받은 편지함을 자동으로 정리해주는 무료 오픈소스 도구 n8n

n8n은 브라우저 기반 자동화 도구로, 노드 방식의 비주얼 빌더로 워크플로를 만들 수 있습니다. 셀프 호스팅 방식이라 데이터를 온전히 통제할 수 있고 자신의 서버에서 직접 실행할 수 있다는 점이 큰 장점입니다. 400개가 넘는 통합 기능을 제공해 앱, 액션, AI를 손쉽게 연결하고 생산성을 높이는 워크플로를 만들 수 있는 점도 매력적입니다.

참고로 n8n은 클라우드에서도 사용할 수 있지만, 클라우드 버전은 유료 구독이 필요합니다. 반면 셀프 호스팅 버전은 완전히 무료인데, 이 글에서 다룰 것은 바로 셀프 호스팅 버전입니다. '셀프 호스팅'이라는 단어에 겁먹을 필요는 없습니다. 의외로 설정이 아주 간단합니다.

한 가지 알아둘 점은 n8n이 MIT나 Apache 같은 전통적인 오픈소스 라이선스를 쓰지 않는다는 것입니다. 지속 가능한 사용 라이선스(Sustainable Use License, 구 Fair Code License)를 채택해 코드로 거의 모든 작업이 가능하지만 판매만은 할 수 없습니다. 상업적 목적으로 사용하려면 별도의 상용 라이선스를 구매해야 합니다.

n8n 에디터 실행하기

필요한 건 Docker와 n8n 이미지뿐

지메일 받은 편지함을 자동으로 정리해주는 무료 오픈소스 도구 n8n

n8n을 컴퓨터에서 실행하는 방법은 여러 가지가 있지만, 제가 찾은 가장 쉬운 방법은 Docker였습니다. Docker는 애플리케이션을 이식성 좋은 컨테이너 형태로 실행해 주기 때문에, 의존성이나 호환성 문제 없이 n8n을 손쉽게 설치할 수 있습니다. 저는 Windows용 Docker Desktop을 사용했지만 macOS와 Linux에서도 이용할 수 있습니다.

Docker에서 Images 탭으로 이동해 n8n 이미지를 검색한 뒤 내려받았습니다. 이미지를 실행하면 n8n 컨테이너가 생성되고, 브라우저 주소창에 https://localhost:5678을 입력하면 n8n 에디터에 접속할 수 있습니다.

처음 n8n을 실행한다면 로그인 정보를 만들어야 합니다. 걱정하지 않아도 됩니다. 이 정보가 원격 서버로 전송되는 것이 아니라 모든 데이터가 컴퓨터에 로컬로 저장됩니다.

워크플로를 처음부터 만들 필요가 없었다

템플릿 하나로 바로 시작

저는 어떤 도구로든 직접 만들기 전에 먼저 재활용할 수 있는 템플릿이 있는지 확인하는 편입니다. 다행히 n8n 공식 사이트에서 이메일 자동 라벨링 템플릿을 찾았습니다. Zapier와 Power Automate 워크플로 경험이 있었기 때문에 충분히 설정할 수 있으리라 확신했습니다. 물론 완전히 새로운 워크플로를 만들려면 더 깊이 공부하거나 템플릿을 역설계해야 하겠지만, 그것은 다음 기회로 미루기로 했습니다.

이 템플릿은 설정된 주기마다 새 메일을 확인합니다. 이후 AI(기본값은 OpenAI 모델)가 발신자, 제목, 본문, 키워드 등 각 이메일의 내용을 분석해 적절한 라벨을 지정합니다. 지메일은 라벨로 메일을 정리하는데, 일치하는 라벨이 없으면 해당 메일을 위한 새 라벨을 자동으로 생성합니다.

예를 들어 Asana에서 보낸 메일이나 Asana 관련 정보가 담긴 메일에는 기존의 Asana 라벨이 적용됩니다. 반대로 마케팅, 홍보, 소셜, 스팸 성격의 메일이라면 Inbox 라벨을 제거해 받은 편지함이 어수선해지지 않게 하고, 성격에 맞는 라벨을 대신 붙여 줍니다.

템플릿 페이지에서 코드를 복사해 텍스트 파일에 붙여 넣고 .JSON 확장자로 저장했습니다. 그다음 새 워크플로를 만들어 파일을 가져온 뒤, 각 노드의 역할을 하나씩 살펴보며 실전에 투입할 준비를 마쳤습니다.

템플릿 설정에서 가장 어려웠던 부분

구글 인증 정보 확보하기

먼저 새 메일이 도착하면 자동화를 시작하는 Gmail Trigger 노드를 설정해야 했습니다. 구글 계정 인증 정보를 추가해야 하는데, 이 과정이 은근히 까다로웠습니다. Google Cloud Console에 로그인하고, Gmail API를 활성화하고, OAuth 동의 화면을 구성한 후 인증 정보를 생성해야 했습니다.

중간중간 오류도 많았지만 결국 완료했습니다. 이후 Client IDClient Secret을 복사해 트리거에 붙여 넣었습니다. 인증 정보가 검증되고 나니 Gmail — read labels, Gmail — get message 같은 나머지 Gmail 노드들이 자동으로 해당 인증 정보를 사용했습니다.

AI 에이전트 설정하기

기본 OpenAI 모델이 통하지 않아 대안을 찾았다

다음으로 인증 정보를 추가해야 할 노드는 Open AI Chat Model1이었습니다. 이 모델이 Gmail labeling agent를 위해 이메일을 분석하는 역할을 맡습니다.

OpenAI 웹사이트에 접속해 API 키를 만들었는데, 안타깝게도 AI 크레딧이 소진되어 작동하지 않았습니다. OpenAI가 현재 신규 계정에 무료 크레딧을 지급하지 않고 있는 모양입니다(향후 달라질 수 있습니다). 최소 5달러를 결제해야 크레딧을 더 받을 수 있다고 해서, 저는 그러지 않기로 했습니다. 대신 하루 수백 건의 요청을 무료로 처리할 수 있는 Gemini를 선택했습니다.

Open AI Chat Model1Gmail labeling agent에서 연결 해제한 뒤, Google Gemini Chat Model 노드를 추가해 대신 연결했습니다. 이어서 Google AI Studio에서 API 키를 생성해 적용하면 끝입니다.

깔끔하게 정돈된 지메일 계정의 즐거움

모든 설정을 마친 뒤 Execute Flow 버튼을 눌러 제대로 작동하는지 확인했습니다. 놀랍도록 매끄럽게 실행됐습니다. 이제는 워크플로가 대신 처리해 주니 받은 편지함을 수동으로 정리할 필요가 전혀 없습니다. 딱 제 필요에 맞는 템플릿이 이미 존재했기 때문에 직접 만들 필요도 없었습니다. 이렇게 빨리 시작하지 못한 것이 아쉬울 정도입니다.


글쓴이 소개

치푼도(Chifundo)는 MakeUseOf의 작가로, Windows 98 시절부터 Windows를 사용해 왔으며 업무와 가정에서 사람들의 Windows 문제를 해결해 왔습니다. 2017년부터 프리랜서 작가로 활동하며 How-To Geek, Make Tech Easier 같은 사이트에도 글을 기고했습니다. 여가 시간에는 2D 게임을 디자인하고 코딩하며 인디 개발자를 꿈꾸고 있고, 픽셀 아트와 벡터 아트 작업도 함께 즐깁니다.