← 전체 도구
instagram · fetchsolari:read

solari fetch instagram posts

Instagram 계정의 게시물·릴스·태그된 게시물을 실시간으로 수집합니다.

MCP 도구
solari_fetch_instagram_posts
CLI
solari fetch instagram posts
권한
solari:read
이용 가능 플랜
  • 무료 체험
  • Plus
  • Pro
  • Enterprise
크레딧
1

개요

Instagram 계정의 탭 하나를 실시간으로 수집하고, 같은 호출에서 게시물을 탭 순서대로 조회수·좋아요·댓글과 함께 돌려줍니다. type으로 탭을 고릅니다: posts(프로필 그리드), reels(릴스), tagged_posts(다른 계정이 이 계정을 태그한 게시물).

언제 쓰나요 — 계정의 최신 게시물이나 현재 릴스 조회수가 필요할 때, 또는 catalog account posts 결과에 빠진 게시물이 있거나 오래돼 보일 때 쓰세요.

돌려주는 값 — 수집한 게시물(catalog account posts와 같은 item 형태)과 수집 결과.

파라미터

usernamestring필수
Instagram username.≤ 64 chars
typeenum선택
posts(프로필 그리드), reels(릴스 탭), tagged_posts(다른 계정이 이 계정을 태그한 게시물).기본값 "posts"값postsreelstagged_posts
pagesinteger선택
수집할 탭 페이지 수. 한 페이지에 게시물 12개 정도입니다.기본값 11–3
cursorstring선택
이전 호출의 collection.next_cursor. 넘기면 그 다음(더 오래된) 페이지부터 이어서 수집합니다.≤ 8192 chars

응답

Response

foundboolean
Instagram에 그 핸들의 계정이 없으면 false. 이때 items는 비어 있습니다.
account_iduuid
해당 계정.
usernamestring
찾은 핸들.
typestring
수집한 탭.
collectionobject
수집 결과.
totalinteger
items에 담긴 게시물 수.
itemsobject[]
수집한 게시물(탭 순서).
notestring
알릴 내용이 있을 때만 옵니다: 비공개 계정, 탭을 받지 못함, 아직 저장 중인 게시물, 더 가져올 페이지.
nextstring
탭이 더 이어질 때만: cursor=next_cursor를 붙인 같은 호출로 이어서 수집합니다.

collection

type / pagesstring / integer
읽은 탭과 페이지 수.
fetched_countinteger
Instagram이 돌려준 게시물 수.
stored_countinteger
이번 호출에서 카탈로그에 저장·갱신한 게시물 수.
has_moreboolean
읽은 페이지보다 탭이 더 이어지면 true. cursor=next_cursor로 이어서 수집합니다.
truncatedboolean
요청한 페이지를 다 읽기 전에 수집이 멈췄으면 true.
pending_countinteger
아직 저장 중인 게시물 수. 이 게시물의 item에는 당분간 post_id, slug, url, posted_at만 있습니다.
skipped_reasonstring | null
아무것도 수집하지 않은 이유. private은 비공개 계정이라는 뜻입니다.
unavailable_reasonstring | null
Instagram이 탭을 돌려주지 않은 이유.

items[]

post_iduuid
SOLARI 게시물 id.
slugstring
Instagram shortcode.
urlstring
공개 고유 링크.
post_typestring
reel, video, photo, carousel 중 하나.
posted_attimestamp
게시 시각(UTC).
textstring
캡션.
like_count / comment_countinteger
참여 지표.
play_countinteger | null
조회수. Instagram이 조회수를 주지 않으면 null이며, 사진 대부분이 그렇습니다.
media_countinteger
미디어 수.
is_paid_partnershipboolean | null
Instagram 유료 파트너십 표시.
mediasobject[]
캐러셀 순서대로 나열한 모든 미디어.
assetsobject[]
미디어 파일 목록(순서대로). 파일마다 바로 내려받는 asset_url, media_type, video_duration이 있습니다.
thumbnail_urlstring
썸네일.
author_username / author_account_idstring / uuid
tagged_posts에서만: 게시물을 올린 계정.

예시

요청

$ solari fetch instagram posts username=innisfreeofficial type=reels

응답 · 읽기 편하도록 긴 문자열과 반복되는 배열 항목을 줄였습니다.

