ClickFlare MCP와 LanderLab MCP: 둘 다 Hermes에 연결하고 Meta 리드 추적하기
Hermes 시리즈 2편입니다. ClickFlare MCP와 LanderLab MCP를 Hermes Agent에 연결하고, ClickFlare에서 Meta 캠페인을 만드는 일을 맡기세요. 그동안 포스트백을 설정하고 테스트 리드 한 건으로 제대로 작동하는지 확인합니다.
Meta 트래픽을 받을 LanderLab 페이지가 준비되어 있다고 해 봅시다. 첫 클릭이 들어오기 전에 누군가는 트래커 작업을 해야 합니다. 오퍼, 트래픽 소스, 캠페인, 그리고 Meta 매크로로 가득한 추적 링크가 필요하죠. LanderLab에서 보내는 포스트백과, 모든 것이 작동함을 증명할 테스트 리드도 필요합니다.
이 가이드는 그 작업의 대부분을 ClickFlare MCP와 LanderLab MCP를 통해 Hermes Agent에게 맡기고, 모든 과정을 Telegram 채팅에서 진행합니다. 이 시리즈의 1편에 이어지는 내용으로, 1편에서는 같은 에이전트가 이탈리아 프라토의 치과 임플란트 클리닉을 위해 변형이 2개인 퀴즈 페이지를 만들었습니다.
이 실행은 2026년 6월에 녹화했습니다. 그 후 LanderLab이 MCP 서버 연결 방식을 바꿨기 때문에, 1단계에서는 녹화 때의 방법이 아니라 현재 방법을 보여 드립니다.
전체 설정은 7단계입니다.
- 브라우저에서 한 번만 로그인해 LanderLab MCP를 Hermes에 연결합니다.
- API 키로 ClickFlare MCP를 연결하고, 명령을 승인한 뒤 다시 불러옵니다.
- 최근 30일 캠페인 개요를 요청해 연결이 실제 데이터를 읽는지 확인합니다.
- 매일 오전 9시 브리핑을 Telegram으로 예약합니다.
- Hermes에게 페이지를 ClickFlare에 오퍼로 추가하고 Meta 캠페인을 만들도록 요청합니다.
- LanderLab에 ClickFlare S2S 포스트백을 추가합니다.
- 테스트 리드 한 건을 보내고 4곳을 확인합니다.
시작하기 전에 필요한 것
- Telegram 봇이 실행 중인 Hermes Agent. Hermes는 Nous Research의 오픈소스 AI 에이전트로, 내 컴퓨터나 서버에서 실행됩니다.
- LanderLab Grow, Scale 또는 Enterprise 요금제. 이 요금제에는 API와 MCP 접근이 포함됩니다.
- ClickFlare 계정.
- 게시된 LanderLab 페이지. 저희 페이지는 URL 하나로 퀴즈 변형 2개를 50/50으로 나누어 운영합니다.
- 터미널 접근 권한. Hermes가 실행되는 컴퓨터에서 로그인 단계를 한 번 진행하는 데 필요합니다.
MCP는 Model Context Protocol의 약자로, AI 에이전트가 다른 앱의 도구를 사용할 수 있게 하는 개방형 표준입니다. LanderLab과 ClickFlare는 각각 MCP 서버를 운영합니다. Hermes가 둘 다 연결되면, 채팅 하나로 ClickFlare 리포트를 읽고 두 계정 모두에서 변경 작업을 할 수 있습니다.
1단계: 로그인으로 LanderLab MCP 연결하기
6월 녹화에서는 채팅에 API 키를 붙여 넣는 방식으로 LanderLab을 연결했습니다. 이후 LanderLab이 이 방식을 대체했습니다. LanderLab의 변경 내역에 따르면, 2026년 9월 1일에 LanderLab은 MCP 서버를 https://api.landerlab.dev/mcp의 브라우저 로그인(OAuth) 방식으로 옮겼습니다. 이제 API 키는 REST API를 직접 호출할 때만 쓰입니다.
Hermes 설정에 /api/v2/mcp를 가리키는 LanderLab 항목이 아직 남아 있다면, 삭제하고 새 항목을 추가하세요. 로그인을 쓰는 서버는 Hermes MCP 가이드에서 다룹니다. 정리하면 4가지 작업입니다.
- Telegram에서 Hermes에게 이름이
landerlab이고 URL이https://api.landerlab.dev/mcp,auth: oauth인 MCP 서버를 추가해 달라고 요청합니다. 이 줄들을~/.hermes/config.yaml에 직접 추가해도 됩니다. - Hermes가 실행되는 컴퓨터에서
hermes mcp login landerlab을 실행합니다. - 출력된 링크를 열고 LanderLab에 로그인한 뒤 Authorize를 클릭합니다.
- Hermes가 서버에서 실행 중이라면, 로그인은 내 컴퓨터에서 하세요. 그런 다음 브라우저가 이동한 주소를 복사해 Hermes가 물을 때 터미널에 붙여 넣습니다.
채팅 기록에 키가 남지 않는다는 점이 진짜 장점입니다. LanderLab의 MCP 페이지에서는 Claude, ChatGPT 등 다른 채팅 앱에서도 같은 로그인 방식을 안내합니다.
2단계: API 키로 ClickFlare MCP 연결하기
ClickFlare의 MCP 서버는 여전히 API 키를 사용합니다. ClickFlare에서 Settings, API Keys를 차례로 열고 Create API key를 클릭하세요. 에이전트 이름을 붙이고(저희는 hermes-tutorial을 썼습니다) Generate를 클릭한 뒤 키를 복사합니다. ClickFlare는 키를 한 번만 보여 줍니다.

