Hacker NewsAI · 머신러닝

Cloudflare에서 WhatsApp 메시지를 AI 에이전트가 읽게 해주는 MCP 공개

원제 Show HN: WhatsApp MCP running free on Cloudflare

106 포인트댓글 49
Key Point

WhatsApp 메시지 데이터를 AI 에이전트가 쿼리하고 검색할 수 있는 새로운 방식의 개인 정보 활용 패턴이 등장했으며, 개인 서버에서 자신의 데이터를 온전히 제어하면서 AI 통합을 할 수 있는 방법을 제시한다.

핵심 요약

  • AI 에이전트(Claude Code, Claude Desktop 등)가 사용자의 WhatsApp 메시지를 검색하고 읽을 수 있도록 하는 WhatsApp MCP 서버를 오픈소스로 공개했다.
  • 사용자의 휴대폰이 신뢰할 수 있는 출처로 작동하며, 서버는 WhatsApp Web처럼 연결된 기기로 동작한다.
  • 사용자가 요청할 때와 하루에 한 번 WhatsApp에 연결되어 새로운 메시지를 수집하고 Cloudflare Durable Object의 SQLite 데이터베이스에 저장한 후 연결을 해제한다.
  • Cloudflare Workers 유료 플랜 계정, Node 20 이상, 휴대폰이 필요하며, 설정 후 QR 코드를 스캔하여 WhatsApp 링크를 설정한다.
  • list_chats로 채팅 목록 확인, get_messages로 특정 채팅 읽기, search_messages로 전체 또는 특정 채팅 내에서 전문 검색이 가능하다.
  • unnamed_chats 도구로 전화번호만 알려진 채팅을 확인할 수 있으며, 에이전트가 연락처를 조회해 set_contact_names로 이름을 저장할 수 있다.
  • WhatsApp은 개인 메시지 읽기 API를 제공하지 않으므로 이 프로젝트는 WhatsApp Web이 사용하는 프로토콜과 오픈소스 Baileys 라이브러리를 사용하며, WhatsApp 약관 위반이지만 읽기 전용 연결의 실질적 위험은 낮다.
  • 처음 링크할 때 WhatsApp이 제공하는 메시지 이력만 가져오며, 모든 이력을 가져오지 않을 수 있고, 다시 가져오려면 재링크해야 한다.
  • 사진, 음성 메모, 문서 등 미디어는 [image], [voice note 12s] 같은 레이블로 표시되며 다운로드되거나 변환되지 않는다.
  • 한 배포는 한 WhatsApp 계정과 한 소유자용이며, 각 배포가 전체 메시지 이력과 활성 로그인을 보유하므로 각자 배포해야 한다.
  • 코드 변경 시 주의점으로, Baileys를 정확히 핀하고, 배포 시 활성 세션이 있으면 이전 코드가 계속 실행되며, 문제가 있으면 요청 전송을 중단하고 3-5분 대기해야 한다.
  • 로그아웃은 두 단계로 진행되며, 먼저 logout()을 호출하여 기기가 휴대폰 목록에서 제거되도록 한 후 로컬 자격증명을 제거한다.
  • 편집 및 삭제는 프로토콜 메시지로 도착할 때 적용되며, 이 경로는 실제 메시지에 대해 테스트되지 않았고 한 계정으로만 테스트되었다.
AI 요약 안내

AI가 한국어로 정리한 내용입니다. 정확한 정보는 원문을 확인해 주세요.

요약 원칙 ↗