문서
도구 레퍼런스
포샌디 MCP 서버가 AI에게 여는 도구 전체 목록이에요. 각 도구가 무엇을 받고 무엇을 돌려주는지 정리했어요.
AI에게는 토큰에 권한이 있는 도구만 목록에 보여요. 목록에 없는 도구를 AI가 부르는 일은 없어요.
모든 도구는 REST API와 같은 라우트를 그대로 불러요. 구현이 하나라서 REST에서 막히는 제한은 MCP에서도 똑같이 막혀요.
권한
| 이름 | 종류 | 하는 일 |
|---|---|---|
accounts:read | 읽기 | 연결된 채널 목록 보기 |
posts:read | 읽기 | 발행 기록, 댓글, 지표 보기 |
posts:write | 쓰기 | 발행, 삭제, 답글, 숨기기, 파일 올리기 |
offline_access | OAuth | 브라우저를 닫아도 AI 연결 유지 |
accounts:read는 연결된 채널을 읽어요. posts:read는 발행 기록을 읽어요. posts:write는 발행, 삭제, 답글, 업로드를 해요. offline_access는 브라우저를 닫은 뒤에도 연결을 유지해요.
도구 목록
아래 표의 "권한"은 그 도구를 쓰는 데 필요한 권한이에요.
채널과 발행
| 이름 | 권한 | 설명 |
|---|---|---|
list_accounts | accounts:read | 연결된 채널과 각 채널의 id. 발행 전에 먼저 불러요. |
select_channels | accounts:read | 어느 채널에 올릴지 고르고, 발행 전에 고른 결과를 사람에게 보여 줘요. |
list_platforms | accounts:read | 모든 채널과 각 채널의 제한, 그리고 options.<채널>에 넣을 수 있는 값의 JSON Schema |
list_posts | posts:read | 포샌디로 올린 최근 글. 예약 글과 초안도 들어 있어요. status, since, until, sort=scheduled로 "이번 주에 뭐 나가?"에 답해요. |
list_channel_posts | posts:read | 지금 채널에 있는 글. 채널 앱에서 직접 쓴 글도 나와요. 항목마다 고유 링크(permalink)가 붙어요. |
publish | posts:write | 아래 "publish 자세히"를 봐요. |
open_post | posts:read | 글 하나의 내용, 댓글 스레드, 지표를 한 번에 가져와요. 사람이 링크를 줬을 때 쓰는 도구예요. |
get_post | posts:read | 발행 하나와 대상별 상태 |
retry_post | posts:write | 실패한 대상만 다시 보내요. naver_draft_unknown이나 naver_reply_unknown 대상은 force: true를 넣어야 다시 보내요. 같은 계정에 같은 내용과 파일의 글이 이미 있으면 duplicate_post로 답하고 아무것도 보내지 않아요. force: true면 그래도 보내요. |
update_post | posts:write | 아래 "update_post 자세히"를 봐요. |
publish_now | posts:write | 예약 글이나 초안을 지금 바로 보내요. 예약 발송과 같은 함수를 써서 두 번 나가지 않아요. |
delete_post | posts:write | 채널에서 글을 지워요. 예약 글이나 초안은 채널에 아직 아무것도 없어서 예약을 취소하고 기록을 지워요. 글을 올린 계정의 연결이 끊겼으면 409 account_disconnected로 답하고 어느 채널에서도 지우지 않아요. 같은 계정을 먼저 다시 연결해요. |
publish 자세히
content,accountIds, 선택으로mediaIds, 채널별 설정인options를 받아요.options모양은GET /v1/platforms의 options에 있어요. 모든 채널이 그 채널에만 다른 본문을 넣는content를 받아요.scheduledAt을 넣으면 글을 보관했다가 그 시각에 보내요. 채널은 가리지 않아요.draft: true는 보내지 않고 저장만 해요.- YouTube는
options.youtube.title과 영상 정확히 1개가 필요해요. - Instagram은 모든 글에 미디어가 필요해요. 영상 1개만 넣으면 릴스가 돼요.
options.instagram.audio로search_instagram_audio에서 찾은 음악을 넣을 수 있어요(Facebook으로 연결한 계정만). - Facebook은 페이지에 올려요.
- Bluesky(준비 중)는 글자를 grapheme 단위로 세고 UTF-8 바이트 수도 제한해요.
options.bluesky.langs를 넣어요. - 네이버 블로그는 본문 안에서 미디어 자리를 정해요. 아래 줄을 한 줄에 하나씩 단독으로 써요.
- Ghost(준비 중)는
options.ghost.title이 필요하고, 사진 자리는 네이버와 같은 이미지 줄로 정해요.