그런 다음 Telegram에서 Hermes에게 메시지를 한 통 보내고, 그 아래에 키를 붙여 넣습니다.
아래 API 키로 ClickFlare에 새 MCP 연결을 만들어 주세요.
서버 URL은 알려 주지 않았습니다. Hermes가 https://mcp.clickflare.com/mcp를 스스로 채워 넣고, 설정에 항목을 기록하고, 테스트한 뒤, 그 시점에 도구 37개로 연결되었다고 보고했습니다. 저희 환경에서는 이전 작업 때 트래커용 스킬을 만들어 둔 것도 도움이 되었습니다. URL을 물어본다면 ClickFlare의 MCP 문서에 나와 있습니다.
Telegram에 붙여 넣은 키는 채팅 기록에 남고, ClickFlare의 API 페이지도 비밀 키를 절대 공유하지 말라고 안내합니다. 연결이 되면 메시지를 삭제하세요. 더 깔끔하게 설정하려면 키를 ~/.hermes/.env에 보관하고, Hermes MCP 가이드에 나온 대로 config.yaml에서 ${VAR} 형태로 참조하세요.
명령은 승인하되 경고는 읽어 보세요
Hermes는 자신의 설정을 바꾸는 명령을 실행하기 전에 먼저 물어봅니다. Telegram에서는 Allow Once, Session, Always, Deny 4개 버튼이 있는 카드로 나타납니다.

저희 카드는 6월에 LanderLab을 연결할 때 나타났고, 진짜와 비슷하게 생긴 도메인에 대한 보안 안내가 함께 표시되었습니다. Hermes는 Tirith라는 스캐너로 명령을 검사합니다. .dev, .app, .zip, .mov, .run으로 끝나는 도메인은 모두 경고하는데, 이런 확장자는 파일 이름처럼 보일 수 있기 때문입니다. 이 경고는 일괄 적용되는 것이며, api.landerlab.dev는 LanderLab의 실제 API 주소입니다.
Always를 누르기 전에 한 번 더 생각하세요. Hermes 보안 문서에 따르면, 그 명령 패턴이 허용 목록에 영구적으로 저장되어 비슷한 명령은 더 이상 확인을 묻지 않습니다. 저희는 Always를 눌렀습니다. 새 에이전트라면 Allow Once나 Session을 쓰는 편이 더 안전한 습관입니다. 최신 Hermes 버전은 카드 문구가 다르지만 버튼은 같습니다.
테스트 전에 다시 불러오기
새 서버는 다시 불러온 뒤에야 채팅에 나타납니다. Hermes는 연결할 때마다 그 점을 알려 주었습니다. 녹화에서는 매번 다시 불러오라고 조언했는데, 캐시된 도구 목록 때문에 새 도구가 작동하지 않을 수 있기 때문입니다. Telegram에서 /reload-mcp를 입력하세요.

저희가 다시 불러오자 서버 5개에서 도구 241개가 보고되었습니다. 이 합계에는 이 Hermes 환경에 이미 연결되어 있던 Ahrefs 같은 다른 서버도 포함됩니다.
3단계: ClickFlare MCP에 30일 개요 요청하기
읽기만 하는 질문으로 시작하세요. 연결이 작동함을 확인할 수 있고, 계정에는 아무것도 바뀌지 않습니다. 저희는 다음과 같이 보냈습니다.
최근 30일 동안의 캠페인 개요를 보여 주세요. 유용한 인사이트와 주의해야 할 점도 알려 주세요.
에이전트가 ClickFlare 엔드포인트를 여러 번 호출해야 하는 무거운 요청이지만, 그래도 1분 안에 답했습니다.

