Hermoso는 마케팅 MCP 서버입니다. 하나의 OAuth 엔드포인트를 통해 922+개 도구를 제공하며, 에이전트가 시장에서 이미 달리는 광고를 리서치하고, 완성된 이미지와 영상 광고를 만들고, 게시하고, 그 뒤의 유료 캠페인을 만들 수 있게 해 줍니다. Claude는 연결 하나로 이 모든 것에 접근합니다. 이 페이지는 그중 한 부분, 즉 Claude가 Facebook에서 실제로 무엇을 할 수 있고 Facebook이 무엇을 허용하지 않는지를 다룹니다.
Claude에 Hermoso 연결하기
- 설치하고 로그인하세요.
브라우저가 한 번 열립니다. 따로 만들거나 붙여넣을 것은 없습니다. 인증 정보는npm install -g hermoso && hermoso auth login~/.hermoso/config.json에 소유자만 읽을 수 있게 저장됩니다. 브라우저가 없는 컴퓨터라면 MCP & CLI → 터미널 & API 키에서 키를 가져와hermoso auth login --token hmk_…를 실행하세요. ~/.cursor/mcp.json(또는 프로젝트의.cursor/mcp.json)에 추가하세요. 파일에는 키가 들어가지 않습니다. 위에서 로그인한 정보를hermoso mcp가 읽습니다:{ "mcpServers": { "hermoso": { "command": "npx", "args": ["-y", "hermoso", "mcp"] } } }- 또는 원클릭 설치를 쓰세요. MCP 페이지에서 설치할 수 있습니다. 그 딥링크는 호스팅된 URL을 설치하고, 인증은 Cursor 자체의 OAuth 흐름에 맡깁니다. 둘 다 작동하며 전제 조건만 다를 뿐입니다.
- Claude에 무언가를 요청하세요. “가장 가까운 경쟁사 세 곳의 가장 오래 달리는 광고를 찾아서, 가장 좋은 훅을 9:16 영상으로 리믹스해 줘” 또는 “이 렌더를 채널에 올려 줘”. 에이전트가 도구를 고르고, 지출은 당신이 승인합니다.
위 블록은 사용자의 컴퓨터에서 게시된 hermoso npm 패키지를 실행합니다. 그래서 붙여넣을 것이 없고, 도구를 호출하기 전까지 도구 목록은 비용이 들지 않습니다. 딥링크를 쓰면 Cursor가 저희 인증 서버에 동적 클라이언트 등록을 수행하므로, 이 경우에도 키를 직접 보관하지 않습니다.
그다음 Hermoso의 설정 → 커넥터에서 Instagram 자체를 한 번 연결하세요. 이것은 OAuth 승인 화면이라서 브라우저가 필요한 유일한 단계입니다. 그 이후의 모든 작업은 도구 호출입니다.
Claude가 받는 Instagram 도구
post_to_meta:target: "instagram"으로 Instagram에 게시합니다. Instagram은 시각 채널이며 API도 그렇게 판단합니다. 게시물에는 이미지나 영상이 있어야 합니다.schedule_post: 공유 일정표에 대기열로 넣습니다. 문구가 Facebook이나 LinkedIn 버전과 달라야 하면 채널별 캡션을 붙일 수 있습니다.list_meta_comments / reply_to_meta_comment / moderate_meta_comment: 게시물 아래 댓글을 읽고, 답하고, 관리합니다.meta_page_insights / meta_post_insights: 계정별, 게시물별 도달, 노출, 저장, 참여.search_instagram: 공개 Instagram 릴스를 키워드로 검색합니다. 게시가 아니라 리서치용입니다.
Instagram에 대해 자동화하기 전에 알아 둘 사실 두 가지. Meta의 API에는 네이티브 Instagram 예약이 없으므로, 예약은 Instagram의 것이 아니라 Hermoso의 대기열입니다. Instagram에 Facebook용 scheduleAt을 넘기면, 몰래 지금 게시하는 대신 거부합니다. 그리고 게시된 뒤에는 Instagram 캡션을 수정할 수 없습니다. Meta가 게시된 게시물에서 바꾸게 해 주는 것은 댓글 허용 여부뿐입니다. 삭제는 지원됩니다. manage_meta_post가 일반 게시물, 스토리, 릴스, 캐러셀 앨범 전체를 지울 수 있지만, 앨범에서 카드 한 장만 빼내지는 않습니다.
자동화하기 전에 알아 둘 Instagram 제한
| 텍스트 | Instagram 캡션은 2,200자로 제한됩니다. 게시물을 만들거나 대기열에 넣을 때 강제되므로, 너무 긴 게시물은 전송 중에 몰래 잘리는 대신 여러분이 아직 옆에 있을 때 거부됩니다. |
|---|---|
| 공개 범위 | 공개만 가능합니다. Meta의 Content Publishing API는 즉시 게시하거나 아예 게시하지 않으며, Instagram에는 “미공개, 비공개 또는 초안 게시물이 없습니다.” Instagram에서 검토 단계를 원한다면, 호출 뒤가 아니라 호출 전에 해야 합니다. |
| 캐러셀 | 슬라이드 2장에서 10장, 이미지와 영상을 섞을 수 있습니다. 이 상한은 Hermoso가 강제하는 기능 표에 인용된 Meta 자체의 한도입니다. “캐러셀은 이미지, 영상, 또는 둘의 혼합 10개로 제한됩니다.” 하한 2는 우리 기준입니다. 한 장짜리는 어느 플랫폼에서도 캐러셀이 아니기 때문입니다. 슬라이드 한 장을 요청하면 거부되지 않고 일반 게시물로 게시됩니다. |
| 어느 계정 | pageId. Instagram은 연결된 Facebook Page를 통해 게시하므로, 같은 식별 필드로 선택합니다. |
Claude에서 해 보기
일상 언어로 요청하세요. 이것은 DSL이 아니라 평범한 문장입니다:
“./public/social의 내보내기 파일 여섯 개를 그 순서대로 Instagram에 캐러셀로 게시하고, 게시물 퍼머링크를 출시 체크리스트에 추가해 줘.”
이 작업은 search_instagram → plan_ad → render_ad → post_to_meta(target: "instagram") 순서로 진행됩니다. Cursor는 실행 전에 각 도구 호출을 작성 창에 보여 주므로, 게시는 부수 효과가 아니라 클릭 한 번입니다.
Facebook에서의 Cursor: 까다로운 부분
캐러셀에서는 순서가 곧 제품입니다. 편집기에서는 이것을 올바르게 만들기가 가장 쉽습니다. 파일이 눈앞에 있고, Hermoso는 전달한 순서를 그대로 유지하며 완전히 같은 중복만 제거합니다. 10장은 저희 제한이 아니라 Meta의 상한입니다. Instagram 캡션은 게시된 뒤에는 수정할 수 없으므로 검토는 작성 창에서 하세요. 렌더링이 잘못되었다면 게시물 자체는 manage_meta_post로 삭제할 수 있습니다.
하나의 레포가 항상 한 브랜드에 연결되어야 한다면 설정을 홈 디렉터리가 아니라 프로젝트의 .cursor/mcp.json에 두세요. 그렇지 않으면 hermoso auth login이 작업 공간을 고정합니다.
게시하기 전에 Instagram 리서치하기
search_meta_ads는 하나의 라이브러리이므로 Facebook뿐 아니라 Instagram 노출도 다룹니다. 오가닉은 search_instagram이 공개 릴스를 키워드로 검색하며, 이 포맷이 실제로 움직이는 곳입니다. 프로필과 해시태그 조회는 fetch_social_data와 search_instagram_hashtag로 합니다.
유료 부분
Instagram 노출은 Facebook과 같은 Meta 캠페인 구조로 구매합니다. create_meta_campaign → create_meta_adset → create_meta_ad이며, 노출 위치는 플랫폼별, 위치별로 고를 수 있습니다. preview_meta_ad가 지출 전에 노출 위치별 실제 렌더 광고를 보여 주고, meta_insights는 결과를 나이, 성별, 노출 위치, 국가별로 나눠 보여 줍니다. 그 분석이 다음 크리에이티브의 방향을 정합니다.
Cursor 혼자서는 할 수 없는 일
예산이 있는 에이전트는 영향 범위가 제한되어 있을 때만 쓸모가 있으므로, 울타리는 프롬프트가 아니라 서버에 둡니다. 모든 광고 캠페인, 광고 세트, 광고 그룹, 광고는 일시 중지 상태로 만들어지며, 실제 돈이 움직이는 상태 변경은 명시적인 확인 표시 없이는 실행되지 않습니다. 모든 렌더는 먼저 견적을 받습니다(hermoso_capabilities가 비용이 쓰이기 전에 모델별 정확한 크레딧 비용을 공개합니다). 크레딧은 첫 제공자 호출 전에 예약되고 이후 정확한 비용으로 정산되므로, 전송이 실패하면 환불되며 아무것도 없이 청구되지 않습니다. 삭제도 확인이 필요하며, 에이전트가 무엇을 만들었다고 말하기 전에 모든 캠페인 구조를 광고 플랫폼에서 다시 읽어 옵니다.
일부러 헤드리스로 하지 않는 단계가 하나 있습니다: 계정 연결은 OAuth 승인 화면이므로, 채널은 브라우저에서 한 번 연결합니다. 그 이후의 모든 작업은 도구 호출입니다.
나머지 매트릭스
Cursor에서 게시: Facebook · Threads · TikTok · YouTube · X · LinkedIn · Pinterest · Bluesky · Telegram. 또는 Cursor가 게시할 수 있는 모든 곳을 보세요.
다음에서 Instagram에 게시: Claude · ChatGPT · Claude Code · Codex · Cline · OpenClaw · Grok Bot · Hermes · Gemini CLI · Perplexity · Le Chat · Claude Cowork · Perplexity Computer · Paperclip
자주 묻는 질문
Claude에서 Facebook에 게시할 수 있나요?
네, Hermoso의 MCP 서버를 통해 가능합니다. npm install -g hermoso && hermoso auth login을 실행한 다음 ~/.cursor/mcp.json이 npx -y hermoso mcp를 가리키도록 하세요. 브라우저 로그인이 인증 정보를 저장하므로 파일에 키를 넣지 않습니다. 그러면 Cursor에 922개 이상의 도구가 생기며, Facebook에 게시하는 도구뿐 아니라 시장에서 이미 돌고 있는 광고를 조사하고 크리에이티브를 렌더링하는 도구도 포함됩니다.
Facebook을 Claude에 어떻게 연결하나요?
두 단계이며 각각 한 번씩만 하면 됩니다. npm install -g hermoso && hermoso auth login을 실행한 다음 ~/.cursor/mcp.json이 npx -y hermoso mcp를 가리키도록 하세요. 브라우저 로그인이 인증 정보를 저장하므로 파일에 키를 넣지 않습니다. 그다음 Hermoso의 설정 → 커넥터에서 Facebook을 연결하세요. 브라우저에서 OAuth 동의 화면이 열립니다. 그 뒤로 Cursor는 Instagram 게시를 일반 도구 호출로 처리합니다.
Claude에서 Facebook에 게시할 때 캡션 글자 수 제한은 얼마인가요?
Instagram 캡션은 2,200자로 제한되며, 이 제한은 게시물이 실행될 때가 아니라 대기열에 넣을 때 적용됩니다. Hermoso는 게시물을 만들거나 예약할 때 이를 적용하므로, ChatGPT는 나중에 아무도 지켜보지 않을 때 실패하는 대신 즉시 알림을 받습니다.
ChatGPT가 게시뿐 아니라 Instagram 광고도 운영할 수 있나요?
네, Meta 캠페인 구조를 통해서요. Instagram 노출은 Meta 광고 세트 안에서 고릅니다. preview_meta_ad는 예산을 쓰기 전에 노출 위치별로 실제 광고를 렌더링합니다.
Claude로 Facebook에 비공개로 또는 초안으로 게시할 수 있나요?
아니요. Instagram의 콘텐츠 게시 API는 게시하거나 아무것도 하지 않습니다. 일부 공개, 비공개, 초안 게시물은 없습니다. 게시된 캡션은 수정할 수도 없습니다. Meta가 게시된 게시물에서 바꾸게 해 주는 필드는 댓글 허용 여부뿐입니다. 게시물 삭제는 지원되며, 일반 게시물, 스토리, 릴스, 캐러셀 앨범 전체를 포함합니다. Hermoso는 Instagram이 지킬 수 없는 공개 범위를 요청받는 순간 거부하며, 더 약한 설정으로 몰래 게시하지 않습니다.
ChatGPT가 게시하기 전에 Facebook을 조사할 수 있나요?
네. search_meta_ads는 Meta 광고 라이브러리의 Instagram 노출을 포함하며, search_instagram은 공개 릴스를 키워드로 검색합니다.