@video(media:<id>)
update_post 자세히
- 예약 글이나 초안을 고쳐요. 바꿀 수 있는 값:
content,mediaIds,accountIds,options,threadItems,scheduledAt(null이면 초안이 돼요),draft. 보내지 않은 값은 그대로 남아요. - 예약 글이나 초안이 연결 글(체인)이어도 고칠 수 있어요.
content는 첫 항목만 바꾸고,threadItems는 체인 전체를 바꿔요. - 이미 올라간 글도 지원하는 채널에서는 그 자리에서 고칠 수 있어요(
list_platforms의 featureupdate). 네이버 블로그 글은content,mediaIds,options를 보내도 주소가 그대로예요. 네이버에만 가는 글에서mediaIds를 빼면 새 본문의media:참조가 미디어 목록이 되고, 네이버 한도보다 많으면naver_media_over_limit로 답해요. YouTube 글과 Facebook 텍스트, 링크, 사진, 릴스 글의 본문도 그 자리에서 고쳐요. - 채널에서 직접 쓴 글(origin
imported)은 채널에서 먼저 읽어 오기 때문에, 보내지 않은 값은 채널에 있던 값이 남아요. YouTube, Facebook 텍스트/링크/사진 글, 네이버 블로그(featureupdate_imported)에서 고칠 수 있고, 그 밖에는post_not_editable이에요. - 네이버 글은 지금 원문을 기준으로 다시 써요. 글에 이미 있는 블록(사진, 영상, 카드, 표, 꾸민 소제목과 인용, 색이나 크기나 정렬이 들어간 글 블록)은
@keep(...)줄로 와서 그대로 유지돼요. 새 블록(새 표 포함)은 평소 문법으로 아무 데나 넣어요. 기존 표를 바꾸려면 그 줄을 지우고 GFM으로 표를 다시 써요. - 첫 호출은
naver_source_required와 함께 지금 원문과sourceVersion을 돌려줘요. 고친 원문을content로,sourceVersion과 같이 다시 보내요. 확장 0.7.8 이상이 필요해요. - 오래된 글을 네이버 편집 화면에서 열 때 이미지가 없다는 경고가 뜨면, 이 방법으로 같은 주소에 다시 써서 고칠 수 있어요.
- 네이버 아이디별 한도에 걸리면 429
naver_rate_limited와retryAfterSeconds로 답할 수 있어요. - 이미 올라간 글을 고치는 건 비동기예요.
wait: true면 결과가 나올 때까지(최대 75초) 기다려요. 아니면get_post로 확인해요. - 글을 올린 계정의 연결이 끊겼으면 409
account_disconnected로 답해요. 같은 계정을 다시 연결하면 글 id가 돌아와요.
답글과 반응
| 이름 | 권한 | 설명 |
|---|---|---|
list_replies | posts:read | 글 아래의 답글 스레드 |
reply | posts:write | id, content, 대댓글용 replyTo(선택), secret(선택, 네이버 블로그), 답글이 올라갈 때까지 최대 10초 기다리는 wait(선택). 네이버 블로그에서는 id에 다른 사람 글 링크를 넣을 수 있어요. |
like | posts:write | id, 글 대신 답글에 공감할 때 replyTo(선택). 여러 번 불러도 결과가 같고 취소는 없어요. 네이버 블로그(다른 사람 글은 링크로)와, Facebook으로 연결하고 좋아요 권한이 있는 Instagram 계정에서 돼요. 그 밖의 Instagram 계정과 다른 채널은 not_supported예요. Facebook으로 연결한 Instagram 계정에 권한이 없으면 reconsent_required로 답해요. 다시 연결하면 권한이 추가돼요. |
follow | posts:write | blog, mutual(선택), message(선택). 지금은 네이버 블로그만 돼요. 이웃추가를 하거나, 서로이웃 신청을 보내면 pending으로 와요. |
find_naver_neighbor_candidates | posts:read | query, mutual, days(선택, 기본 30), accountId. 네이버 블로그 전용. 그 주제로 최근 글을 쓴 블로그를 블로그별로 묶어 보여 주고, 이미 이어진 블로그(서로이웃, 보낸 신청, 거절)는 빼요. 아무것도 보내지 않아요. 한 번 부를 때마다 키워드 측정 1회를 써요. |
hide_reply | posts:write | replyId, postId, hide(선택, 기본 true) |
delete_reply | posts:write | replyId, postId. 댓글을 완전히 지워요(hide_reply는 숨기기만 해요). Instagram과 Facebook은 내 글에 달린 누구의 댓글이든 지워요. Threads와 Bluesky(준비 중)는 답글 자체가 글이라 연결된 계정이 쓴 답글만 지워요. 어느 채널에서 되는지는 GET /v1/platforms의 features에서 확인해요. |
get_insights | posts:read | 조회, 좋아요, 답글, 리포스트, 인용, 공유 |
get_quota | posts:read | 24시간 한도를 얼마나 썼는지. 고정된 제한값이 아니라 채널이 알려 주는 실제 사용량이에요. |
네이버 블로그 검색 도구
| 이름 | 권한 | 설명 |
|---|---|---|
diagnose_naver_blog | posts:read | 네이버 블로그 전용. 공개 블로그의 RSS(최근 글 최대 50편)를 읽고 제목이 검색을 노리고 쓰였는지 알려 줘요. 검색 의도어가 든 제목 비율, 날짜나 회차로 시작하는 제목 수, 한 달 글 수, 카테고리, 조사해 볼 만한 제목 반복어를 줘요. 읽은 날짜 범위도 같이 와요. 24시간 캐시이고, 캐시에 없으면 하루 20회 진단 중 1회를 써요. 제목만 읽고 바로 끝나요. 글이 실제로 AI 브리핑에 인용되거나 검색에 노출되는지는 scan_naver_blog_visibility를 부른 다음 get_naver_visibility에 블로그를 넣어 확인해요. |
expand_naver_keywords | posts:read | 네이버 블로그 전용. 씨앗 키워드 10개까지를 네이버 자동완성으로 한 단계 펼쳐요. 단어마다 어느 씨앗에서 나왔는지 같이 줘요. 포샌디 크롬 확장이 켜져 있으면 확장이 뒤에서 찾고, 아니면 서버가 찾아요. naver_autocomplete_unavailable로 답하면 가진 키워드 목록을 research_naver_keywords에 바로 넘겨요. |
research_naver_keywords | posts:read | 네이버 블로그 전용. 키워드 60개까지 측정해요(검색수, 문서수, 월 발행량). 키워드마다 판정하고, 같은 의도의 메인 1개 + 서브 2~5개 세트로 묶고, 세트마다 바로 붙여넣을 한국어 프롬프트를 줘요. 시간 예산 안에서 돌아서, partial: true와 unmeasured[]가 오면 같은 키워드로 다시 불러 캐시에서 마저 채워요. 보고서(reportId)로 저장되고, 10분 안의 같은 요청은 하나로 합쳐요. |
list_naver_keyword_reports | posts:read | 저장된 키워드 조사 기록. 최신순이고 세트와 프롬프트가 같이 와요. |
get_naver_keyword_history | posts:read | 키워드 하나의 측정 기록. 측정한 날마다 한 점, 최신순 |
check_naver_visibility | posts:read | 키워드 10개까지를 포샌디 크롬 확장으로 네이버 통합검색에서 확인해요. 확장이 그 사람 브라우저에서 공개 검색 결과 페이지를 약 3초 간격으로, 쿠키와 창 없이 읽어요. 키워드마다 AI 브리핑이 답했는지와 형태, 본문과 이미지 출처의 순위, 출처별로 인용된 답변 문단 수, 통합검색 안 블로그 글 위치, 관련 질문을 돌려줘요. blog를 넣으면 그 블로그 글을 표시하고 판정을 줘요. 30분 안에 읽은 키워드는 저장된 결과로 답하고, fresh: true면 다시 읽어요. 새로 읽을 때마다 하루 200페이지 한도를 써요. 최대 60초 기다리고, 남은 키워드는 partial과 pending으로 알려 준 뒤 뒤에서 계속 읽어요. 응답에는 citationRules도 와요. AI 브리핑이 인용한 글에서 포샌디가 측정한 문장 규칙과, 확인 대상이 아닌 제안으로 줄 약한 규칙(등급 B)이에요. 각각 근거와 주의 사항이 붙고, 네이버의 기준은 아니에요. 키워드 결과마다 organicRead가 붙어요. false면 그 키워드의 통합검색 블로그, 웹 영역을 읽지 못한 거예요(페이지 모양이 바뀌었거나 결과가 잘림). 이때 exposed: false와 빈 organic 목록은 "노출 안 됨"이 아니라 "읽지 못함"이니 그렇게 전해요. |
scan_naver_blog_visibility | posts:read | 네이버 블로그 성적표를 시작해요. 공개 RSS에서 최근 글(기본 최대 50편)을 읽고, 글마다 대표 키워드를 골라 포샌디 크롬 확장으로 뒤에서 확인해요. 제목만 읽는 diagnose_naver_blog와 달리 글마다 키워드를 검색해요. 제목 요약도 진단 횟수를 쓰지 않고 새로 고쳐요. runId와 etaSeconds를 바로 줘요. 같은 블로그의 6시간 안 성적표가 있으면 그걸 돌려줘요(reused). |
get_naver_visibility | posts:read | 네이버를 다시 읽지 않고 포샌디에 기록된 검색, AI 브리핑 결과를 읽어요. blog를 넣으면 성적표(숫자 카드 4개, 포샌디 기준 점수 5개와 원값, 기준값, 가장 낮은 축, 글별 최근 판정, 사건), post(네이버 글 주소나 포샌디 발행 id)를 넣으면 그 글의 확인 기록과 사건, runId를 넣으면 확인 하나의 지금까지 결과를 줘요. blog의 카드는 마지막 스캔뿐 아니라 지금까지 확인한 그 블로그 글 전부를 세요. lastScan.total이 마지막 스캔의 글 수예요. 다섯 축 중 search_title, consistency, topic_focus는 제목에서, ai_cited, search_exposed는 검색 확인에서 나와요. 키워드 결과의 organicRead 규칙은 check_naver_visibility와 같아요. 성적표의 노출률과 search_exposed 축은 영역을 읽은 글(organicReadPosts)만 세요. organicRead가 false인 글이나 추세 날짜는 "노출 안 됨"이 아니라 "읽지 못함"이에요. |
search_youtube_videos | posts:read | 키워드로 YouTube를 검색해 상위 영상의 조회수, 구독자 수, 길이, 게시일(YouTube가 준 그대로)을 줘요. 조회/구독 비율과 쇼츠/롱폼 구분은 포샌디가 계산한 값이고 YouTube 지표가 아니에요(dataNotes에 적혀 있어요). 표를 제목, 훅 아이디어로 바꾸는 프롬프트를 그 사람의 포샌디 언어(한국어, 영어)로 줘요(topic을 넣으면 채워져요). 같은 검색은 24시간 캐시라 횟수에 안 세요. 새 검색은 하루 검색 횟수 1회와 공용 YouTube Data API 단위를 써요. 검색 기록에 저장돼요. |
채널 확인과 설정
| 이름 | 권한 | 설명 |
|---|---|---|
get_publish_options | posts:read | 발행 전에 채널에 물어봐야 하는 값. TikTok(준비 중) 전용이에요. 글이 나갈 크리에이터 닉네임, 이 계정이 지금 고를 수 있는 공개 범위, 올릴 수 있는 상태인지, 영상 길이 상한을 줘요. 다른 채널은 not_supported예요. |
search_instagram_audio | posts:read | Instagram 전용. 연결된 Instagram 계정 하나가 릴스에 넣을 수 있는 음악이나 원본 소리를 찾아요(options.instagram.audio.id용). query가 없으면 그 계정의 인기 목록(계정마다 달라요)을 주고, query가 있으면 Meta의 로열티 프리 음악(Sound Collection)에서만 찾아요. 그래서 가수나 곡 이름으로는 그 곡이 안 나와요. Facebook으로 연결한 계정만 되고, 그 밖은 not_supported예요. 다음 페이지는 nextCursor를 cursor로 넘겨요. |
describe_grammar | posts:read | 자체 마크업이 있는 채널의 본문 쓰는 법. 지금은 네이버 블로그만 있고 다른 채널은 not_supported예요. 주제 없이 부르면 개요와 주제 목록(directives, attributes, inline, blocks, highlight, media, limits)을 주고, 주제를 넣으면 그 부분 전체와 조용히 실패하는 실수까지 줘요. 발행할 때 검사하는 문법과 같은 값이에요. |
naver_layout | posts:read | 네이버 블로그 전용. 발행할 때 본문이 어떻게 놓일지 미리 보여 줘요(기본 폼: 밑줄 인용 소제목, 섹션 사이 구분선, 섹션마다 사진 1장). 글자는 바뀌지 않아요. 쓴 그대로 올리려면 options.naver_blog.layout: "as-is"를 넣어요. forms: "all"이면 모든 프리셋을 나란히 보여 줘서 사람이 고를 수 있어요. |
bridge_status | posts:read | 네이버 블로그, 네이버 클립(준비 중) 전용. 브라우저 확장이 켜져 있는지, 마지막으로 언제 보였는지, 확장이 있는 프로필로 크롬을 여는 운영체제별 명령을 줘요. publish와 503 bridge_offline에도 같은 값이 와요. |
list_naver_drafts | posts:read | 네이버 블로그 전용. 임시저장함의 초안 목록(logNo, 제목, 마지막 저장 시각, 최신순). options.naver_blog.draftOnly로 올린 글과 네이버 에디터에서 손으로 저장한 글이 같이 나와요. 확장 0.7.2 이상이 필요하고, 그 전 버전은 422 extension_outdated로 답해요. |
publish_naver_draft | posts:write | 네이버 블로그 전용. 임시저장함의 초안을 네이버에 있는 그대로 발행해요. 에디터에서 손으로 고친 내용이 그대로 나가요. content는 보내지 않아요. 카테고리, 태그, openType은 따로 넣지 않으면 초안 값을 써요. 결과 모양은 publish와 같아요. 포샌디로 만든 초안(externalId가 draft: + logNo)이면 새 글을 만들지 않고 그 글을 발행됨으로 바꿔요. |
refresh_account | posts:write | 채널 정보를 다시 읽어요. 네이버 블로그는 브라우저 확장으로 카테고리를 다시 읽고 최대 1분 기다려요. Threads, Instagram, Facebook은 표시 이름과 프로필 사진을 다시 읽어요. 로그인을 갱신하지는 않아요. 채널이 로그인을 끝낸 연결은 account_expired로 답해요. |
미디어
| 이름 | 권한 | 설명 |
|---|---|---|
media_upload_link | posts:write | 사람이 자기 기기에서 파일을 올리게 해요. 잠깐 쓸 수 있는 링크를 줘요. |
media_upload_status | posts:read | 사람이 파일을 올렸는지 확인해요. waiting, ready, expired 중 하나와 그 링크로 올린 미디어 id 전부를 줘요. 준비된 이미지는 이미지 블록으로도 와서(previewIds가 순서) AI가 사진을 직접 볼 수 있어요. duplicateOf가 있는 미디어는 다른 id와 같은 파일이에요. |
media_from_url | posts:write | 이미 공개 웹에 있는 파일을 붙여요. 업로드 없이 한 번에 끝나요. Google Drive, Dropbox 공유 링크는 파일이 아니라 HTML을 돌려줘서 안 돼요. |
media_presign | posts:write | 미디어 id와 한 번 쓰는 업로드 주소를 받아요. |
media_complete | posts:write | 발행 전에 업로드가 끝났다고 알려요. |
update_media | posts:write | id, aiGenerated. 업로드한 파일의 'AI로 만든 파일' 표시를 켜거나 꺼요. 이후에 올리거나 고치는 글에 적용돼요. 네이버 블로그 사진에는 AI 활용 표시가, Instagram, YouTube, TikTok(준비 중)에는 AI 사용 표시가 붙어요. 이미 올라간 글은 바뀌지 않아요. |
자동화
| 이름 | 권한 | 설명 |
|---|---|---|
list_automation_templates | posts:read | 자동화 템플릿 전체와 각 템플릿이 받는 값. create_automation 전에 여기서 시작해요. |
create_comment_to_dm | posts:write | 가장 많이 쓰는 자동화예요. 누가 댓글을 달면 계정이 DM을 보내요. 초안으로 만들어지고, enable_automation 전에는 아무것도 나가지 않아요. Instagram은 팔로우한 사람에게만 보내도록 걸 수 있어요. Facebook은 그 조건이 안 되고, Threads는 DM이 없어요. |
create_automation | posts:write | list_automation_templates의 아무 템플릿으로 초안을 만들어요. 템플릿에 없는 흐름은 문서를 직접 만들어 그 초안에 put_automation을 불러요. |
list_automations | posts:read | 워크스페이스의 자동화 목록. 상태, 트리거 종류, 실행 횟수가 같이 와요. |
get_automation | posts:read | 자동화 하나를 문서로 줘요. 트리거, 노드, 시작 노드, 그리고 put_automation에 필요한 version |
put_automation | posts:write | 문서 전체를 바꿔서 자동화를 고쳐요. 템플릿에 없는 흐름이나 캔버스에서 이미 고친 흐름에 써요. 아직 템플릿 모양인 흐름은 automation_is_template으로 답해요. update_automation으로 고치거나 detachTemplate: true를 넣어요. 읽은 version을 같이 보내지 않으면 version_conflict로 답해요. |
enable_automation | posts:write | 자동화를 켜요. 이때부터 실제 사람에게 메시지가 나가니 먼저 확인받아요. 흐름에 필요한 권한(DM 권한, 멘션 트리거나 Instagram 댓글 좋아요의 개별 권한)이 계정에 없으면 reconsent_required로 답해요(다시 연결해요). 키워드 없는 다른 메시지 흐름이 그 계정에서 이미 켜져 있으면 automation_catch_all_taken으로 답해요. |
disable_automation | posts:write | 자동화를 꺼요. 버튼을 기다리던 실행은 계속 기다리고, 새 실행은 시작하지 않아요. |
send_to_past_comments | posts:write | 켜진 댓글 자동화를 그 글에 이미 달려 있던, 놓친 댓글에도 돌려요. mode preview는 받을 사람과 못 받는 사람(7일 지남, 이미 답함, 키워드, 같은 사람의 다른 댓글)을 세고, start는 몇 건씩 나눠 보내기 시작하고, stop은 멈춰요. Instagram, Facebook. preview를 먼저 하고 사람에게 확인받은 뒤 start해요. |
update_automation | posts:write | 아직 템플릿 모양인 자동화를 고쳐요. 바꿀 템플릿 값만 넣어요(deliver 같은 객체는 한 단계까지 합쳐지고, null은 그 값을 지워요). 읽은 version도 같이 보내요. 이름 바꾸기, 켜고 끄기도 돼요. 캔버스에서 고친 흐름은 automation_not_template으로 답하니 put_automation을 써요. |
delete_automation | posts:write | 자동화와 실행 기록을 지워요. 켜져 있으면 force가 true가 아닌 한 automation_live로 거절해요. |
duplicate_automation | posts:write | 같은 설정으로 자동화를 새 초안으로 복사해요. 이름을 바꿀 수도 있어요. |
validate_automation | posts:read | 흐름 문서를 저장하지 않고 한 계정 기준으로 검사해요. 노드 모양, 참조, 24시간 창, 계정에 개별 권한이 없는 기능(멘션 트리거, Instagram 댓글 좋아요)을 봐요. 문제를 위치와 함께 알려 주고, 빈 목록이면 put_automation이 받아 줘요. |
list_automation_runs | posts:read | 자동화 하나의 실행 목록과 단계 기록. 상태로 어디까지 왔는지, 왜 멈췄는지 알 수 있어요(running, waiting, done, blocked_window, blocked_opt_out, failed_channel 등). |
list_automation_versions | posts:read | 자동화 하나의 저장된 버전 목록. put_automation이나 update_automation을 부를 때마다 하나씩 쌓여요. 특정 버전은 get_automation에 version을 넣어 읽어요. |
인박스와 연락처
| 이름 | 권한 | 설명 |
|---|---|---|
list_conversations | posts:read | 인박스. Instagram, Facebook DM 대화와 Threads 멘션 스레드예요. 항목마다 24시간 창이 열려 있는지, 얼마나 남았는지 같이 와요. |
read_conversation | posts:read | 대화 하나의 최근 메시지와 상대 정보(이름, 팔로우 여부(Instagram만), 태그, 수신 거부). 승인을 기다리는 AI 초안은 draft 상태로 보여요. |
send_dm | posts:write | 대화에 계정 이름으로 메시지를 보내요. 상대의 마지막 메시지 뒤 24시간 안에만 보낼 수 있고, 지나면 window_closed로 거절해요. Threads 멘션 스레드에서는 공개 답글로 올라가요. 보내면 그 대화의 자동화가 30분 동안 멈춰요. |
get_contact | posts:read | 연락처 하나. 이름, 아이디, 서로 팔로우 여부(Instagram, 메시지를 보낸 사람만), 팔로워 수, 태그, 수신 거부, 메시지 창이 닫히는 시각 |
list_mentions | posts:read | 연결된 Threads 계정을 언급한 글. 멘션은 별도 권한이 필요해서, 권한이 없으면 빈 목록과 reconsent_required 안내가 와요. |
approve_reply | posts:write | Threads 전용. 답글 승인 기능으로 보류된 답글을 승인하거나 무시해요. 승인하면 공개돼요. |
도움말
| 이름 | 권한 | 설명 |
|---|---|---|
get_help | accounts:read | 문제 해결 답변. 왜 안 됐는지, 무엇을 하면 되는지 알려 줘요. code(에러 코드), query(아무 언어로 몇 단어), id, platform, locale을 넣어요. 아무것도 안 넣으면 질문 전체 목록이 와요. 안 될 때 페이지와 같은 답이고, 답이 있는 에러에는 error.help에 그 주소가 붙어요. |
report_problem | accounts:read | get_help로 해결되지 않고 사람이 포샌디 팀 확인을 원할 때 문제 보고를 보내요. personSaid에는 사람이 한 말을 그대로, summary에는 AI가 해 본 것을 넣어요. 포샌디가 최근 실패한 요청 기록을 붙이고, 답장은 계정 이메일로 가요. 보내기 전에 보낼 내용을 사람에게 먼저 보여 줘요. 같은 문제를 하루 안에 다시 보내면 기록만 하고 메일은 다시 보내지 않아요. |
자주 묻는 것
AI에 도구가 안 보여요
토큰에 권한이 있는 도구만 보여요. 승인할 때 권한을 좁게 골랐다면 다시 승인하고 권한을 기본값 그대로 둬요. 읽기 권한만 있으면 발행 도구는 안 보여요. 승인 화면에서 채널을 하나도 고르지 않았을 때도 도구 목록이 비어요.
어떤 도구를 먼저 불러야 해요?
list_accounts나 select_channels예요. 발행에 넣을 계정 id를 여기서 받아요. 그다음 publish를 부르고, get_post로 올라갔는지 확인해요.
도구가 REST API와 다르게 동작해요?
아니요. 모든 도구가 REST API와 같은 라우트를 불러요. 제한, 에러 코드, 결과가 같아요. REST 쪽 설명은 발행, 답글과 지표, 미디어에 있어요.