{
  "found": true,
  "account_id": "018cabce-14cc-7544-8890-7811ec33ef74",
  "username": "innisfreeofficial",
  "type": "reels",
  "collection": {
    "type": "reels",
    "pages": 1,
    "fetched_count": 12,
    "stored_count": 12,
    "has_more": true,
    "truncated": false,
    "next_cursor": "eyJhIjoiMDE4Y2FiY2UiLCJ0IjoicmVlbHMiLCJjIjoiUUZEIn0",
    "pending_count": 0,
    "skipped_reason": null,
    "unavailable_reason": null
  },
  "total": 12,
  "items": [
    {
      "post_id": "01a06275-d974-7fda-98ee-dd3ee15b4dcf",
      "slug": "DcyMAmUh6FZ",
      "url": "https://www.instagram.com/p/DcyMAmUh6FZ/",
      "post_type": "reel",
      "posted_at": "2026-09-02T12:00:06+00:00",
      "text": "Deeply hydrated skin—NO OFF HOURS. 💚\nwherever the day takes MINGYU (@min9yu_k)—his hydration stays SUPERCHARGED ⚡️\n\nGreen Tea Ceramide Milk: Lightweight milky toner that won‘t clog your pores\nGreen Tea Ceramide Mist: Tou …",
      "like_count": 3224,
      "comment_count": 57,
      "play_count": 22467,
      "media_count": 1,
      "is_paid_partnership": false,
      "medias": [
        {
          "media_type": "video",
          "media_url": "https://smr-images-b.bzine.co/users/018cabce-14cc-7544-8890-7811ec33ef74/posts/01a06275-d974-7fda-98ee-dd3ee15b4dcf/medias/01a06275-db2b-77f7-a020-b4beb744771f.mp4",
          "thumbnail_url": "https://bzine.co/cdn-cgi/media/width=480,mode=frame,time=0ms/https://smr-images.bzine.co/users/018cabce-14cc-7544-8890-7811ec33ef74/posts/01a06275-d974-7fda-98ee-dd3ee15b4dcf/medias/01a06275-db2b-77f7-a020-b4beb744771f.m …",
          "video_duration": 23.868000030517578,
          "tags": []
        }
      ],
      "assets": [
        {
          "asset_url": "https://smr-images-b.bzine.co/users/018cabce-14cc-7544-8890-7811ec33ef74/posts/01a06275-d974-7fda-98ee-dd3ee15b4dcf/medias/01a06275-db2b-77f7-a020-b4beb744771f.mp4",
          "media_type": "video",
          "video_duration": 23.868000030517578
        }
      ],
      "thumbnail_url": "https://bzine.co/cdn-cgi/media/width=480,mode=frame,time=0ms/https://smr-images.bzine.co/users/018cabce-14cc-7544-8890-7811ec33ef74/posts/01a06275-d974-7fda-98ee-dd3ee15b4dcf/medias/01a06275-db2b-77f7-a020-b4beb744771f.m …"
    },
    "… 11 more"
  ],
  "note": "The tab has more posts: request up to 3 pages to collect further back.",
  "next": "solari fetch instagram posts username=innisfreeofficial type=reels pages=3 cursor=eyJhIjoiMDE4Y2FiY2UiLCJ0IjoicmVlbHMiLCJjIjoiUUZEIn0"
}

MCP 호출

{
  "name": "solari_fetch_instagram_posts",
  "arguments": {
    "username": "innisfreeofficial",
    "type": "reels"
  }
}

주의사항

  • 조회수는 type=reels로 보세요. 프로필 그리드의 사진은 play_count가 null입니다.
  • 최근 게시물을 빠짐없이 보거나 현재 조회수가 필요하면 catalog instagram account posts 대신 이 도구를 쓰세요. 저장된 카탈로그는 빠진 게시물이 있거나 오래됐을 수 있습니다.
  • 호출 한 번에 보통 5~45초 걸립니다. 수집한 게시물은 카탈로그에도 저장됩니다.
  • 비공개 계정은 items가 비어 있고 collection.skipped_reason=private입니다. 모르는 핸들은 먼저 수집하며, found=false면 Instagram에 그런 계정이 없다는 뜻입니다.
  • likes_hidden이 true면 like_count를 쓰지 마세요. 작성자가 좋아요를 숨겨서 null이거나 실제 값이 아닐 수 있습니다.

에이전트용 문서: /docs/tools/fetch-instagram-posts.md