답변은 계정 전체 합계로 시작했습니다. 방문, 클릭, 전환, 수익, 비용, 이익, ROI, 평균 CVR(전환율), EPV(방문당 수익)입니다. 이어서 캠페인을 유형별로 묶고 각각에 “정리 필요” 같은 짧은 평가를 붙였습니다. 이 계정의 캠페인은 테스트 캠페인이므로 숫자는 데모로 읽어 주세요.
그다음이 인사이트였고, 읽을 가치가 있는 부분입니다. 오가닉 트래픽이 계정을 떠받치고 있었고, 유료 소셜은 트래픽은 있지만 전환 수익성이 약했으며, 리타기팅은 유료 채널 중 ROI가 가장 좋았습니다.
또한 작은 테스트가 길게 이어지면서 노이즈가 늘고 있다는 점, 그리고 모바일 퀴즈 페이지는 스크롤하지 않고도 첫 질문이 보여야 한다는 점도 짚었습니다. 이 테스트 캠페인들에 한해서는 정확한 분석이었습니다.
4단계: ClickFlare 일일 브리핑 예약하기
이제 그 리포트를 따로 요청하지 않아도 받을 수 있게 바꿔 봅시다. 저희는 이렇게 보냈습니다.
내 캠페인에 대한 일일 브리핑 리포트를 만들어 주세요. 매일 오전 9시에 실행되어야 합니다. 포함할 내용: 캠페인 현황, 상위 승자와 패자, 유용한 인사이트, 이상 징후나 추세.
Hermes는 cron 작업, 즉 정해진 일정에 따라 실행되는 작업을 만들었습니다. 답변에는 작업 이름, 첫 실행, 일정이 나와 있었고, 일정은 저희 시간대(Europe/Tirane) 기준 09:00였습니다. 전달 대상은 같은 Telegram 채팅이었습니다.

그 답변의 마지막 줄을 읽어 보세요. Hermes는 예약 실행에서도 ClickFlare MCP 도구를 쓸 수 있도록 toolset 제한을 해제했습니다. 첫 브리핑이 비어서 도착한다면 먼저 이 설정에 대해 Hermes에게 물어보세요.
가치는 이상 징후에 있습니다. 밤사이 전환율이 떨어졌거나, 트래픽 소스가 전환을 멈췄거나, 랜딩 페이지가 깨졌다면 브리핑이 알려 주도록 요청하세요. ClickFlare에 로그인해 같은 그룹 리포트를 다시 만드는 대신, 오전 9시에 Telegram에서 읽으면 됩니다.
깨진 페이지는 오전 9시 전에 잡아내는 것이 좋으니, 랜딩 페이지 모니터링 루틴도 함께 운영하세요.
5단계: Hermes가 ClickFlare에서 Meta 캠페인을 만들게 하기
먼저 ClickFlare 용어 하나. 오퍼는 전환이 일어나는 페이지입니다. 저희는 LanderLab 페이지에서 직접 리드를 수집하므로, 그 페이지가 오퍼입니다. 앞에 프리랜더(워밍업 페이지)를 두면 ClickFlare에서는 프리랜더가 랜딩 페이지가 되고, 이 페이지는 계속 오퍼로 남습니다.
프롬프트는 일부러 두루뭉술하게 썼습니다.
앞서 LanderLab에서 만든 랜딩 페이지(내 페이지 URL)를 ClickFlare에 오퍼로 추가해 주세요. Meta에서 이 오퍼로 이어지는 캠페인으로 트래픽을 보내고 싶습니다. 캠페인과 필요한 모든 설정을 마치고 추적 링크를 보내 주세요.
약 2분 뒤, Hermes는 ClickFlare MCP로 3가지를 만들어 놓았습니다.
- Meta Ads용 트래픽 소스.
- 페이지 URL에
?cf_click_id={cf_click_id}를 붙인 오퍼. ClickFlare가 클릭 ID를 페이지에 넘길 수 있게 하기 위한 것입니다. - 리디렉션 추적을 쓰는 캠페인과 Meta용 추적 링크.

추적 링크는 Meta 광고의 목적지 URL로 들어갑니다. 이 링크에는 {{ad.id}}, {{adset.name}}, {{placement}} 같은 Meta 동적 URL 매개변수 8개가 담겨 있습니다. Meta가 클릭 시점에 값을 채워 주므로, ClickFlare는 광고, 광고 세트, 캠페인, 게재 위치, 사이트별로 리포트할 수 있습니다.
Meta 문서에 나오는 주의점이 하나 있습니다. 이름 매개변수는 광고가 처음 게시되었을 때의 이름을 전달합니다. 나중에 광고 이름을 바꿔도 리포트에는 이전 이름이 그대로 남습니다.
리디렉션 추적은 클릭을 먼저 ClickFlare로 보냅니다. ClickFlare가 클릭을 기록한 다음, URL에 클릭 ID를 붙여 방문자를 내 페이지로 전달합니다. ClickFlare는 트래픽 소스가 지원하는 경우 이 방식을 권장합니다. 다른 방식인 직접 추적은 페이지의 스크립트에 의존합니다.
점검 결과와 마지막 경고를 읽어 보세요
답변하기 전에 Hermes는 라이브 페이지를 확인했습니다. 페이지가 cf_click_id를 읽고, ClickFlare의 전환 엔드포인트 /cf/cv를 호출하며, 누군가 리드 양식을 제출하면 이벤트를 발생시키는 것을 확인했습니다. 이 ClickFlare 코드는 에이전트에게 추가를 요청했던 1편에서 들어간 것입니다.
그리고 이번 실행에서 가장 유용한 한 줄이 나왔습니다. 비용 추적이 “추적 안 함”으로 설정되어 있어서, ClickFlare가 방문, 리드, 수익은 기록하지만 Meta 광고비는 기록하지 않는다는 내용이었습니다. Meta 비용을 연결하거나 가져오기 전까지는 비용이 $0로 표시되고 ROI는 의미가 없습니다. 첫 리포트를 누군가 읽기 전에 고쳐 두세요.
리디렉션을 확인하려면 새 브라우저 창에서 추적 링크를 여세요. 브라우저는 쿠키를 유지하므로 매번 같은 변형을 보여 줍니다. 새 브라우저라면 다른 변형이 나올 수 있습니다.
6단계: S2S 포스트백으로 LanderLab 리드를 ClickFlare에 보내기
S2S(서버 간) 포스트백은 누군가 양식을 제출할 때 LanderLab 서버가 ClickFlare 서버를 호출하는 것입니다. 클릭 ID를 함께 보내기 때문에, ClickFlare는 방문자의 브라우저에 의존하지 않고도 올바른 캠페인과 광고에 성과를 귀속할 수 있습니다. 이 부분은 LanderLab에서 직접 설정했습니다.
- ClickFlare에서 캠페인을 열고 포스트백 URL을 복사합니다.
- LanderLab에서 랜딩 페이지를 열고 Integrations로 이동한 뒤 Add Integration을 클릭합니다.
- ClickFlare를 선택하고 연동 이름을 지정합니다.
- 포스트백 URL을 붙여 넣은 다음,
/cf/cv뒤의 모든 내용을 삭제합니다. - 클릭 ID URL 매개변수를 입력합니다.
- Continue를 클릭하고, 필드 매핑은 켜 둔 채 저장합니다.

5번 항목은 신경 써서 입력하세요. LanderLab의 ClickFlare 포스트백 가이드에 따르면 이 값은 오퍼 URL의 클릭 ID 매개변수와 일치해야 합니다. 저희는 cf_click_id를 썼으므로 그 값을 입력해야 합니다. 녹화에서는 필드의 플레이스홀더인 clickid를 입력했습니다. 그래도 테스트 전환은 ClickFlare에 도착했지만, 거기에 기대지 말고 이름을 맞춰 두는 것이 좋습니다.
매핑 화면은 랜더 URL, 변형 ID, 리드 ID, ClickFlare 클릭 ID 등 리드 세부 정보를 ClickFlare의 커스텀 매개변수로 전달합니다. LanderLab 가이드는 추가 매개변수로 ct=lead를 넣을 것도 권장하는데, 이렇게 하면 ClickFlare가 전환 유형을 기록합니다.
이 페이지는 1편의 Telegram 워크플로도 함께 실행합니다. 그래서 양식 제출 한 번으로 이제 2가지 일이 일어납니다. 전환을 ClickFlare에 보내고, 리드를 내 채팅으로 보냅니다.
코드 없이 모든 리드를 ClickFlare로
LanderLab 페이지는 양식을 제출할 때마다 S2S 포스트백으로 클릭 ID와 리드 세부 정보를 ClickFlare에 보냅니다.
- 모든 페이지에서 ClickFlare 네이티브 연동
- 퀴즈 답변과 숨김 필드도 함께 전달
- Grow, Scale, Enterprise에서 MCP 사용 가능
7단계: 테스트 리드 한 건을 보내고 4곳 확인하기
시크릿 창에서 추적 링크를 열고, 퀴즈에 답한 뒤 양식을 제출하세요. 그다음 아래 4곳을 순서대로 확인합니다.
- Telegram. 리드 세부 정보가 담긴 워크플로 알림. 저희는 몇 초 만에 도착했습니다.
- LanderLab, Leads 탭. 리드와 그 리드가 본 변형. 저희는 변형 A였습니다.
- LanderLab, Logs 탭. Integrations 아래에 ClickFlare 포스트백의 “200 - OK” 행과 워크플로의 “WorkflowExecuted” 행.
- ClickFlare, Activity, Event Logs. 내 클릭 ID가 담긴 Conversion 행. ClickFlare가 데이터를 캐시하기 때문에 캠페인 리포트는 몇 분 늦을 수 있으니, 로그부터 확인하세요.

ClickFlare의 Postback Status 탭도 확인하세요. 이번 실행에서는 테스트에 대해 실패 항목이 표시되었습니다. 저희는 테스트 리드의 가짜 전화번호가 원인이라고 봅니다. 실제처럼 보이는 테스트 데이터를 사용하세요.
피해야 할 흔한 실수
- 예전 LanderLab 설정을 그대로 두기. API 키로
/api/v2/mcp를 가리키는 항목은 삭제한 뒤 로그인 방식으로 다시 추가해야 합니다. - 클릭 ID 이름이 서로 다름. LanderLab의 Click ID URL 매개변수는 오퍼 URL과 일치해야 합니다.
- 비용 없이 ROI 보기. 비용 추적이 꺼져 있으면 이익과 ROI가 실제보다 좋아 보입니다.
- 습관적으로 Always 누르기. 그 명령 패턴을 영구적으로 허용하게 됩니다.
- 테스트 키를 그대로 두기. 에이전트마다 키를 하나씩 사용하세요. 저희 키는 녹화를 위해 만들었고 직후에 삭제할 계획이었습니다.
- 에이전트의 확인만 믿기. 페이지 확인으로는 코드가 있다는 것만 증명됩니다. 데이터가 실제로 흐르는지는 테스트 리드로만 증명됩니다.
FAQ
ClickFlare MCP란 무엇인가요?
https://mcp.clickflare.com/mcp에 있는 ClickFlare의 MCP 서버입니다. API 키가 있으면 AI 에이전트나 어시스턴트가 성과 데이터를 분석하고, 채팅으로 캠페인, 오퍼, 랜더를 만들 수 있습니다.
MCP 서버 URL을 알아야 하나요?
저희 실행에서는 필요 없었습니다. Hermes는 이전 작업에서 만들어 둔 스킬의 도움을 받아 API 키만으로 ClickFlare URL을 채웠습니다. LanderLab의 현재 로그인 방식에서 URL은 https://api.landerlab.dev/mcp입니다.
어떤 LanderLab 요금제에 MCP 접근이 포함되나요?
Grow, Scale, Enterprise입니다. 무료 요금제에서도 페이지를 만들고 게시할 수 있으며, 에이전트를 연결하고 싶을 때 업그레이드하면 됩니다.
Hermes 대신 Claude나 ChatGPT를 쓸 수 있나요?
MCP 부분은 가능합니다. 두 서버 모두 Claude, ChatGPT 같은 MCP 클라이언트와 함께 작동합니다. Telegram 채팅, 일일 cron 작업, 승인 버튼은 Hermes의 기능입니다.
AI 에이전트에게 내 트래커 접근 권한을 줘도 안전한가요?
내가 주는 접근 범위만큼만 안전합니다. 에이전트마다 키를 하나씩 쓰고, 승인은 켜 두고, 새 명령에는 Allow Once를 선택하고, 오래된 키는 삭제하세요.
어디서부터 시작할까요
읽기 전용 부분부터 시작하세요. MCP 서버 두 개를 연결하고, ClickFlare MCP에 30일 개요를 요청해 대시보드와 비교해 보세요. 숫자가 맞으면 Hermes에게 캠페인 하나를 만들게 하고, 포스트백은 직접 추가한 뒤, Meta 예산이 집행되기 전에 테스트 리드를 보내세요.
에이전트가 추적할 수 있는 페이지를 만드세요
무료 요금제로 시작한 다음, Grow 이상에서 LanderLab MCP로 Claude, ChatGPT, Hermes를 연결하세요.



