# SOLARI > SOLARI CLI と MCP — ターミナルで使うクリエイター・ブランドインテリジェンス。 ## 概要 SOLARI CLI・MCP を使えば、SOLARI が集めた Instagram、TikTok、Threads などのデータを、使いたい場所で自由に扱えます。catalog はすでに集めているアカウントや投稿を探し、insight は SOLARI が作った順位・類似・広告・トレンドを返し、fetch はハンドルをアカウントまたは投稿として 1 件カタログに入れます。 ```console $ solari insight instagram account similar username=oliveyoung_official limit=10 $ solari insight instagram brand lookalike content username=innisfreeofficial limit=10 $ solari insight instagram content trend clusters region=KR since_days=7 ``` ## インストール **macOS** Shell: ```bash curl -fsSL https://solari.sh/install | sh ``` Homebrew: ```bash brew install brandazine/solari/solari ``` npm: ```bash npm install -g @brandazine/solari ``` uv: ```bash uv tool install solari-cli ``` uv tool は CLI を専用の環境に入れて PATH に通します。プロジェクトの依存関係と衝突しません。 **Windows** PowerShell: ```powershell irm https://solari.sh/install.ps1 | iex ``` npm: ```bash npm install -g @brandazine/solari ``` uv: ```bash uv tool install solari-cli ``` uv tool は CLI を専用の環境に入れて PATH に通します。プロジェクトの依存関係と衝突しません。 **Linux** Shell: ```bash curl -fsSL https://solari.sh/install | sh ``` npm: ```bash npm install -g @brandazine/solari ``` uv: ```bash uv tool install solari-cli ``` uv tool は CLI を専用の環境に入れて PATH に通します。プロジェクトの依存関係と衝突しません。 ```console $ solari --version 1.0.0-alpha.9 ``` ## クイックスタート ```console $ solari auth login # opens a browser; sign in with your SOLARI account $ solari # catalog, insight, and fetch $ solari catalog instagram account # a group path lists its tools $ solari catalog instagram account search --help # parameters, without calling $ solari catalog instagram account search query=oliveyoung brands_only=true limit=3 ``` account_id を取って、他のツールに渡します: ```console $ solari catalog instagram account search query=innisfree brands_only=true --json \ | jq -r '.content[0].text | fromjson | .items[0].account_id' 018cabce-14cc-7544-8890-7811ec33ef74 $ solari insight instagram brand ad stats username=innisfreeofficial $ solari insight instagram brand top collaborators username=innisfreeofficial limit=20 ``` query_type=bio は、アカウントが自分について書いた文言を探します: ```console $ solari catalog instagram account search query="협찬 문의" query_type=bio region=KR limit=10 $ solari catalog instagram account search query=skincare query_type=bio brands_only=true limit=20 ``` ## コマンド構造 ```console $ solari insight instagram brand # lists the group $ solari brand overview --help # unambiguous trailing paths resolve while browsing $ solari insight instagram brand overview username=innisfreeofficial # calls ``` 引数は key=value のペア。配列は JSON でもカンマ区切りリストでも受け付けます。 ```bash solari catalog instagram content batch post_ids='["019f505f-…","019f5060-…"]' solari catalog instagram content batch post_ids=019f505f-…,019f5060-… ``` - `solari help all` — すべてのコマンド・ツール・パラメータを 1 ページに出します。--json で機械可読になります。 - `solari get ` — ツールだけ実行します。途中までのパスは一覧ではなく失敗します。 - `solari cache refresh` — 自分のマシンのツール一覧をすぐに更新します。 ## 認証 - `solari auth login` — ブラウザを開きます。開けない環境(SSH や、エージェントが代わりに実行している場合)では、サインイン用のリンクを代わりに表示します。 - `solari auth list` — サインイン済みの SOLARI アカウントをすべて表示します。 - `solari auth switch ` — すでにサインイン済みの別のアカウントに切り替えます。ブラウザを開き直す必要はありません。 - `solari auth status` — サーバー、アカウント、サインインの期限。終了コード 3 は再サインインです。 - `solari auth logout` — サインアウトします。--all を付けるとすべてのアカウントから一度にサインアウトします。 ブラウザがコマンドを実行したマシンに戻してくれない環境(SSH やコンテナの中)では、サインインを終えたあとブラウザのアドレスバーにある URL をコピーし、待機しているプロンプトに貼り付けてください。 ## 出力とパイプ 結果は標準出力、案内は標準エラーです。パイプにはデータだけが流れます。 - `--json` — 生の JSON。実データは content[0].text の JSON 文字列です。 - `--ndjson` — 1 行に JSON オブジェクト 1 つ。total などの囲みは標準エラーへ。 - `--refresh` — ローカルの写しを飛ばしてサーバーからツール一覧を取ります。 - `--verbose, -v` — 進行状況を標準エラーに出します。秘匿値は伏せます。 ```console $ solari insight instagram brand ad posts username=innisfreeofficial months=24 limit=200 --ndjson >> ads.ndjson $ jq -s 'group_by(.username) | map({creator: .[0].username, posts: length})' ads.ndjson ``` ## 設定 設定は ~/.solari/config.json です。環境変数はその 1 回のコマンドだけ優先されます。 ```console $ solari config list $ solari config set server https://solari.sh $ solari config unset server ``` - `server · SOLARI_SERVER` — 接続先 SOLARI サーバー。既定は https://solari.sh。 - `cacheTtl · SOLARI_CACHE_TTL` — 自分のマシンのツール一覧を最新とみなす秒数。既定は 900 で、0 なら毎回サーバーに問い合わせます。 - `cacheShadow · SOLARI_CACHE_SHADOW` — 自分のマシンから答えたあと、裏で静かにツール一覧を更新するか。既定は true。 - `callTimeout · SOLARI_CALL_TIMEOUT` — ツール呼び出しを待つ秒数。既定は 150。 - `catalogTimeout · SOLARI_CATALOG_TIMEOUT` — ツール一覧を待つ秒数。既定は 8。 - `SOLARI_TOKEN` — solari auth token で得たアクセストークン。すべてのコマンドで保存済みサインインの代わりに使われます。「自分のコードから」を参照。 - `SOLARI_HOME` — SOLARI のファイルを ~/.solari 以外の場所に置きます。 - `SOLARI_NO_UPDATE_CHECK=1` — 1 日 1 回の更新チェックを完全に無効化します。NO_UPDATE_NOTIFIER=1 も同じ効果です。 ## エージェント ```text set up solari.sh/get-started.md ``` solari init はこのマシンのエージェントに CLI を登録します。solari init --remove で元に戻せます。 ```bash solari init # checkbox of every CLI (all on; space toggles, enter installs) solari init claude # just one target solari init --yes # skip the picker, install all solari init --remove ``` ターミナルやスクリプト、そしてコマンドを自分で実行するエージェントには CLI を使ってください。Claude Desktop や ChatGPT のように、アプリ自身がサーバーにつなぐ場合は MCP をお使いください。 ### 機械可読なドキュメント どのページの URL にも .md を付けられます。リファレンス全体を 1 ファイルでも受け取れます。 - `/get-started.md` — エージェント向けセットアップページ。 - `/llms.txt` — llms.txt 形式でまとめたドキュメントの索引。 - `/llms-full.txt` — ガイドとツール全体を 1 つの Markdown ファイルに連結したもの。 - `/docs/tools.md` — 任意のページを Markdown で。?lang=ko や ?lang=ja を付けると他の言語で取得できます。 ## 自分のコードから CLI が実行する読み取り専用ツールは、そのまま REST API(https://solari.sh/mcp/api/v1)としても提供されます。その上に公式 TypeScript・Python SDK があり、エージェント向けには MCP サーバーがあります。アクセストークンひとつで全部使えます。 ### トークンを取得する ```console $ solari auth token $ solari auth token --json ``` サインイン中のアカウントのアクセストークンを出力します。期限切れなら先に更新します。--json を付けると期限、エンドポイント、アカウントも出ます。トークンは 8 時間有効で、その間は自分の SOLARI アカウントを読めるので秘密として扱ってください。 動き続ける必要のあるコード — CI、サーバー、スケジュールジョブ — なら、https://solari.brandazine.com/me/api-keys で API key を作ってください。solari_sk_ で始まり、作成時に一度だけ表示され、失効させるまでこのトークンが使える場所でそのまま使えます。 ### ブラウザなしで CLI を使う ```console $ export SOLARI_TOKEN= $ solari catalog instagram account search query=nike --json ``` SOLARI_TOKEN があれば、そのマシンではサインインなしで全コマンドが動きます — CI、コンテナ、ブラウザのないサーバー。このとき CLI は ~/.solari/credentials.json に触れず、ツールキャッシュもトークン単位に分かれるので、別アカウントのアプリツールが混ざりません。トークンの寿命より長く動くジョブなら、サインイン済みの ~/.solari を(または SOLARI_HOME で指して)使ってください。CLI が自動で更新します。 ### REST API を呼ぶ ```console $ curl -sS https://solari.sh/mcp/api/v1/tools/solari_catalog_instagram_account_search \ -H "Authorization: Bearer $SOLARI_TOKEN" \ -H "Content-Type: application/json" \ -d '{"query":"nike","limit":3}' ``` ツールの引数を JSON オブジェクトとして /tools/<名前> に POST すると、レスポンスがツールの JSON 結果です。GET /tools は全ツールと入力スキーマを返し、エラーは { error: { code, message } } で返ります。エラーコードを含む完全なリファレンスは API ページにあります。 ### SDK を使う ```ts import { Solari } from "@brandazine/solari-sdk"; const solari = new Solari({ token: process.env.SOLARI_TOKEN }); const hits = await solari.tools.catalog.instagram.account.search({ query: "nike", limit: 3 }); ``` ```python from solari_sdk import Solari solari = Solari() # reads SOLARI_TOKEN hits = solari.tools.catalog.instagram.account.search(query="nike", limit=3) ``` npm install @brandazine/solari-sdk、または pip install solari-sdk。どちらも REST API を薄く包んだ依存関係なしのライブラリです。ドット区切りのパスが solari_ 接頭辞の下でツール名に結合されます。 ### コードから MCP で どの MCP クライアントも同じ bearer トークンで https://solari.sh/mcp を直接呼べます。エンドポイントはステートレスなので、initialize なしの tools/call 一発で動きます。 ## MCP でつなぐ リモート MCP のアドレス: ```text https://solari.sh/mcp ``` 初回接続でブラウザが開き、サインインします。 ### Claude Desktop 設定を開き、サイドバー最下部の Customize を選びます。 ![Claude Desktop の設定サイドバー。最下部に Customize があります。](https://finder-dev-pub.bzine.co/docs/claude-desktop-settings.webp) _Settings → Customize_ Connectors を開いて Add を押し、ダイアログを入力します。一覧に表示する名前と、上のアドレスです。 ![Claude Desktop の Add custom connector ダイアログ。名前と SOLARI MCP のアドレスが入力されています。](https://finder-dev-pub.bzine.co/docs/claude-desktop-add-connector.webp) _Connectors → Add → Add custom connector_ Continue を押すと一度だけサインインを通ります。以降はコネクタ一覧に SOLARI が残り、どの会話でもツールを使えます。claude.ai も同じ手順です。 ### Claude Code ```bash claude mcp add --transport http solari https://solari.sh/mcp ``` Claude Code はサーバーに初めて接続するときにサインインを求めます。/mcp を実行すると接続状態が表示され、自分でサインインを開始することもできます。 ### ChatGPT ChatGPT も Claude Desktop と同じです。設定 → Connectors でアドレスをカスタムコネクタとして追加し、サインインします。カスタムコネクタは有料プラン向けの機能です。 ### その他のホスト リモート MCP サーバーに対応した他のアプリもつなげます。多くは設定ファイルにこうした項目を書きます: ```json { "mcpServers": { "solari": { "url": "https://solari.sh/mcp" } } } ``` > アプリによっては、自分のマシンに入れた MCP サーバーしか動かせないものがあります。そうしたアプリは SOLARI に直接つなげないので、CLI をお使いください。 ## エラーと終了コード - `0` — 成功。 - `1` — ツールまたはサーバー側で失敗しました。 - `2` — CLI が受け付けられない入力です。存在しないパス、抜けている引数、不正な値のいずれかです。 - `3` — サインインが必要です。ブラウザでのサインインは人にしか完了できないため、エージェントは再試行を続けず利用者に伝えてください。 ### よく見るツールエラー - `auth expired, reconnect the connector` — サインインの有効期限が切れました。solari auth login を実行し直すか、アプリでコネクタをつなぎ直してください。 - `SOLARI access denied (403)` — SOLARI が呼び出しを拒否しました。サインインし直してください。 - `rate limited, retry shortly` — 短い時間に呼び出しが多すぎました。少し待ってから再試行してください。 - `SOLARI upstream timed out` — 呼び出しに時間がかかりすぎました。ほとんどのツールは 90 秒、集計とトレンドクラスターのツールは 120 秒です。範囲を狭めるか limit を下げて再試行してください。 ## データカバレッジ - content search・content aggregate: KR・JP・US・TW、直近およそ 6 か月。 - アカウント・ブランド・投稿ツール: 履歴全体、リージョン制限なし。 - リージョンの中では KR のカバレッジが最も深くなっています。 - 件数は 10,000 まで正確。TikTok 検索のページ送りは 9,800 で止まります。 ### 識別子 - account_id はプラットフォームごと。Instagram と TikTok の id は互換しません。 - account_id か username。両方あると account_id が優先です。 - post_id もプラットフォームごと。公開 id は slug(Instagram) か video_id(TikTok)。 ## よくある質問 ### SOLARI のデータを変更したいです。 いいえ。すべてのツールは読み取り専用です。 ### Claude などのエージェントでも使いたいです。 はい。solari init でこのマシンのエージェントに CLI を知らせるか、MCP サーバーに直接つないでください。 ### 検索結果がないと出ます。 アカウント検索はユーザー名・表示名にその文字がある必要があります。コンテンツ検索は KR・JP・US・TW、直近 6 か月です。 ### 料金が気になります。 いまは無料でご利用いただけます。変更がある場合は事前にご案内します。 ## ツールリファレンス CLI と MCP が提供するすべてのツールです。catalog は集めた行、insight は SOLARI が計算した答え、fetch はハンドルをアカウントまたは投稿として 1 件入れる入口です。CLI は空白、MCP 名はアンダースコアです。 ### solari catalog instagram account search > 集めた Instagram アカウントをユーザー名、名前、Bio の語句から探します。account_id を取るときに使えます。 - **CLI**: `solari catalog instagram account search` - **MCP ツール**: `solari_catalog_instagram_account_search` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 SOLARI が集めた Instagram アカウントのカタログから、ユーザー名、表示名、またはプロフィール Bio の語句で探します。Instagram 本体の検索ではありません。ここで得た account_id は、ほかの Instagram ツールにそのまま渡せます。 **どんなときに使うか** — 名前やユーザー名だけで、まだ account_id がないときに使います。 **何が返るか** — 一致したアカウントの一覧です。いちばん近い結果が先頭に来ます。 #### パラメータ - `query` (string, 必須) — ユーザー名、表示名、または query_type=bio のときはプロフィール Bio の語句。 - `query_type` (enum, 任意, 既定値 "auto") — どこを見るか。ユーザー名、表示名、Bio、またはその全部 (auto)。 値: `auto`, `username`, `full_name`, `bio`. - `brands_only` (boolean, 任意, 既定値 false) — 既知のブランドアカウントだけにします。ブランドを探すときにオンにします。 - `limit` (integer, 任意, ≥ 1) — 返すアカウントの数。 - `region` (string, 任意, ≤ 8 chars) — KR や JP などの国コード。空なら全体を探します。 #### レスポンス ##### `Response` - `found` (boolean) — 一致したアカウントがあるか。 - `items` (object[]) — 一致したアカウントです。いちばん近い結果が先頭です。 ##### `items[]` - `account_id` (uuid) — ほかの Instagram ツールに渡す account_id。 - `username` (string) — Instagram のユーザー名。 - `full_name` (string) — 表示名。 - `biography` (string) — プロフィール Bio。 - `follower_count` (integer) — フォロワー数。 - `region` (string) — 国コード。 - `is_verified` (boolean) — 認証バッジ。 - `profile_pic_url` (string) — プロフィール画像 URL。 #### 例 ```console $ solari catalog instagram account search query=oliveyoung brands_only=true limit=5 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "found": true, "items": [ { "account_id": "018cab6d-1648-7071-9734-c47a2be2fd19", "username": "oliveyoung_official", "full_name": "올리브영 OLIVE YOUNG", "biography": "ALL LIVE YOUNG 🫒\nALL LIVE BETTER @olivebetter.official", "follower_count": 1199628, "region": "KR", "is_verified": true, "profile_pic_url": "https://dcr.bzine.co/instagram/users/oliveyoung_official/profile-picture" }, { "account_id": "018dc63c-31b5-740f-bde0-2c00931385e1", "username": "oliveyoung_global", "full_name": "OLIVE YOUNG Global", "biography": "Korea's No.1 Health & Beauty Store\n✈️ FREE SHIPPING on orders over $60", "follower_count": 535949, "region": "KR", "is_verified": true, "profile_pic_url": "https://dcr.bzine.co/instagram/users/oliveyoung_global/profile-picture" }, { "account_id": "018cabcf-e60e-70af-95eb-eff777ce5195", "username": "oliveyoung_magazine", "full_name": "올리브영 매거진", "biography": "내 일상과 가까운 뷰티 매거진", "follower_count": 142316, "region": "KR", "is_verified": false, "profile_pic_url": "https://dcr.bzine.co/instagram/users/oliveyoung_magazine/profile-picture" }, "… 2 more" ] } ``` #### MCP 呼び出しとして ```json { "name": "solari_catalog_instagram_account_search", "arguments": { "query": "oliveyoung", "brands_only": true, "limit": 5 } } ``` #### 注意点 - 名前検索は、ユーザー名か表示名にその文字がある必要があります。あだ名や略称ではほとんど見つかりません。 - ブランドを探すときは brands_only=true にしてください。ファンアカウントが外れます。 - region を付けると指定した国だけになります。特定の国でなければ空のままにしてください。 #### 関連ツール - [`solari_catalog_instagram_account_profile`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-account-profile.md?lang=ja) - [`solari_catalog_instagram_account_posts`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-account-posts.md?lang=ja) - [`solari_catalog_tiktok_account_search`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-account-search.md?lang=ja) ### solari insight instagram account similar > 似た Instagram アカウントを探すときに使います。 - **CLI**: `solari insight instagram account similar` - **MCP ツール**: `solari_insight_instagram_account_similar` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 近いネットワークにいる Instagram アカウントを探します。一緒に広告した相手ではなく、関係が近いアカウントです。 **どんなときに使うか** — 似たアカウントがほしいときに使います。広告の協業相手なら brand top collaborators です。 **何が返るか** — 近い順の類似アカウントです。 #### パラメータ - `username` (string, 必須) — Instagram のユーザー名。@ は付けません。 - `limit` (integer, 任意, ≥ 1) — 返す類似アカウントの数。 #### レスポンス ##### `Response` - `user_id` (uuid) — 起点の account_id。 - `user` (object) — 起点アカウントのプロフィール。 - `params` (object) — 実際に使った設定。 - `results` (object[]) — 類似アカウントです。スコアの高い順です。 - `diagnostics` (object) — 検索のやり方。 ##### `results[]` - `user_id` (uuid) — 類似アカウントの account_id。 - `username` (string) — ユーザー名。 - `full_name / bio` (string) — 表示名と Bio。 - `score` (number) — このレスポンスでの類似スコア。 - `follower_count` (integer) — フォロワー数。 - `region` (string) — 国コード。 - `has_collaborated` (boolean) — 起点と広告コラボがあるか。 - `last_collaboration_date` (date | null) — 直近のコラボ日。 - `recent_media` (object[]) — 直近投稿のプレビュー。 #### 例 ```console $ solari insight instagram account similar username=oliveyoung_official limit=8 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "user_id": "018cab6d-1648-7071-9734-c47a2be2fd19", "user": { "user_id": "018cab6d-1648-7071-9734-c47a2be2fd19", "username": "oliveyoung_official", "full_name": "올리브영 OLIVE YOUNG", "profile_pic_url": "https://dcr.bzine.co/instagram/users/oliveyoung_official/profile-picture", "follower_count": 1199628, "region": "KR", "is_verified": null }, "params": { "k": 8, "hops": 3, "max_rank_to_use": 25 }, "results": [ { "user_id": "018cabd4-926b-7a58-b0cb-11dfc7c37006", "username": "gs25_official", "score": 0.1515, "profile_pic_url": "https://dcr.bzine.co/instagram/users/gs25_official/profile-picture", "follower_count": 1017802, "median_views": null, "full_name": "대한민국 대표 편의점 GS25", "bio": "더 재미있게 더 실속있게\n오늘 가장 최신의 트렌드를 만나는\n#25매거진 #재미있는GS25 #라이프스타일플랫폼", "region": "KR", "has_collaborated": false, "last_collaboration_date": null, "recent_media": [ { "post_id": "01a062a3-a504-7fe5-b53f-7cd291ffceff", "media_type": "image", "source_url": "https://bzine.co/cdn-cgi/image/fit=scale-down,width=480/https://smr-images.bzine.co/users/018cabd4-926b-7a58-b0cb-11dfc7c37006/posts/01a062a3-a504-7fe5-b53f-7cd291ffceff/medias/01a062a3-a7f8-702c-994f-bd426afe5d74.jpg", "thumbnail_url": "https://bzine.co/cdn-cgi/image/fit=scale-down,width=480/https://smr-images.bzine.co/users/018cabd4-926b-7a58-b0cb-11dfc7c37006/posts/01a062a3-a504-7fe5-b53f-7cd291ffceff/medias/01a062a3-a7f8-702c-994f-bd426afe5d74.jpg", "slug": "Dcx-Nrij7IV", "media_url": "https://bzine.co/cdn-cgi/image/fit=scale-down,width=480/https://smr-images.bzine.co/users/018cabd4-926b-7a58-b0cb-11dfc7c37006/posts/01a062a3-a504-7fe5-b53f-7cd291ffceff/medias/01a062a3-a7f8-702c-994f-bd426afe5d74.jpg", "play_count": null, "posted_at": "2026-09-02T10:00:09+00:00" }, "… 3 more" ], "collaborated_with": [] }, "… 7 more" ], "diagnostics": { "neighbors_used": 4930, "unique_terms": 25, "build_ms": 7664, "algorithm": "distance_weighted_jaccard", "max_rank_used": 25, "target_related_count": 25 } } ``` #### MCP 呼び出しとして ```json { "name": "solari_insight_instagram_account_similar", "arguments": { "username": "oliveyoung_official", "limit": 8 } } ``` #### 注意点 - ユーザー名を渡します。account_id は使えません。 - ブランドと広告したクリエイターが必要なら brand top collaborators を使ってください。 #### 関連ツール - [`solari_catalog_instagram_account_search`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-account-search.md?lang=ja) - [`solari_insight_instagram_brand_top_collaborators`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-brand-top-collaborators.md?lang=ja) ### solari insight instagram brand overview > Instagram ブランドのプロフィールと広告履歴です。 - **CLI**: `solari insight instagram brand overview` - **MCP ツール**: `solari_insight_instagram_brand_overview` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 ブランドのプロフィールと、広告の裏にあるクリエイター id・広告投稿 id を返します。投稿本文が必要なら、その id を content batch に渡してください。 **どんなときに使うか** — ブランドを最初に見るときに使います。正確な広告件数は brand ad stats です。 **何が返るか** — ブランドのプロフィール、クリエイター id、広告投稿 id です。 #### パラメータ - `username` (string, 必須) — ブランドの Instagram ユーザー名。@ は付けません。 - `full` (boolean, 任意, 既定値 false) — 先頭 20 件ではなく、id 一覧の全体を返します。 #### レスポンス ##### `Response` - `information` (object) — ブランドのプロフィール。user_id、username、full_name、bio、follower_count。 - `all_influencers_id` (uuid[]) — ブランド広告を作ったクリエイターの account_ids。デフォルトは先頭 20 件。 - `all_influencers_count` (integer) — 途中で切る前のクリエイター総数。 - `all_influencers_truncated` (boolean) — リストがプレビューのとき true。 - `all_campaign_posts_id` (uuid[]) — 広告投稿の id。デフォルトは先頭 20 件。 - `all_campaign_posts_count` (integer) — 途中で切る前の投稿総数。 - `all_campaign_posts_truncated` (boolean) — リストがプレビューのとき true。 #### 例 ```console $ solari insight instagram brand overview username=innisfreeofficial ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "information": { "user_id": "018cabce-14cc-7544-8890-7811ec33ef74", "username": "innisfreeofficial", "full_name": "INNISFREE | 이니스프리", "bio": "NATURE MEETS KOREAN SKIN SCIENCE", "follower_count": 847619, "brand_id": null }, "all_influencers_id": [ "01935f3d-8188-727e-a0bb-09e54aadfdac", "018caf6e-abfd-73da-88ad-11a56c39358b", "019a0061-b1d4-7adb-8ea4-1c5572dca38c", "… 17 more" ], "all_campaign_ids": [], "all_campaign_posts_id": [ "019f505f-f8be-7e88-ae08-6fba999950b1", "019f5060-3449-779e-a08b-d6d49add90cd", "019f4342-3357-7418-916c-da1c44468308", "… 17 more" ], "post_id_to_campaign_id": {}, "all_influencers_count": 93, "all_influencers_truncated": true, "all_campaign_posts_count": 100, "all_campaign_posts_truncated": true } ``` #### MCP 呼び出しとして ```json { "name": "solari_insight_instagram_brand_overview", "arguments": { "username": "innisfreeofficial" } } ``` #### 注意点 - ユーザー名を渡します。account_id は使えません。未知のユーザー名は 404 です。 - full=true だとそれぞれ最大 100 件まで返します。正確な合計は brand ad stats を使ってください。 #### 関連ツール - [`solari_insight_instagram_brand_ad_stats`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-brand-ad-stats.md?lang=ja) - [`solari_catalog_instagram_content_batch`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-content-batch.md?lang=ja) - [`solari_insight_instagram_brand_ad_posts`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-brand-ad-posts.md?lang=ja) ### solari insight instagram brand ad stats > Instagram ブランドの広告規模が数字で分かります。 - **CLI**: `solari insight instagram brand ad stats` - **MCP ツール**: `solari_insight_instagram_brand_ad_stats` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 ブランドの直近広告を正確な数字で返します。広告投稿数、クリエイター数、再生数の合計です。 **どんなときに使うか** — 答えが数字のときに使います。brand overview の id 一覧は数えません。 **何が返るか** — 広告投稿数、クリエイター数、再生数の合計です。 #### パラメータ - `username` (string, 必須) — ブランドの Instagram ユーザー名。@ は付けません。 #### レスポンス ##### `Response` - `total_ad_posts` (integer) — 期間内の広告投稿数。正確な値です。 - `unique_creator_count` (integer) — コラボしたクリエイターのユニーク数。 - `total_play_count` (integer) — 再生数の合計。 - `play_count_covered_posts` (integer) — 再生数の合計に入っている投稿数。total_ad_posts より少ないときは下限です。 - `window_months` (integer) — 期間の長さ(月数)。 #### 例 ```console $ solari insight instagram brand ad stats username=innisfreeofficial ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "total_ad_posts": 405, "unique_creator_count": 360, "total_play_count": 27357941, "play_count_covered_posts": 405, "window_months": 3 } ``` #### MCP 呼び出しとして ```json { "name": "solari_insight_instagram_brand_ad_stats", "arguments": { "username": "innisfreeofficial" } } ``` #### 注意点 - ユーザー名を渡します。account_id は使えません。 #### 関連ツール - [`solari_insight_instagram_brand_ad_posts`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-brand-ad-posts.md?lang=ja) - [`solari_insight_instagram_brand_overview`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-brand-overview.md?lang=ja) ### solari insight instagram brand ad posts > Instagram ブランドの広告投稿です。 - **CLI**: `solari insight instagram brand ad posts` - **MCP ツール**: `solari_insight_instagram_brand_ad_posts` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 ブランドの広告投稿を、クリエイター付きで返します。 **どんなときに使うか** — 合計ではなく投稿の一覧がほしいときに使います。 **何が返るか** — 広告投稿です。total が正確なのは sort=recent のときだけです。 #### パラメータ - `username` (string, 必須) — ブランドの Instagram ユーザー名。@ は付けません。 - `sort` (enum, 任意, 既定値 "recent") — recent は期間全体、engagement は直近の一部の順位です。 値: `recent`, `engagement`. - `months` (integer, 任意, ≥ 1) — 何ヶ月前まで見るか。 - `limit` (integer, 任意, ≥ 1) — 1ページあたりの件数。 - `offset` (integer, 任意, 既定値 0, ≥ 0) — 先頭から何件飛ばすか。 #### レスポンス ##### `Response` - `items` (object[]) — 広告投稿。 - `total` (integer) — sort=recent のとき、期間全体の正確な件数。 - `has_more` (boolean) — 次のページがあるか。 - `ranking_window` (integer | null) — engagement の順位付けがどこまで見たか。並びが期間全体ではなく一部のときだけ入ります。 ##### `items[]` - `id` (uuid) — 投稿 id。 - `slug` (string) — Instagram のショートコード。 - `text` (string) — キャプション。 - `posted_at` (timestamp) — 投稿日時(UTC)。 - `username / user_id / account_id` (string) — 投稿したクリエイター。 - `like_count / comment_count / play_count` (integer) — エンゲージメント。 - `media_type` (string) — 投稿の形式。 - `media / media_url / thumbnail_url` (string) — メディアのリンク。 - `virtual_campaign` (object | null) — キャンペーンのグループ。特定できたときだけ入ります。 #### 例 ```console $ solari insight instagram brand ad posts username=innisfreeofficial limit=2 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "items": [ { "id": "01a062a0-2747-72eb-b20d-670cf30f2c96", "slug": "DcygG05GrA-", "text": "#광고 요즘 부쩍 신경 쓰이기 시작한 모공 고민을 직접 경험해보고 싶어 방문한 이니스프리 레티놀 시카 강의실 무빙 팝업💙\n\n업그레이드된 레티놀 시카 모공 흔적 앰플을 직접 테스트해볼 수 있을 뿐 아니라, 제품을 알아보고 체험할 수 있는 다양한 프로그램과 이벤트가 마련되어 있어 더욱 재미있게 둘러볼 수 있었어요.\n\n특히 오늘 방문했을 때는 정말 많은 분들이 찾아와서 놀랐는데요. 대기 줄이 길게 …", "posted_at": "2026-09-02T14:56:19Z", "virtual_campaign": null, "username": "_mini_mming", "user_id": "018caf92-e08a-78a2-b9c3-59f6f5740182", "profile_picture_url": null, "like_count": 384, "comment_count": 4, "thumbnail_url": null, "media_url": null, "media": [], "media_type": "post", "account_id": "018caf92-e08a-78a2-b9c3-59f6f5740182" }, "… 1 more" ], "total": 405, "has_more": true, "ranking_window": null } ``` #### MCP 呼び出しとして ```json { "name": "solari_insight_instagram_brand_ad_posts", "arguments": { "username": "innisfreeofficial", "limit": 2 } } ``` #### 注意点 - ユーザー名を渡します。未知のユーザー名は 404 です。 - sort=engagement は直近の一部だけを順位付けします。ranking_window がどこまで見たか教えてくれます。 #### 関連ツール - [`solari_insight_instagram_brand_ad_stats`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-brand-ad-stats.md?lang=ja) - [`solari_insight_instagram_account_ad_posts`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-account-ad-posts.md?lang=ja) ### solari insight instagram brand top collaborators > Instagram ブランドとコラボしたクリエイターです。 - **CLI**: `solari insight instagram brand top collaborators` - **MCP ツール**: `solari_insight_instagram_brand_top_collaborators` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 ブランドの広告を担当したクリエイターを、回数の多い順に出します。 **どんなときに使うか** — ブランドとコラボしたクリエイターを見たいときに使います。クリエイター側から見るなら account collabs です。 **何が返るか** — コラボ回数順のクリエイターです。 #### パラメータ - `account_id` (string, 任意, uuid, pattern ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$) — ブランドの account_id。これか username を渡します。 - `username` (string, 任意, ≤ 64 chars) — ブランドのユーザー名。account_id があるときは無視されます。 - `promotion` (enum, 任意, 既定値 "all") — 全部、プロモーションだけ、またはプロモーション以外。 値: `all`, `true_only`, `false_only`. - `limit` (integer, 任意, ≥ 1) — 返すクリエイターの数。 - `offset` (integer, 任意, 既定値 0, ≥ 0) — 先頭から何人飛ばすか。 #### レスポンス ##### `Response` - `brand_id` (uuid) — 特定したブランドの account_id。 - `promotion_filter` (string) — 適用した promotion フィルタ。 - `items` (object[]) — クリエイターです。コラボ回数の多い順です。 - `total_count` (integer) — フィルタに一致したクリエイター。 ##### `items[]` - `creator_id` (uuid) — クリエイターの account_id。 - `username / full_name` (string) — ユーザー名と表示名。 - `profile_pic_url` (string) — プロフィール画像。 - `follower_count` (integer) — フォロワー数。 - `collaboration_count` (integer) — 対象ブランドとのコラボ投稿。 #### 例 ```console $ solari insight instagram brand top collaborators username=innisfreeofficial limit=5 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "brand_id": "018cabce-14cc-7544-8890-7811ec33ef74", "promotion_filter": "all", "items": [ { "creator_id": "0195474c-8ee3-7690-a385-71b2913e31b5", "username": "donge_cos", "full_name": "💞동이💞", "profile_pic_url": "https://dcr.bzine.co/instagram/users/donge_cos/profile-picture", "follower_count": 83354, "collaboration_count": 31 }, { "creator_id": "018ecc75-55d8-70a7-a348-d370aa504ed9", "username": "beinny_motd", "full_name": "베이니 BEINNY", "profile_pic_url": "https://dcr.bzine.co/instagram/users/beinny_motd/profile-picture", "follower_count": 205754, "collaboration_count": 29 }, "… 3 more" ], "total_count": 2331 } ``` #### MCP 呼び出しとして ```json { "name": "solari_insight_instagram_brand_top_collaborators", "arguments": { "username": "innisfreeofficial", "limit": 5 } } ``` #### 注意点 - 投稿まで見るなら、creator_id を brand collaborator posts に 100 人ずつ渡してください。 #### 関連ツール - [`solari_insight_instagram_brand_collaborator_posts`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-brand-collaborator-posts.md?lang=ja) - [`solari_insight_instagram_account_collabs`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-account-collabs.md?lang=ja) ### solari insight instagram brand collaborator posts > ブランドとコラボしたクリエイターの広告投稿です。 - **CLI**: `solari insight instagram brand collaborator posts` - **MCP ツール**: `solari_insight_instagram_brand_collaborator_posts` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 最大 100 人のクリエイターの広告投稿を、ブランド基準で読みます。直近だけでなく全期間です。 **どんなときに使うか** — 複数クリエイターの投稿を一度に見たいときに使います。 **何が返るか** — クリエイターごとの合計と投稿です。エンゲージメントの高い順です。 #### パラメータ - `account_id` (string, 任意, uuid, pattern ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$) — ブランドの account_id。これか username を渡します。 - `username` (string, 任意, ≤ 64 chars) — ブランドのユーザー名。account_id があるときは無視されます。 - `account_ids` (uuid[], 必須, 1–100 items, uuid) — 読み込むクリエイターの account_id。最大 100。 #### レスポンス ##### `Response` - `(top level)` (object[]) — クリエイターの配列です。 ##### `[]` - `user_id` (uuid) — クリエイターの account_id。 - `username / full_name` (string) — ユーザー名と表示名。 - `follower_count` (integer) — フォロワー数。 - `post_count` (integer) — 対象ブランド向けの投稿。 - `reels_count / images_count` (integer) — 形式別の内訳。 - `posts` (object[]) — 投稿そのもの。id、slug、text、posted_at、like_count、comment_count、play_count。 - `like_count_avg / comment_count_avg` (number | null) — エンゲージメントの平均。出ているときだけ入ります。 #### 例 ```console $ solari insight instagram brand collaborator posts username=innisfreeofficial account_ids='["0195474c-8ee3-7690-a385-71b2913e31b5","018ecc75-55d8-70a7-a348-d370aa504ed9"]' ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json [ { "user_id": "018ecc75-55d8-70a7-a348-d370aa504ed9", "username": "beinny_motd", "full_name": "베이니 BEINNY", "post_count": 29, "follower_count": 205754, "reels_count": 1, "images_count": 28, "posts": [ { "id": "019c98bc-a666-717d-a5fe-ea96f1345042", "slug": "ByVKkIbnQ8S", "text": "#이니스프리 에서 새롭게 출시된 #구름블러틴트 ☁️💓\n비비드 코튼 잉크 블러버젼이에용\n.\n요즘 이런 블러틴트류 많이 출시돼서 넘 행복해요🥺💛\n이니스프리 블러틴트는 보송보송한 마무리지만 꽤 촉촉하고 가볍게 발리더라구요! 발림성 넘 좋았어요✨\n총 8가지 컬러인데 그중 제 맘에 드는 4가지 컬러는 입술에 발색해서 보여드려용 :) 특히 로즈+핑크 섞인듯한 2호 #로제핑크 완전 추천👍🏻✨\n가격은 9, …", "posted_at": "2019-06-05T14:02:19Z", "virtual_campaign": null, "like_count": 2399, "comment_count": 20, "play_count": null, "username": "beinny_motd", "user_id": "018ecc75-55d8-70a7-a348-d370aa504ed9" }, "… 10 more" ], "like_count_avg": null, "comment_count_avg": null, "synced_at": null }, "… 1 more" ] ``` #### MCP 呼び出しとして ```json { "name": "solari_insight_instagram_brand_collaborator_posts", "arguments": { "username": "innisfreeofficial", "account_ids": [ "0195474c-8ee3-7690-a385-71b2913e31b5", "018ecc75-55d8-70a7-a348-d370aa504ed9" ] } } ``` #### 注意点 - account_ids は JSON 配列かカンマ区切りです。一度に 100 人までです。 #### 関連ツール - [`solari_insight_instagram_brand_top_collaborators`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-brand-top-collaborators.md?lang=ja) - [`solari_insight_instagram_brand_overview`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-brand-overview.md?lang=ja) ### solari insight instagram brand lookalike content > ブランド広告に似た投稿を探すときに使います。 - **CLI**: `solari insight instagram brand lookalike content` - **MCP ツール**: `solari_insight_instagram_brand_lookalike_content` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 ブランドの成果が良い広告に近い投稿を探します。参考を集めるときに使えます。 **どんなときに使うか** — 広告の件数ではなく、似た参考がほしいときに使います。 **何が返るか** — 似た投稿と、起点になったブランド広告です。 #### パラメータ - `account_id` (string, 任意, uuid, pattern ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$) — ブランドの account_id。これか username を渡します。 - `username` (string, 任意, ≤ 64 chars) — ブランドのユーザー名。account_id があるときは無視されます。 - `limit` (integer, 任意, ≥ 1) — 似た投稿を何件返すか。 - `region` (string, 任意, 既定値 "KR") — KR や JP などの国コード。 #### レスポンス ##### `Response` - `items` (object[]) — 似た投稿。 - `basis` (object[]) — 起点に使ったブランド自身の広告投稿。 - `region` (string) — 検索の対象にした国。 ##### `items[] · basis[]` - `post_id` (uuid) — ほかのコンテンツ系ツールに渡す投稿 id。 - `slug` (string) — 公開 URL のショートコード。 - `author_id` (uuid) — 投稿者の account_id。 - `username` (string) — 投稿者のユーザー名。 - `full_name` (string | null) — 表示名。 - `profile_pic_url` (string | null) — プロフィール画像 URL。 - `follower_count` (integer | null) — 投稿者のフォロワー数。 - `region` (string | null) — 投稿者の国。 - `posted_at` (timestamp) — 投稿日時(UTC)。 - `media_type` (string) — image、video、または carousel。 - `play_count` (integer | null) — 動画の再生数。画像では null。 - `like_count` (integer | null) — いいね数。 - `text` (string | null) — キャプション。 - `media_url` (string) — メディア URL。 - `thumbnail_url` (string) — サムネイル URL。 - `score` (number | null) — このレスポンスでの順位スコア。 - `efficiency_score` (number | null) — 投稿者のフォロワー数と比べた成果。 - `est_percentile` (number | null) — 対象国内のパーセンタイル。0–1。 - `total_views_3m` (integer | null) — 投稿者の直近 3 ヶ月の再生数。 - `median_views_3m` (integer | null) — 投稿者の直近 3 ヶ月の再生数の中央値。 - `recent_collab_brands` (string[]) — 投稿者が最近コラボしたブランド。 - `item_type` (string) — アイテムの種類。これらのフィードでは post。 - `content_source` (string | null) — このアイテムを出したフィード。 - `is_saved` (boolean | null) — SOLARI に保存されているか。 - `updated_at` (timestamp | null) — 指標の最終更新時刻。 #### 例 ```console $ solari insight instagram brand lookalike content username=innisfreeofficial limit=3 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "items": [ { "item_type": "content", "post_id": "019ecb92-a677-7421-8ed6-752efe3d99d0", "author_id": "0196cb39-870a-7a76-9773-0b95789c877d", "username": "boo_rookie", "full_name": null, "profile_pic_url": null, "follower_count": null, "region": null, "posted_at": "2026-06-11T08:14:37Z", "media_type": "video", "play_count": 427258, "like_count": null, "score": null, "efficiency_score": null, "est_percentile": null, "updated_at": null, "media_url": "https://smr-images-b.bzine.co/users/0196cb39-870a-7a76-9773-0b95789c877d/posts/019ecb92-a677-7421-8ed6-752efe3d99d0/medias/019ecb92-a92e-7fc8-b644-69b930f2e197.mp4", "thumbnail_url": "https://bzine.co/cdn-cgi/media/width=480,mode=frame,time=100ms/https://smr-images-a.bzine.co/users/0196cb39-870a-7a76-9773-0b95789c877d/posts/019ecb92-a677-7421-8ed6-752efe3d99d0/medias/019ecb92-a92e-7fc8-b644-69b930f2e1 …", "slug": "DZcD8KXxKwd", "text": null, "brand_match_score": null, "recent_collab_brands": [], "total_views_3m": null, "median_views_3m": null, "is_saved": null, "content_source": "lookalikes_by_top_ad" }, "… 2 more" ], "basis": [ { "item_type": "content", "post_id": "01a04c73-3ec3-7873-9e84-334c644abfe4", "author_id": "0196c474-c96e-71ad-aceb-61af051c81d3", "username": "hwitto_", "full_name": null, "profile_pic_url": null, "follower_count": null, "region": null, "posted_at": null, "media_type": "video", "play_count": 155729, "like_count": null, "score": null, "efficiency_score": null, "est_percentile": null, "updated_at": null, "media_url": "https://smr-images-a.bzine.co/users/0196c474-c96e-71ad-aceb-61af051c81d3/posts/01a04c73-3ec3-7873-9e84-334c644abfe4/medias/01a04c73-4036-7a83-a52a-97b0058e6732.mp4", "thumbnail_url": "https://bzine.co/cdn-cgi/media/width=480,mode=frame,time=100ms/https://smr-images.bzine.co/users/0196c474-c96e-71ad-aceb-61af051c81d3/posts/01a04c73-3ec3-7873-9e84-334c644abfe4/medias/01a04c73-4036-7a83-a52a-97b0058e6732 …", "slug": "DckGrZ6vZiU", "text": null, "brand_match_score": null, "recent_collab_brands": [], "total_views_3m": null, "median_views_3m": null, "is_saved": null, "content_source": "lookalikes_by_top_ad" }, "… 5 more" ], "region": "KR" } ``` #### MCP 呼び出しとして ```json { "name": "solari_insight_instagram_brand_lookalike_content", "arguments": { "username": "innisfreeofficial", "limit": 3 } } ``` #### 注意点 - basis が空なら、まだ起点にできる広告投稿がありません。 #### 関連ツール - [`solari_insight_instagram_brand_ad_posts`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-brand-ad-posts.md?lang=ja) - [`solari_catalog_instagram_content_search`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-content-search.md?lang=ja) ### solari catalog instagram account profile > Instagram アカウントのプロフィール、成果、直近の投稿です。 - **CLI**: `solari catalog instagram account profile` - **MCP ツール**: `solari_catalog_instagram_account_profile` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 Instagram アカウントのプロフィール、再生の成果、直近の投稿とコラボのプレビューを返します。 **どんなときに使うか** — アカウントの全体像がほしいときに使います。直近投稿とコラボが付いてきます。 **何が返るか** — プロフィール、成果、直近投稿とコラボのプレビューです。 #### パラメータ - `account_id` (string, 任意, uuid, pattern ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$) — account_id。これか username を渡します。 - `username` (string, 任意, ≤ 64 chars) — Instagram のユーザー名。account_id があるときは無視されます。 #### レスポンス ##### `Response` - `user_id` (uuid) — account_id。 - `username / full_name / bio` (string) — ユーザー名、表示名、Bio。 - `follower_count / following_count` (integer) — フォロワー数とフォロー数。 - `total_post_count` (integer) — 累計投稿数。 - `post_count_3m` (integer) — 直近 3 ヶ月の投稿数。 - `is_verified` (boolean) — 認証バッジ。 - `account_type` (string) — SOLARI が推定したアカウントの性質(brand、creator、…)。 - `median_views_cur` (integer) — 今の期間の再生数の中央値。 - `total_views_cur` (integer) — 今の期間の再生数の合計。 - `ad_count_cur` (integer) — 今の期間の広告投稿。 - `median_views_growth_m1` (number) — 前月比の再生数中央値の変化。比率です。 - `total_views_growth_m1` (number) — 前月比の再生数合計の変化。比率です。 - `median_views_region_pct` (number) — 対象国内の再生数中央値パーセンタイル。0–1。 - `total_views_region_pct` (number) — 対象国内の再生数合計パーセンタイル。0–1。 - `recent_posts` (object[]) — 直近投稿のプレビュー。 - `recent_collabs` (object[]) — 直近の広告コラボのプレビュー。 - `fetched_on_demand` (boolean) — この呼び出しで初めてアカウントを取得したとき true。 #### 例 ```console $ solari catalog instagram account profile username=innisfreeofficial ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "user_id": "018cabce-14cc-7544-8890-7811ec33ef74", "username": "innisfreeofficial", "full_name": "INNISFREE | 이니스프리", "bio": "NATURE MEETS KOREAN SKIN SCIENCE", "profile_pic_url": "https://dcr.bzine.co/instagram/users/innisfreeofficial/profile-picture", "follower_count": 847619, "total_post_count": 4131, "post_count_3m": 100, "following_count": 17, "is_verified": true, "median_views_cur": 12409, "ad_count_cur": 0, "total_views_cur": 685771, "median_views_growth_m1": 0.04956440835659308, "total_views_growth_m1": 0.39407867587418205, "median_views_region_pct": 0.1736183168163037, "total_views_region_pct": 0.1457900950723917, "recent_posts": [ { "post_id": "01a06275-d974-7fda-98ee-dd3ee15b4dcf", "slug": "DcyMAmUh6FZ", "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 …", "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 …", "play_count": 22467, "like_count": 3224, "video_media_count": 0, "media_count": 1 }, "… 5 more" ], "recent_collabs": [], "account_type": "brand", "fetched_on_demand": false } ``` #### MCP 呼び出しとして ```json { "name": "solari_catalog_instagram_account_profile", "arguments": { "username": "innisfreeofficial" } } ``` #### 注意点 - 未収集のユーザー名は、最初のリクエストでその場で取りにいきます。成果とコラボは収集が終わるまで空のことがあります。 - そのあとの not-found は、Instagram にそのユーザー名がないという意味です。 #### 関連ツール - [`solari_catalog_instagram_account_posts`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-account-posts.md?lang=ja) - [`solari_insight_instagram_account_collabs`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-account-collabs.md?lang=ja) - [`solari_catalog_tiktok_account_profile`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-account-profile.md?lang=ja) ### solari catalog instagram account posts > Instagram アカウントの投稿です。 - **CLI**: `solari catalog instagram account posts` - **MCP ツール**: `solari_catalog_instagram_account_posts` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 Instagram アカウントの投稿をメディア、タグ、いいね付きで一覧します。日付や形式で絞れます。 **どんなときに使うか** — プロフィールのプレビューでは足りないときや、期間・形式で分けたいときに使います。 **何が返るか** — 投稿の一覧です。カルーセルの全枚と、タグされたアカウント・ハッシュタグも付きます。 #### パラメータ - `account_id` (string, 任意, uuid, pattern ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$) — account_id。これか username を渡します。 - `username` (string, 任意, ≤ 64 chars) — Instagram のユーザー名。account_id があるときは無視されます。 - `limit` (integer, 任意, ≥ 1) — 1ページあたりの件数。 - `offset` (integer, 任意, 既定値 0, ≥ 0) — 先頭から何件飛ばすか。 - `since` (string, 任意, pattern ^\d{4}-\d{2}-\d{2}$) — この UTC 日付以降の投稿だけ (YYYY-MM-DD)。 - `until` (string, 任意, pattern ^\d{4}-\d{2}-\d{2}$) — この UTC 日付以前の投稿だけ (YYYY-MM-DD)。 - `post_type` (enum, 任意) — reel、video、photo、carousel のいずれかに絞ります。 値: `reel`, `video`, `photo`, `carousel`. #### レスポンス ##### `Response` - `found` (boolean) — Instagram にないユーザー名なら false です。 - `account_id / username` (string) — 特定したアカウント。 - `total` (integer) — フィルタに一致した投稿。 - `has_more` (boolean) — 次のページがあるか。 - `items` (object[]) — 投稿です。新しい順です。 - `fetched_on_demand` (boolean) — まだ直近の投稿しかないとき true。 ##### `items[]` - `post_id` (uuid) — SOLARI の post_id。 - `slug` (string) — Instagram のショートコード。 - `url` (string) — 公開パーマリンク。 - `post_type` (string) — reel、video、photo、または carousel。 - `posted_at` (timestamp) — 投稿日時(UTC)。 - `text` (string) — キャプション。 - `like_count / comment_count / play_count` (integer) — エンゲージメント。 - `media_count` (integer) — メディアの枚数。 - `is_paid_partnership` (boolean | null) — Instagram の有料パートナーシップラベル。 - `medias` (object[]) — カルーセル順の全メディア。 - `medias[].tags` (object[]) — メディアにタグされたアカウントとハッシュタグ。 - `thumbnail_url` (string) — サムネイル。 #### 例 ```console $ solari catalog instagram account posts username=innisfreeofficial limit=2 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "found": true, "account_id": "018cabce-14cc-7544-8890-7811ec33ef74", "username": "innisfreeofficial", "fetched_on_demand": false, "total": 4196, "has_more": true, "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": [] } ], "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 …" }, "… 1 more" ] } ``` #### MCP 呼び出しとして ```json { "name": "solari_catalog_instagram_account_posts", "arguments": { "username": "innisfreeofficial", "limit": 2 } } ``` #### 注意点 - since と until は UTC 日付で、両端を含みます。 - post_type=reel はショート動画です。video は reel 以外の動画です。 - This reads the catalog only. If the username is missing, call solari fetch instagram posts username=… then retry. #### 関連ツール - [`solari_catalog_instagram_account_profile`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-account-profile.md?lang=ja) - [`solari_catalog_instagram_content_detail`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-content-detail.md?lang=ja) - [`solari_catalog_tiktok_account_posts`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-account-posts.md?lang=ja) ### solari insight instagram account collabs > Instagram クリエイターが最近コラボしたコンテンツです。 - **CLI**: `solari insight instagram account collabs` - **MCP ツール**: `solari_insight_instagram_account_collabs` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 Instagram クリエイターの直近のコラボコンテンツを返します。 **どんなときに使うか** — クリエイターの直近コラボを見たいときに使います。ブランド側から見るなら brand top collaborators です。 **何が返るか** — 直近のコラボコンテンツです。 #### パラメータ - `account_id` (string, 任意, uuid, pattern ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$) — クリエイターの account_id。これか username を渡します。 - `username` (string, 任意, ≤ 64 chars) — クリエイターのユーザー名。account_id があるときは無視されます。 - `months` (integer, 任意, ≥ 1) — 何ヶ月前まで見るか。 - `limit` (integer, 任意, ≥ 1) — 1ページあたりのブランド数。 - `offset` (integer, 任意, 既定値 0, ≥ 0) — 先頭から何件飛ばすか。 #### レスポンス ##### `Response` - `total` (integer) — フィルタに一致した行。 - `has_more` (boolean) — さらに行があるか。 - `items` (object[]) — コラボの要約です。対象ブランドごとに 1 件です。 ##### `items[]` - `target_account_id` (uuid) — 対象ブランドの account_id。 - `target_username` (string) — 対象ブランドのユーザー名。 - `collab_count` (integer) — 対象ブランドとのコラボ投稿。 - `last_posted_at` (timestamp) — 直近のコラボ。 - `post_id / slug` (string) — サンプル投稿の識別子。 - `text` (string) — サンプル投稿のキャプション。 - `like_count / play_count` (integer) — サンプル投稿のエンゲージメント。 - `media_type` (string) — サンプル投稿の形式。 - `thumbnail_url / media_url` (string) — サンプル投稿のメディア。 - `bio` (string) — 対象ブランドの Bio。 #### 例 ```console $ solari insight instagram account collabs username=beinny_motd months=6 limit=3 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "items": [ { "post_id": "01a05575-7c9b-7232-8519-4a38fa061389", "target_user_id": "018cab85-8ef8-7dc9-ab0a-7044d463f65e", "target_username": "dasique_official", "collab_count": 2, "last_posted_at": "2026-08-30T05:08:56+00:00", "slug": "DcpugJ2kzv8", "text": "#광고 무겁지 않은 가을 데일리 팔레트 로즈밀크티 . .🫖🤎\n차분하고 미지근한 로즈핑크 팔레트인데\n부드러운 밀크티 무드라서 분위기가 넘 예뻐요..🥺\n\n데이지크에서 올리브영 X 산리오 콜라보\n시티팝 에디션으로 미니섀도우팔레트 4종이 출시되는데\n그 중 자주 추천드렸던 로즈밀크티, 밀크라떼가 있더라구요 !\n\nNEW 컬러 피치레코드, 모브카세트도 출시되어요🤍\n도시의 아침과 저녁 무드를 담은 데일리한 …", "play_count": 0, "media_type": "8", "like_count": 878, "video_media_count": 0, "media_count": 15, "bio": "🫒올영세일 08.30 – 09.05\nUP TO 37% SALE\n올리브영X산리오,\n🌠데이지크 🆕 미니 섀도우", "thumbnail_url": "https://bzine.co/cdn-cgi/image/fit=scale-down,width=480/https://smr-images-c.bzine.co/users/018ecc75-55d8-70a7-a348-d370aa504ed9/posts/01a05575-7c9b-7232-8519-4a38fa061389/medias/01a05575-7dd3-779e-9050-a6cb59578cb9.jpg", "media_url": "https://bzine.co/cdn-cgi/image/fit=scale-down,width=480/https://smr-images-c.bzine.co/users/018ecc75-55d8-70a7-a348-d370aa504ed9/posts/01a05575-7c9b-7232-8519-4a38fa061389/medias/01a05575-7dd3-779e-9050-a6cb59578cb9.jpg", "target_account_id": "018cab85-8ef8-7dc9-ab0a-7044d463f65e" }, "… 2 more" ], "has_more": true, "total": 7 } ``` #### MCP 呼び出しとして ```json { "name": "solari_insight_instagram_account_collabs", "arguments": { "username": "beinny_motd", "months": 6, "limit": 3 } } ``` #### 注意点 - 広告投稿の一覧が必要なら account ad posts を使ってください。 #### 関連ツール - [`solari_insight_instagram_account_ad_posts`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-account-ad-posts.md?lang=ja) - [`solari_insight_instagram_brand_top_collaborators`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-brand-top-collaborators.md?lang=ja) ### solari insight instagram account ad posts > Instagram クリエイターの広告投稿です。 - **CLI**: `solari insight instagram account ad posts` - **MCP ツール**: `solari_insight_instagram_account_ad_posts` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 Instagram クリエイターの広告投稿を返します。 **どんなときに使うか** — 要約ではなく広告投稿の一覧がほしいときに使います。 **何が返るか** — 広告投稿です。新しい順です。 #### パラメータ - `account_id` (string, 任意, uuid, pattern ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$) — クリエイターの account_id。これか username を渡します。 - `username` (string, 任意, ≤ 64 chars) — クリエイターのユーザー名。account_id があるときは無視されます。 - `months` (integer, 任意, ≥ 1) — 何ヶ月前まで見るか。 - `limit` (integer, 任意, ≥ 1) — 1ページあたりの行数。 - `offset` (integer, 任意, 既定値 0, ≥ 0) — 先頭から何行飛ばすか。 - `target` (string, 任意, ≤ 64 chars) — 指定したブランドだけ。account_id またはユーザー名。 #### レスポンス ##### `Response` - `account_id / username` (string) — 特定したクリエイター。 - `months` (integer) — さかのぼった期間。 - `total` (integer) — 行の総数。 - `has_more` (boolean) — 次のページがあるか。 - `items` (object[]) — 投稿とブランドのペア。 ##### `items[]` - `post_id / slug / url` (string) — 投稿の識別子と公開リンク。 - `post_type` (string) — reel、video、photo、または carousel。 - `posted_at` (timestamp) — 投稿日時(UTC)。 - `text` (string) — キャプション。 - `like_count / comment_count / play_count` (integer) — エンゲージメント。 - `media_count` (integer) — メディアの枚数。 - `is_paid_partnership` (boolean | null) — Instagram の有料パートナーシップラベル。 - `target_account_id / target_username` (string) — 行が属するブランド。 #### 例 ```console $ solari insight instagram account ad posts username=beinny_motd months=6 limit=2 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "account_id": "018ecc75-55d8-70a7-a348-d370aa504ed9", "username": "beinny_motd", "months": 6, "total": 12, "has_more": true, "items": [ { "post_id": "01a05575-7c9b-7232-8519-4a38fa061389", "slug": "DcpugJ2kzv8", "url": "https://www.instagram.com/p/DcpugJ2kzv8/", "post_type": "carousel", "posted_at": "2026-08-30T05:08:56Z", "text": "#광고 무겁지 않은 가을 데일리 팔레트 로즈밀크티 . .🫖🤎\n차분하고 미지근한 로즈핑크 팔레트인데\n부드러운 밀크티 무드라서 분위기가 넘 예뻐요..🥺\n\n데이지크에서 올리브영 X 산리오 콜라보\n시티팝 에디션으로 미니섀도우팔레트 4종이 출시되는데\n그 중 자주 추천드렸던 로즈밀크티, 밀크라떼가 있더라구요 !\n\nNEW 컬러 피치레코드, 모브카세트도 출시되어요🤍\n도시의 아침과 저녁 무드를 담은 데일리한 …", "like_count": 878, "comment_count": 19, "play_count": 0, "media_count": 15, "is_paid_partnership": null, "target_account_id": "018cab85-8ef8-7dc9-ab0a-7044d463f65e", "target_username": "dasique_official" }, "… 1 more" ] } ``` #### MCP 呼び出しとして ```json { "name": "solari_insight_instagram_account_ad_posts", "arguments": { "username": "beinny_motd", "months": 6, "limit": 2 } } ``` #### 注意点 - target を付けると指定したブランドだけになります。account_id かユーザー名を渡せます。 #### 関連ツール - [`solari_insight_instagram_account_collabs`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-account-collabs.md?lang=ja) - [`solari_insight_instagram_brand_ad_posts`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-brand-ad-posts.md?lang=ja) ### solari catalog instagram content detail > Instagram の投稿を取得します。 - **CLI**: `solari catalog instagram content detail` - **MCP ツール**: `solari_catalog_instagram_content_detail` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 post_id、ショートコード、または公開 URL で Instagram 投稿を読みます。 **どんなときに使うか** — 投稿が必要なときに使います。id が多いなら content batch です。 **何が返るか** — キャプションと成果が付いた投稿です。 #### パラメータ - `post_id` (string, 任意, uuid, pattern ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$) — post_id。これか slug、url のどれかを渡します。 - `slug` (string, 任意, pattern ^[A-Za-z0-9_-]{3,20}$) — Instagram のショートコード。 - `url` (string, 任意, ≤ 512 chars) — 公開されている Instagram 投稿 URL。 #### レスポンス ##### `Response` - `item` (object | null) — 投稿です。存在しないか非公開なら null。 - `fetched_on_demand` (boolean) — この呼び出しで初めて投稿を取得したとき true。 ##### `item` - `post_id` (uuid) — ほかのコンテンツ系ツールに渡す投稿 id。 - `slug` (string) — 公開 URL のショートコード。 - `author_id` (uuid) — 投稿者の account_id。 - `username` (string) — 投稿者のユーザー名。 - `full_name` (string | null) — 表示名。 - `profile_pic_url` (string | null) — プロフィール画像 URL。 - `follower_count` (integer | null) — 投稿者のフォロワー数。 - `region` (string | null) — 投稿者の国。 - `posted_at` (timestamp) — 投稿日時(UTC)。 - `media_type` (string) — image、video、または carousel。 - `play_count` (integer | null) — 動画の再生数。画像では null。 - `like_count` (integer | null) — いいね数。 - `text` (string | null) — キャプション。 - `media_url` (string) — メディア URL。 - `thumbnail_url` (string) — サムネイル URL。 - `score` (number | null) — このレスポンスでの順位スコア。 - `efficiency_score` (number | null) — 投稿者のフォロワー数と比べた成果。 - `est_percentile` (number | null) — 対象国内のパーセンタイル。0–1。 - `total_views_3m` (integer | null) — 投稿者の直近 3 ヶ月の再生数。 - `median_views_3m` (integer | null) — 投稿者の直近 3 ヶ月の再生数の中央値。 - `recent_collab_brands` (string[]) — 投稿者が最近コラボしたブランド。 - `item_type` (string) — アイテムの種類。これらのフィードでは post。 - `content_source` (string | null) — このアイテムを出したフィード。 - `is_saved` (boolean | null) — SOLARI に保存されているか。 - `updated_at` (timestamp | null) — 指標の最終更新時刻。 #### 例 ```console $ solari catalog instagram content detail slug=DcyMAmUh6FZ ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "item": { "item_type": "content", "post_id": "01a06275-d974-7fda-98ee-dd3ee15b4dcf", "author_id": "018cabce-14cc-7544-8890-7811ec33ef74", "username": "innisfreeofficial", "full_name": "INNISFREE | 이니스프리", "profile_pic_url": "https://dcr.bzine.co/instagram/users/innisfreeofficial/profile-picture", "follower_count": 847619, "region": null, "posted_at": "2026-09-02T12:00:06Z", "media_type": "video", "play_count": 22467, "like_count": 3224, "score": null, "efficiency_score": null, "est_percentile": null, "updated_at": null, "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 …", "slug": "DcyMAmUh6FZ", "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 …", "brand_match_score": null, "recent_collab_brands": [], "total_views_3m": null, "median_views_3m": null, "is_saved": null, "content_source": null }, "fetched_on_demand": false } ``` #### MCP 呼び出しとして ```json { "name": "solari_catalog_instagram_content_detail", "arguments": { "slug": "DcyMAmUh6FZ" } } ``` #### 注意点 - url は /p/、/reel/、/tv/ のリンクで大丈夫です。ショートコードはこちらで切り出します。 - 未収集のショートコードや URL は、最初のリクエストでその場で取りにいきます。 #### 関連ツール - [`solari_catalog_instagram_content_batch`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-content-batch.md?lang=ja) - [`solari_catalog_instagram_account_posts`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-account-posts.md?lang=ja) ### solari catalog instagram content batch > 複数の Instagram 投稿を一度に取得します。 - **CLI**: `solari catalog instagram content batch` - **MCP ツール**: `solari_catalog_instagram_content_batch` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 投稿 id のリストからキャプションと成果を読みます。見つからない id は飛ばします。 **どんなときに使うか** — brand overview やフィードで得た id から投稿がほしいときに使います。 **何が返るか** — 見つかった投稿だけが返ります。 #### パラメータ - `post_ids` (uuid[], 必須, 1–100 items, uuid) — 読み込む post_id。最大 100。 - `sort` (enum, 任意, 既定値 "recent") — 新しい順、またはエンゲージメント順。 値: `recent`, `engagement`. #### レスポンス ##### `Response` - `items` (object[]) — 見つかった投稿。 - `requested` (integer) — 送った id の件数。 - `found` (integer) — 特定できた件数。未収集の id は落とすので、少なくなることがあります。 ##### `items[]` - `id` (uuid) — 投稿 id。 - `slug` (string) — Instagram のショートコード。 - `text` (string) — キャプション。 - `posted_at` (timestamp) — 投稿日時(UTC)。 - `username / user_id / account_id` (string) — 投稿したアカウント。 - `like_count / comment_count` (integer) — エンゲージメント。 - `play_count` (integer | null) — 動画の再生数。 - `media_type` (string) — 投稿の形式。 #### 例 ```console $ solari catalog instagram content batch post_ids='["019f505f-f8be-7e88-ae08-6fba999950b1","019f5060-3449-779e-a08b-d6d49add90cd"]' ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "items": [ { "id": "019f505f-f8be-7e88-ae08-6fba999950b1", "slug": "Dam_BYyJxtR", "text": "#광고 ₊✩‧₊˚ @innisfreeofficial ˚₊✩‧₊ \n공들인 나의 화장.. 찜통 더위에 무너져 내릴때\n이니스프리 노세범 선 파우더 하나면 고민 끝!\n\n유분 가득한 피부.. 꺼진 부위, 모공, 요철 부각되어\n10년은 늙어보이는 몰골에서 노세범 선 파우더 바르는\n즉시 핑크빛 필터를 씌운 듯~ 뽀용 피부 완성 ⭒˚.⋆\n\n노세범 맛집 답게 과다 피지와 유분을 즉각 흡착시키고\n무엇보다 가벼 …", "posted_at": "2026-07-10T10:34:01Z", "virtual_campaign": null, "username": "the_ketchap", "user_id": "018d3b53-c0c1-71cc-a44f-204f7d850267", "profile_picture_url": null, "like_count": 38579, "comment_count": 31, "thumbnail_url": null, "media_url": null, "media": [], "media_type": "reel", "play_count": 676825, "account_id": "018d3b53-c0c1-71cc-a44f-204f7d850267" }, "… 1 more" ], "requested": 2, "found": 2 } ``` #### MCP 呼び出しとして ```json { "name": "solari_catalog_instagram_content_batch", "arguments": { "post_ids": [ "019f505f-f8be-7e88-ae08-6fba999950b1", "019f5060-3449-779e-a08b-d6d49add90cd" ] } } ``` #### 注意点 - SOLARI の投稿 id だけを受けます。ショートコードは content detail の slug に渡してください。 #### 関連ツール - [`solari_catalog_instagram_content_detail`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-content-detail.md?lang=ja) - [`solari_insight_instagram_brand_overview`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-brand-overview.md?lang=ja) ### solari catalog instagram content search > Instagram のキャプション、Bio、動画の文字起こしを検索するときに使います。 - **CLI**: `solari catalog instagram content search` - **MCP ツール**: `solari_catalog_instagram_content_search` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 KR、JP、US、TW で追跡中の Instagram 投稿をキーワードで探します。だいたい直近 6 ヶ月です。 **どんなときに使うか** — ある話題の投稿がほしいときに使います。件数が答えなら content aggregate です。 **何が返るか** — 関連の高い順の投稿です。当たった文言はハイライトされます。 #### パラメータ - `query` (string, 必須) — 探す語句。 - `region` (enum, 任意, 既定値 "KR") — KR、JP、US、TW。 値: `KR`, `JP`, `US`, `TW`. - `limit` (integer, 任意, ≥ 1) — 1ページあたりの件数。 - `offset` (integer, 任意, 既定値 0, ≥ 0) — 先頭から何件飛ばすか。 - `since` (string, 任意, pattern ^\d{4}-\d{2}-\d{2}$) — この UTC 日付以降の投稿だけ (YYYY-MM-DD)。 - `until` (string, 任意, pattern ^\d{4}-\d{2}-\d{2}$) — この UTC 日付以前の投稿だけ (YYYY-MM-DD)。 #### レスポンス ##### `Response` - `query / region` (string) — 適用した query と国。 - `total` (integer) — 一致した総数。10,000 までは正確で、そこから先は止まります。 - `took_ms` (integer) — 検索時間。 - `items` (object[]) — ヒットです。スコアの高い順です。 ##### `items[]` - `post_id` (uuid) — SOLARI の post_id。 - `slug` (string) — Instagram のショートコード。 - `account_id / author_id / username` (string) — 投稿したアカウント。 - `caption` (string) — キャプション。 - `user_bio` (string) — 投稿者の Bio。検索対象テキストの一部です。 - `transcription_text` (string | null) — 動画の音声の文字起こし。 - `posted_at` (timestamp) — 投稿日時(UTC)。 - `like_count / comment_count` (integer) — エンゲージメント。 - `follower_count` (integer) — 投稿者のフォロワー数。 - `score` (number) — 関連度スコア。このレスポンス内でのみ比較できます。 - `highlight` (object) — フィールドごとの一致箇所。caption、user_bio、transcription_text。 - `is_video` (boolean) — 投稿が動画か。 #### 例 ```console $ solari catalog instagram content search query="이니스프리 그린티" limit=3 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "query": "이니스프리 그린티", "region": "KR", "total": 10000, "took_ms": 1586, "items": [ { "post_id": "019f12d8-3e72-78e9-b7e5-39293bc56f23", "author_id": "019f12d8-3e0f-7c74-afc6-e14405bd1523", "username": "hanydiary", "caption": "[이니스프리에디터 4기 1-2 : 그린티 PDRN 아이&립 세럼] #이니스프리 #그린티PDRN 💚 자세한 포스팅은 프로필 링크 참고해주세요 :)", "user_bio": "대외활동 | 휴학생 | 취준일기 🪽과 학생회 2년 연임 🪽이니스프리 대학생 에디터 3기 / 4기", "transcription_text": null, "posted_at": "2026-02-16T05:44:45Z", "like_count": 3, "comment_count": 3, "follower_count": 972, "score": 140.43787, "slug": "DUzrl1UkoJb", "highlight": { "caption": [ "[이니스프리에디터 4기 1-2 : 그린티 PDRN 아이&립 세럼] #이니스프리 #그린티PDRN 💚 자세한 포스팅은 프로필 링크 참고해주세요 :)" ], "user_bio": [ "대외활동 | 휴학생 | 취준일기 🪽과 학생회 2년 연임 🪽이니스프리 대학생 에디터 3기 / 4기" ], "transcription_text": [] }, "is_video": false, "media_url": null, "thumbnail_url": null, "account_id": "019f12d8-3e0f-7c74-afc6-e14405bd1523" }, "… 2 more" ] } ``` #### MCP 呼び出しとして ```json { "name": "solari_catalog_instagram_content_search", "arguments": { "query": "이니스프리 그린티", "limit": 3 } } ``` #### 注意点 - since がだいたい 6 ヶ月より前だと結果は空です。 - total は 10,000 まで数えて、そこから先は止まります。 #### 関連ツール - [`solari_insight_instagram_content_aggregate`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-content-aggregate.md?lang=ja) - [`solari_catalog_instagram_content_batch`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-content-batch.md?lang=ja) - [`solari_catalog_tiktok_content_search`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-content-search.md?lang=ja) ### solari insight instagram content trending > いま伸びている Instagram 投稿です。 - **CLI**: `solari insight instagram content trending` - **MCP ツール**: `solari_insight_instagram_content_trending` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 region で指定した地域の、いま伸びている Instagram 投稿を、投稿者のプロフィール付きで返します。 **どんなときに使うか** — いま効いているコンテンツを見たいときに使います。伸びの速さが大事なら content rising です。 **何が返るか** — いま伸びている投稿です。次のページは next_cursor で取ります。 #### パラメータ - `region` (string, 任意, 既定値 "KR") — KR や JP などの国コード。 - `limit` (integer, 任意, ≥ 1) — 1ページあたりの件数。 - `cursor` (string, 任意) — 前のページの next_cursor。 - `account_id` (string, 任意, uuid, pattern ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$) — 順位を合わせるブランドの account_id。 - `username` (string, 任意, ≤ 64 chars) — 順位を合わせるブランドのユーザー名。account_id があるときは無視されます。 #### レスポンス ##### `Response` - `items` (object[]) — いま伸びている投稿。 - `total_count` (integer) — フィードの件数。 - `region` (string) — 適用した国。 - `content_type` (string) — フィードの種類。 - `next_cursor` (string | null) — 次のページではこれを cursor として渡します。 ##### `items[]` - `post_id` (uuid) — ほかのコンテンツ系ツールに渡す投稿 id。 - `slug` (string) — 公開 URL のショートコード。 - `author_id` (uuid) — 投稿者の account_id。 - `username` (string) — 投稿者のユーザー名。 - `full_name` (string | null) — 表示名。 - `profile_pic_url` (string | null) — プロフィール画像 URL。 - `follower_count` (integer | null) — 投稿者のフォロワー数。 - `region` (string | null) — 投稿者の国。 - `posted_at` (timestamp) — 投稿日時(UTC)。 - `media_type` (string) — image、video、または carousel。 - `play_count` (integer | null) — 動画の再生数。画像では null。 - `like_count` (integer | null) — いいね数。 - `text` (string | null) — キャプション。 - `media_url` (string) — メディア URL。 - `thumbnail_url` (string) — サムネイル URL。 - `score` (number | null) — このレスポンスでの順位スコア。 - `efficiency_score` (number | null) — 投稿者のフォロワー数と比べた成果。 - `est_percentile` (number | null) — 対象国内のパーセンタイル。0–1。 - `total_views_3m` (integer | null) — 投稿者の直近 3 ヶ月の再生数。 - `median_views_3m` (integer | null) — 投稿者の直近 3 ヶ月の再生数の中央値。 - `recent_collab_brands` (string[]) — 投稿者が最近コラボしたブランド。 - `item_type` (string) — アイテムの種類。これらのフィードでは post。 - `content_source` (string | null) — このアイテムを出したフィード。 - `is_saved` (boolean | null) — SOLARI に保存されているか。 - `updated_at` (timestamp | null) — 指標の最終更新時刻。 #### 例 ```console $ solari insight instagram content trending region=KR limit=2 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "items": [ { "item_type": "content", "post_id": "01a055fe-d72c-7005-8709-eef67b4be6f0", "author_id": "018ecc27-f8e7-7100-9339-bb050ea44a7f", "username": "sixpackpiggy", "full_name": "Jinmin Park", "profile_pic_url": "https://dcr.bzine.co/instagram/users/sixpackpiggy/profile-picture", "follower_count": 93442, "region": "KR", "posted_at": "2026-08-29T02:02:20Z", "media_type": "video", "play_count": 286749, "like_count": null, "score": 96.69330916066565, "efficiency_score": null, "est_percentile": 96.69330916066565, "updated_at": "2026-09-03T04:51:42.797111Z", "media_url": "https://smr-images-b.bzine.co/users/018ecc27-f8e7-7100-9339-bb050ea44a7f/posts/01a055fe-d72c-7005-8709-eef67b4be6f0/medias/01a055fe-d964-7d73-9a77-d06823a2abc2.mp4", "thumbnail_url": "https://bzine.co/cdn-cgi/media/width=480,mode=frame,time=0ms/https://smr-images.bzine.co/users/018ecc27-f8e7-7100-9339-bb050ea44a7f/posts/01a055fe-d72c-7005-8709-eef67b4be6f0/medias/01a055fe-d964-7d73-9a77-d06823a2abc2.m …", "slug": "Dcmzs05SAae", "text": "How dedicated are you to your Korean skincare? 💅@patinaosaka \n#koreanskincare #osaka #japan #kbeauty #traveling", "brand_match_score": null, "recent_collab_brands": [], "total_views_3m": 1875678, "median_views_3m": 57780, "is_saved": false, "content_source": null }, "… 1 more" ], "total_count": 213635, "region": "KR", "content_type": "trending", "next_cursor": "eyJhcyI6ICIyMDI2LTA5LTAzVDA1OjIwOjIzLjM4Mzk3NCswMDowMCIsICJzYyI6ICIyMDI2LTA5LTAzVDA0OjQ0OjQ3LjkzNTI1OCswMDowMCIsICJzcCI6ICIwMWEwNTVmZS1mOWIyLTdiNmYtYjY1OS05ZGE1OTM3NjgzMWMifQ==" } ``` #### MCP 呼び出しとして ```json { "name": "solari_insight_instagram_content_trending", "arguments": { "region": "KR", "limit": 2 } } ``` #### 注意点 - ブランドの account_id かユーザー名を付けると、指定したブランドに合わせて順位が変わります。 - ページは offset ではなく cursor です。next_cursor を送り返してください。 #### 関連ツール - [`solari_insight_instagram_content_rising`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-content-rising.md?lang=ja) - [`solari_insight_instagram_content_trend_clusters`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-content-trend-clusters.md?lang=ja) ### solari insight instagram content rising > 急上昇中の Instagram 投稿です。 - **CLI**: `solari insight instagram content rising` - **MCP ツール**: `solari_insight_instagram_content_rising` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 直近の成果が急に伸びている Instagram 投稿です。投稿者のプロフィールも付きます。 **どんなときに使うか** — いまの数字より、伸びの速さが大事なときに使います。 **何が返るか** — 上昇中の投稿です。次のページは next_cursor で取ります。 #### パラメータ - `region` (string, 任意, 既定値 "KR") — KR や JP などの国コード。 - `limit` (integer, 任意, ≥ 1) — 1ページあたりの件数。 - `cursor` (string, 任意) — 前のページの next_cursor。 - `account_id` (string, 任意, uuid, pattern ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$) — 順位を合わせるブランドの account_id。 - `username` (string, 任意, ≤ 64 chars) — 順位を合わせるブランドのユーザー名。account_id があるときは無視されます。 #### レスポンス ##### `Response` - `items` (object[]) — 上昇中の投稿。 - `total_count` (integer) — フィードの件数。 - `region` (string) — 適用した国。 - `content_type` (string) — フィードの種類。 - `next_cursor` (string | null) — 次のページではこれを cursor として渡します。 ##### `items[]` - `post_id` (uuid) — ほかのコンテンツ系ツールに渡す投稿 id。 - `slug` (string) — 公開 URL のショートコード。 - `author_id` (uuid) — 投稿者の account_id。 - `username` (string) — 投稿者のユーザー名。 - `full_name` (string | null) — 表示名。 - `profile_pic_url` (string | null) — プロフィール画像 URL。 - `follower_count` (integer | null) — 投稿者のフォロワー数。 - `region` (string | null) — 投稿者の国。 - `posted_at` (timestamp) — 投稿日時(UTC)。 - `media_type` (string) — image、video、または carousel。 - `play_count` (integer | null) — 動画の再生数。画像では null。 - `like_count` (integer | null) — いいね数。 - `text` (string | null) — キャプション。 - `media_url` (string) — メディア URL。 - `thumbnail_url` (string) — サムネイル URL。 - `score` (number | null) — このレスポンスでの順位スコア。 - `efficiency_score` (number | null) — 投稿者のフォロワー数と比べた成果。 - `est_percentile` (number | null) — 対象国内のパーセンタイル。0–1。 - `total_views_3m` (integer | null) — 投稿者の直近 3 ヶ月の再生数。 - `median_views_3m` (integer | null) — 投稿者の直近 3 ヶ月の再生数の中央値。 - `recent_collab_brands` (string[]) — 投稿者が最近コラボしたブランド。 - `item_type` (string) — アイテムの種類。これらのフィードでは post。 - `content_source` (string | null) — このアイテムを出したフィード。 - `is_saved` (boolean | null) — SOLARI に保存されているか。 - `updated_at` (timestamp | null) — 指標の最終更新時刻。 #### 例 ```console $ solari insight instagram content rising region=KR limit=2 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "items": [ { "item_type": "content", "post_id": "01a0495a-4e46-73d5-a111-a818248b665b", "author_id": "019e4a24-ee85-78e9-8763-602930999853", "username": "iiiwantkitty", "full_name": "주 령", "profile_pic_url": "https://dcr.bzine.co/instagram/users/iiiwantkitty/profile-picture", "follower_count": 706, "region": "KR", "posted_at": "2026-08-28T07:38:46Z", "media_type": "video", "play_count": 48092, "like_count": null, "score": 0.1292899036795201, "efficiency_score": 0.1292899036795201, "est_percentile": 84.68488691008565, "updated_at": "2026-09-03T05:20:45.496271Z", "media_url": "https://smr-images-b.bzine.co/users/019e4a24-ee85-78e9-8763-602930999853/posts/01a0495a-4e46-73d5-a111-a818248b665b/medias/01a0495a-4fc0-7352-92dd-a04afe898589.mp4", "thumbnail_url": "https://bzine.co/cdn-cgi/media/width=480,mode=frame,time=0ms/https://smr-images-a.bzine.co/users/019e4a24-ee85-78e9-8763-602930999853/posts/01a0495a-4e46-73d5-a111-a818248b665b/medias/01a0495a-4fc0-7352-92dd-a04afe898589 …", "slug": "Dck0Wj8xeq3", "text": "이정도가 아니면 뮤트라고 하지말자..⭐️ 뮤트톤 친구 입술에 빡빡 발라주고싶음\n\n컬러 보자마자 아 내꺼하자ㅡㅡ 하고 바로 겟한 것\n\n그레이애쉬,, 핑크 ,, 브라운 다 들어간 밑힌 컬러 이거 뮤트톤들이 바르면 진짜 분위기 미처버리는 립이걸랑 영상보다 실물이 더 뮤트!\n\n입술에 올리면 좀더 투명하게 올라가면서 회끼도는데 뉴트럴하면서도 팥앙금 같은 고런 깔 느낌\n안쪽에만 톡톡 발라서 쌩얼립으로도 …", "brand_match_score": null, "recent_collab_brands": [ "apieu_cosmetics", "… 8 more" ], "total_views_3m": 2389749, "median_views_3m": 5215, "is_saved": false, "content_source": null }, "… 1 more" ], "total_count": 291665, "region": "KR", "content_type": "rising", "next_cursor": "eyJhcyI6ICIyMDI2LTA5LTAzVDA1OjIwOjQ5LjA3Mjg3MiswMDowMCIsICJzYyI6ICIyMDI2LTA5LTAzVDA1OjE5OjQwLjc1NzUwOCswMDowMCIsICJzcCI6ICIwMWEwNDNmOC1hODdlLTdiMWItYjFiNi1iODliMTU2YjU0ODgifQ==" } ``` #### MCP 呼び出しとして ```json { "name": "solari_insight_instagram_content_rising", "arguments": { "region": "KR", "limit": 2 } } ``` #### 注意点 - パラメータは content trending と同じで、ブランドに合わせた順位も同じです。 #### 関連ツール - [`solari_insight_instagram_content_trending`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-content-trending.md?lang=ja) - [`solari_insight_instagram_content_trend_clusters`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-content-trend-clusters.md?lang=ja) ### solari insight instagram content trend clusters > Instagram のトレンドをテーマごとにまとめます。 - **CLI**: `solari insight instagram content trend clusters` - **MCP ツール**: `solari_insight_instagram_content_trend_clusters` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 region で指定した地域のトレンド要約です。名前の付いたテーマ、規模、動き、メンバー投稿が付きます。 **どんなときに使うか** — 投稿の羅列ではなく、いまの流れを見たいときに使います。 **何が返るか** — 名前の付いたクラスタと、メンバー投稿のプレビューです。 #### パラメータ - `region` (string, 任意, 既定値 "KR") — KR や JP などの国コード。 - `since_days` (integer, 任意, 既定値 7, 1–90) — 何日前まで見るか。 - `limit` (integer, 任意, ≥ 1) — 返すクラスタの数。 - `account_id` (string, 任意, uuid, pattern ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$) — 並びを合わせるブランドの account_id。 - `username` (string, 任意, ≤ 64 chars) — 並びを合わせるブランドのユーザー名。account_id があるときは無視されます。 - `brand_aware` (boolean, 任意, 既定値 true) — ブランド向けに並び替えるか。ブランドを付けたときの既定はオンです。 #### レスポンス ##### `Response` - `success` (boolean) — ダイジェストが作られたか。 - `trend_count` (integer) — 返したクラスタの数。 - `header_text` (string) — ダイジェストの見出し。 - `region / since_days` (string · integer) — 適用した国と、さかのぼった期間。 - `brand_aware` (boolean) — ブランド向けの並び替えを頼んだか。 - `als_applied` (boolean) — ブランド寄りのモデルが実際に動いたか。 - `trends` (object[]) — クラスタ。 ##### `trends[]` - `cluster_id` (string) — クラスタ id。 - `name` (string) — クラスタ名。 - `bullets` (string[]) — クラスタを説明する文。 - `count` (integer) — 所属する投稿。 - `count_delta` (integer) — 前の期間と比べた所属投稿数の変化。 - `growth_pct` (number) — 成長率(パーセント)。 - `avg_play_delta` (number) — 平均再生数の変化。 - `distinct_creators` (integer) — クラスタに入っているクリエイター。 - `creator_delta` (integer) — クリエイター数の変化。 - `is_new` (boolean) — そのクラスタが今の期間に初めて出たか。 - `member_thumbnails` (object[]) — 所属投稿のサムネイルプレビュー。 #### 例 ```console $ solari insight instagram content trend clusters region=KR since_days=7 limit=2 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "success": true, "trend_count": 2, "header_text": "최근 7일 인기 트렌드 2개 (브랜드 컨텍스트 없음)", "brand_aware": true, "als_applied": false, "region": "KR", "since_days": 7, "directive": null, "trends": [ { "cluster_id": "01a05857-7727-74d8-8da5-4e95981aca8d", "name": "GV90의 미래형 하이테크 기능", "bullets": [ "화면이 회전하거나 시트가 뒤로 돌아가는 등 물리적으로 변형되는 자동차 내부 장치들을 직접 시연함", "… 1 more" ], "count": 7, "count_delta": 0, "growth_pct": 0, "avg_play_delta": 0, "creator_delta": 0, "distinct_creators": 3, "is_new": false, "early_zone_creator_count": null, "early_zone_creator_ratio": null, "als_member_count": null, "mean_als_score": null, "annotation": null, "group": null, "member_thumbnails": [ { "post_id": "01a030df-c4b3-739c-9214-44b3b9463c7b", "thumbnail_url": "https://bzine.co/cdn-cgi/media/width=480,mode=frame,time=100ms/https://smr-images-c.bzine.co/users/018cb4c9-da89-7b02-8efd-53ccb65c26c9/posts/01a030df-c4b3-739c-9214-44b3b9463c7b/medias/01a030df-c7c3-788e-8775-1096728e07 …", "slug": "DcP6jgRMTRv", "username": "sol.bpd", "media_url": "https://smr-images-c.bzine.co/users/018cb4c9-da89-7b02-8efd-53ccb65c26c9/posts/01a030df-c4b3-739c-9214-44b3b9463c7b/medias/01a030df-c7c3-788e-8775-1096728e07f2.mp4", "media_type": "video", "play_count": 1947419, "posted_at": "2026-08-20T04:37:17+00:00" }, "… 3 more" ] }, "… 1 more" ], "insights": null, "insight_query": null } ``` #### MCP 呼び出しとして ```json { "name": "solari_insight_instagram_content_trend_clusters", "arguments": { "region": "KR", "since_days": 7, "limit": 2 } } ``` #### 注意点 - 最大 2 分ほどかかることがあります。 - ブランドを付けると、指定したブランド向けに並びが変わります。元の順のままなら brand_aware=false です。 #### 関連ツール - [`solari_insight_instagram_content_trending`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-content-trending.md?lang=ja) - [`solari_insight_instagram_content_rising`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-content-rising.md?lang=ja) ### solari insight instagram content aggregate > Instagram の投稿数を数えるときに使います。 - **CLI**: `solari insight instagram content aggregate` - **MCP ツール**: `solari_insight_instagram_content_aggregate` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 アカウント、形式、ハッシュタグ、メンション、キーワードごとに投稿数を足します。答えが数字のときに使います。 **どんなときに使うか** — 規模、平均、どのハッシュタグが先頭かが必要なときに使います。投稿そのものは content search です。 **何が返るか** — グループごとの件数です。大きいグループが先に来ます。ほかの指標は頼んだものだけ入ります。 #### パラメータ - `region` (enum, 任意, 既定値 "KR") — KR、JP、US、TW。 値: `KR`, `JP`, `US`, `TW`. - `group_by` (enum, 任意) — 件数の分け方。 値: `account`, `post_type`, `hashtag`, `mention`, `caption_keyword`, `transcription_keyword`. - `interval` (enum, 任意) — この暦の間隔で時系列を付けます。 値: `day`, `week`, `month`. - `metrics` (string[], 任意) — post_count 以外に欲しい指標。 値: `like_sum`, `like_avg`, `comment_sum`, `comment_avg`, `view_sum`, `view_avg`, `follower_avg`, `account_count`. - `query` (string, 任意) — キャプションと文字起こしで探すキーワード。 - `usernames` (string[], 任意) — これらの Instagram ユーザー名だけ。 - `hashtags` (string[], 任意) — これらのハッシュタグをすべて持つ投稿だけ。 - `mentions` (string[], 任意) — これらのユーザー名をすべてメンションした投稿だけ。 - `post_types` (string[], 任意) — これらの形式だけ。 - `since` (string, 任意, pattern ^\d{4}-\d{2}-\d{2}$) — この UTC 日付以降の投稿だけ (YYYY-MM-DD)。 - `until` (string, 任意, pattern ^\d{4}-\d{2}-\d{2}$) — この UTC 日付以前の投稿だけ (YYYY-MM-DD)。 - `limit` (integer, 任意, ≥ 1) — 返すグループの数。 #### レスポンス ##### `Response` - `region` (string) — 集計した国。 - `since` (date) — 実際に使った開始日。 - `until` (date | null) — 実際に使った終了日。 - `group_by` (string | null) — 適用したグループ化。 - `interval` (string | null) — 適用した時間間隔。 - `total_posts` (integer) — フィルタに一致した投稿。 - `truncated` (boolean) — limit より多くのグループがあったとき true。 - `buckets` (object[]) — グループです。大きい順です。 ##### `buckets[]` - `key` (string) — グループの値。group_by を省略すると、合計が 1 つだけです。 - `metrics.post_count` (integer) — 投稿数。常に入ります。 - `metrics.like_sum / like_avg` (number | null) — いいねの合計と平均。頼んだときだけ入ります。 - `metrics.comment_sum / comment_avg` (number | null) — コメントの合計と平均。頼んだときだけ入ります。 - `metrics.view_sum / view_avg` (number | null) — 再生数の合計と平均。頼んだときだけ入ります。 - `metrics.share_sum / collect_sum` (number | null) — TikTok 専用。ここでは常に null。 - `metrics.follower_avg` (number | null) — 投稿者の平均フォロワー数。 - `metrics.account_count` (integer | null) — グループ内のユニークアカウント数。 - `series` (object[] | null) — 期間ごとの内訳。interval を付けたとき。 #### 例 ```console $ solari insight instagram content aggregate group_by=hashtag query="이니스프리" metrics='["like_avg","view_sum","account_count"]' limit=5 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "region": "KR", "since": "2026-03-04", "until": null, "group_by": "hashtag", "interval": null, "total_posts": 1647, "truncated": true, "buckets": [ { "key": "이니스프리", "metrics": { "post_count": 772, "like_sum": null, "like_avg": 320.7240932642487, "comment_sum": null, "comment_avg": null, "view_sum": 9400953, "view_avg": null, "share_sum": null, "share_avg": null, "collect_sum": null, "collect_avg": null, "follower_avg": null, "account_count": 587 }, "series": null }, { "key": "광고", "metrics": { "post_count": 548, "like_sum": null, "like_avg": 373.04021937842776, "comment_sum": null, "comment_avg": null, "view_sum": 5463711, "view_avg": null, "share_sum": null, "share_avg": null, "collect_sum": null, "collect_avg": null, "follower_avg": null, "account_count": 381 }, "series": null }, "… 3 more" ] } ``` #### MCP 呼び出しとして ```json { "name": "solari_insight_instagram_content_aggregate", "arguments": { "group_by": "hashtag", "query": "이니스프리", "metrics": [ "like_avg", "view_sum", "account_count" ], "limit": 5 } } ``` #### 注意点 - metrics に名前を付けないと post_count だけが入ります。 - KR、JP、US、TW のだいたい直近 6 ヶ月です。それより古い since は切り詰められます。 - interval だけなら期間ごとに1枠です。group_by と一緒だと、グループごとに時系列が付きます。 #### 関連ツール - [`solari_catalog_instagram_content_search`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-content-search.md?lang=ja) - [`solari_insight_tiktok_content_aggregate`](https://finder-dev-pub.bzine.co/docs/tools/insight-tiktok-content-aggregate.md?lang=ja) ### solari catalog instagram tag search > ハッシュタグやメンション付きの投稿を探すときに使います。 - **CLI**: `solari catalog instagram tag search` - **MCP ツール**: `solari_catalog_instagram_tag_search` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 追跡している全期間から、ハッシュタグかメンションを完全一致で探します。本文のどこかにあるキーワードなら content search です。 **どんなときに使うか** — キャンペーンハッシュタグの広がりや、メンションされた投稿がほしいときに使います。 **何が返るか** — 検索したタグが付いた投稿です。収集時刻の新しい順です。 #### パラメータ - `query` (string, 必須, ≤ 200 chars) — ハッシュタグ(#ootd)またはメンション(@ユーザー名)。 - `limit` (integer, 任意, ≥ 1) — 1ページあたりの件数。 - `cursor` (string, 任意) — 前のページの next_cursor。 #### レスポンス ##### `Response` - `query` (string) — 実際に検索したタグ。先頭の # や @ は含みません。 - `tag_kind` (string) — hashtag または mention。query の解釈です。 - `matched_tags` (integer) — 一致した表記の数。0 なら、そのタグは一度も出ていません。 - `items` (object[]) — 見つかった投稿。 - `found` (integer) — 読み込めた投稿。 - `next_cursor` (string | null) — 次のページでは cursor として渡します。最後のページでは null。 - `mirror_synced_at` (timestamp | null) — タグのインデックスの最終更新時刻(UTC)。 ##### `items[]` - `id` (uuid) — 投稿 id。 - `slug` (string) — Instagram のショートコード。 - `text` (string) — キャプション。 - `posted_at` (timestamp) — 投稿日時(UTC)。 - `username / user_id / account_id` (string) — 投稿したアカウント。 - `like_count / comment_count` (integer) — エンゲージメント。 - `play_count` (integer | null) — 動画の再生数。 - `media_type` (string) — 投稿の形式。 #### 例 ```console $ solari catalog instagram tag search query=#ootd limit=3 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "query": "ootd", "tag_kind": "hashtag", "matched_tags": 1, "items": [ { "id": "01a06a16-781f-7578-822b-1c326e72f28d", "slug": "DW1jniHiVSU", "text": "御殿場是一個一天逛不完的地方 希望下次有時間可以慢慢逛 —— OOTD —— Pants:LAKOLE / Shirt:HARE #LYNN__OOTD #日常穿搭 #ootd …", "posted_at": "2026-04-07T16:16:21Z", "virtual_campaign": null, "username": "llling_yinnnnn", "user_id": "019dbc46-1a67-7ef5-b95a-2fb466790d04", "account_id": "019dbc46-1a67-7ef5-b95a-2fb466790d04", "profile_picture_url": null, "like_count": 3, "comment_count": 4, "media_type": "post", "play_count": null, "media": [] }, { "id": "01a06a16-552d-7099-ae0a-77e6b68de960", "slug": "DaS66VzJBPW", "text": "SEOUL OOTD — 這次搭配了四種完全不同風格 #ootd #lynn__ootd #穿搭販賣機 #韓國穿搭", "posted_at": "2026-07-02T15:33:13Z", "virtual_campaign": null, "username": "llling_yinnnnn", "user_id": "019dbc46-1a67-7ef5-b95a-2fb466790d04", "account_id": "019dbc46-1a67-7ef5-b95a-2fb466790d04", "profile_picture_url": null, "like_count": 32, "comment_count": 1, "media_type": "reel", "play_count": 888, "media": [] }, "… 1 more" ], "found": 3, "next_cursor": "01a06a16-552d-7099-ae0a-77e6b68de960", "mirror_synced_at": "2026-09-03T21:47:19Z" } ``` #### MCP 呼び出しとして ```json { "name": "solari_catalog_instagram_tag_search", "arguments": { "query": "#ootd", "limit": 3 } } ``` #### 注意点 - 並びは収集時刻であり posted_at ではありません。公開時刻順が必要なら自分で並べてください。 - タグのインデックスは1日1回更新されます。境目は mirror_synced_at です。 - 完全一致です。#ootd は #ootdkorea に当たりません。メンションは @ を付けてください。 #### 関連ツール - [`solari_catalog_instagram_content_search`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-content-search.md?lang=ja) - [`solari_insight_instagram_content_aggregate`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-content-aggregate.md?lang=ja) ### solari catalog tiktok account search > TikTok のユーザー名や名前からユーザーを探します。account_id を取るときに使えます。 - **CLI**: `solari catalog tiktok account search` - **MCP ツール**: `solari_catalog_tiktok_account_search` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 ユーザー名または表示名で TikTok のブランドやクリエイターを探します。Instagram の account_id はここでは使えません。 **どんなときに使うか** — TikTok の名前やユーザー名だけで、まだ account_id がないときに使います。 **何が返るか** — 一致したアカウントの一覧です。いちばん近い結果が先頭に来ます。 #### パラメータ - `query` (string, 必須) — 名前、または TikTok のユーザー名。 - `limit` (integer, 任意, ≥ 1) — 返すアカウントの数。 - `region` (string, 任意, ≤ 8 chars) — KR や JP などの国コード。空なら全体を探します。 #### レスポンス ##### `Response` - `found` (boolean) — 一致したアカウントがあるか。 - `items` (object[]) — 一致したアカウントです。いちばん近い結果が先頭です。 ##### `items[]` - `account_id` (uuid) — TikTok の account_id。Instagram のものとは互換しません。 - `username` (string) — TikTok のユーザー名。 - `nickname` (string) — 表示名。 - `follower_count / video_count` (integer) — フォロワー数と動画数。 - `region` (string | null) — 国コード。追跡中のアカウントの多くは持ちません。 - `is_verified / is_private` (boolean) — 認証と非公開のフラグ。 - `is_commerce_user` (boolean) — コマースアカウントか。 - `commerce_user_category` (string | null) — コマースのカテゴリ。例: Beauty。 - `profile_url` (string) — 公開プロフィール URL。 #### 例 ```console $ solari catalog tiktok account search query=innisfree limit=5 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "found": true, "items": [ { "account_id": "019b2137-f76e-7b33-9437-26044fa7b1ed", "username": "innisfree_official", "nickname": "Innisfreeofficial", "follower_count": 143800, "video_count": 767, "region": "KR", "is_verified": true, "is_private": false, "is_commerce_user": true, "commerce_user_category": "Beauty", "profile_url": "https://www.tiktok.com/@innisfree_official" } ] } ``` #### MCP 呼び出しとして ```json { "name": "solari_catalog_tiktok_account_search", "arguments": { "query": "innisfree", "limit": 5 } } ``` #### 注意点 - region を付けると指定した国だけになり、region のないアカウントは落ちます。特定の国でなければ空のままにしてください。 - 未収集のユーザー名はここには出ません。catalog tiktok account profile に渡すとその場で取りにいきます。 #### 関連ツール - [`solari_catalog_tiktok_account_profile`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-account-profile.md?lang=ja) - [`solari_catalog_tiktok_account_posts`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-account-posts.md?lang=ja) - [`solari_catalog_instagram_account_search`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-account-search.md?lang=ja) ### solari catalog tiktok account profile > TikTok アカウントのプロフィールと直近の投稿です。 - **CLI**: `solari catalog tiktok account profile` - **MCP ツール**: `solari_catalog_tiktok_account_profile` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 TikTok アカウントのプロフィールと、直近投稿のプレビューを返します。 **どんなときに使うか** — TikTok アカウントの全体像がほしいときに使います。 **何が返るか** — プロフィール、直近投稿、追跡中かどうかです。 #### パラメータ - `account_id` (string, 任意, uuid, pattern ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$) — TikTok の account_id。これか username を渡します。 - `username` (string, 任意, ≤ 64 chars) — TikTok のユーザー名。account_id があるときは無視されます。 #### レスポンス ##### `Response` - `account_id` (uuid) — TikTok の account_id。 - `username / nickname / bio` (string) — ユーザー名、表示名、Bio。 - `bio_links` (string[]) — Bio 内のリンク。 - `follower_count / following_count` (integer) — フォロワー数とフォロー数。 - `heart_count` (integer) — アカウント全体の累計いいね数。 - `video_count` (integer) — 公開した動画数。 - `is_verified / is_private` (boolean) — 認証と非公開のフラグ。 - `is_commerce_user / commerce_user_category` (boolean · string) — コマースの状態とカテゴリ。 - `region / language` (string | null) — 国コードと言語コード。 - `avatar_url / profile_url` (string) — アバターと公開プロフィールのリンク。 - `tracked` (boolean) — 定期クロールの対象か。 - `sync_status` (string) — クロールの状態。 - `synced_at` (timestamp) — 最終クロール時刻。 - `recent_posts` (object[]) — 直近投稿のプレビュー。 - `fetched_on_demand` (boolean) — この呼び出しで初めてアカウントを取得したとき true。 ##### `recent_posts[]` - `post_id` (uuid) — TikTok の post_id。Instagram のものとは互換しません。 - `video_id` (string) — TikTok URL の公開数値 id。 - `url` (string) — 公開パーマリンク。 - `account_id` (uuid) — 投稿者の account_id。 - `username` (string) — 投稿者のユーザー名。 - `post_type` (string) — video または carousel。 - `posted_at` (timestamp) — 投稿日時(UTC)。 - `caption` (string) — キャプション。 - `duration_seconds` (integer) — 動画の長さ。 - `width / height` (integer) — 解像度。 - `play_count` (integer) — 再生数。 - `like_count` (integer) — いいね数。 - `comment_count` (integer) — コメント数。 - `share_count` (integer) — シェア数。 - `collect_count` (integer) — 保存数。 - `is_ad` (boolean) — TikTok の広告フラグ。 - `is_pinned` (boolean) — プロフィールにピン留めされているか。 - `aigc_label_type` (string | null) — AI コンテンツのラベル。TikTok が付けたときだけ入ります。 - `original_language_code` (string | null) — 元の言語。 - `cover_url` (string) — カバー画像 URL。 - `video_url` (string) — 動画ファイル URL。 - `images` (string[]) — カルーセルのスライド。video では空です。 - `hashtags` (string[]) — キャプションのハッシュタグ。 - `mentions` (string[]) — キャプションでメンションされたユーザー名。 - `transcript` (string | null) — 話し言葉の文字起こし。include_transcript=true のときだけ入ります。 #### 例 ```console $ solari catalog tiktok account profile username=innisfree_official ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "account_id": "019b2137-f76e-7b33-9437-26044fa7b1ed", "username": "innisfree_official", "nickname": "Innisfreeofficial", "bio": "NATURE MEETS KOREAN SKIN SCIENCE", "bio_links": [ "https://linktr.ee/innisfree_official" ], "follower_count": 143900, "following_count": 14, "heart_count": 2200000, "video_count": 767, "is_verified": true, "is_private": false, "is_commerce_user": true, "commerce_user_category": "Beauty", "region": "KR", "language": null, "avatar_url": "https://p16-common-sign.tiktokcdn-eu.com/tos-alisg-avt-0068/3f8e48dc4a284a8ead37e93175ebdb86~tplv-tiktokx-cropcenter:720:720.jpeg?dr=10399&refresh_token=04b90255&x-expires=1788541200&x-signature=Gd3gJu4HyBZPCr%2FqEevyDs6 …", "profile_url": "https://www.tiktok.com/@innisfree_official", "sync_status": "OK", "tracked": true, "synced_at": "2026-09-02T17:16:05.835000Z", "recent_posts": [ { "post_id": "01a0631e-f0df-7e9d-a09b-d84bc31d3834", "video_id": "7680375687139642645", "url": "https://www.tiktok.com/@innisfree_official/video/7680375687139642645", "account_id": "019b2137-f76e-7b33-9437-26044fa7b1ed", "username": "innisfree_official", "post_type": "video", "posted_at": "2026-09-02T12:00:00Z", "caption": "Deeply hydrated skin—NO OFF HOURS. 💚 wherever the day takes MINGYU—his hydration stays SUPERCHARGED ⚡️ Green Tea Ceramide Milk: Lightweight milky toner that won't clog your pores Green Tea Ceramide Mist: Touch-free, fa …", "duration_seconds": 23, "width": 1080, "height": 1920, "play_count": 493, "like_count": 37, "comment_count": 2, "share_count": 0, "collect_count": 3, "is_ad": false, "is_pinned": false, "aigc_label_type": null, "original_language_code": null, "cover_url": "https://smr-images-a.bzine.co/tiktok/users/019b2137-f76e-7b33-9437-26044fa7b1ed/posts/01a0631e-f0df-7e9d-a09b-d84bc31d3834/medias/cover.jpg", "video_url": "https://smr-images-a.bzine.co/tiktok/users/019b2137-f76e-7b33-9437-26044fa7b1ed/posts/01a0631e-f0df-7e9d-a09b-d84bc31d3834/medias/origin.mp4", "images": [], "hashtags": [], "mentions": [], "transcript": null }, "… 5 more" ], "fetched_on_demand": false } ``` #### MCP 呼び出しとして ```json { "name": "solari_catalog_tiktok_account_profile", "arguments": { "username": "innisfree_official" } } ``` #### 注意点 - 未収集のユーザー名は、最初のリクエストでその場で取りにいきます(だいたい 10–40 秒)。収集が終わるまでは直近投稿だけです。 - そのあとの not-found は、TikTok にそのユーザー名がないという意味です。 #### 関連ツール - [`solari_catalog_tiktok_account_posts`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-account-posts.md?lang=ja) - [`solari_catalog_tiktok_account_search`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-account-search.md?lang=ja) - [`solari_catalog_instagram_account_profile`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-account-profile.md?lang=ja) ### solari catalog tiktok account posts > TikTok アカウントの投稿です。 - **CLI**: `solari catalog tiktok account posts` - **MCP ツール**: `solari_catalog_tiktok_account_posts` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 TikTok アカウントの投稿を一覧します。話し言葉が必要なときだけ include_transcript をオンにしてください。 **どんなときに使うか** — プロフィールのプレビューでは足りないときや、期間・形式で分けたいときに使います。 **何が返るか** — 投稿の一覧です。頼めば文字起こしも付きます。 #### パラメータ - `account_id` (string, 任意, uuid, pattern ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$) — TikTok の account_id。これか username を渡します。 - `username` (string, 任意, ≤ 64 chars) — TikTok のユーザー名。account_id があるときは無視されます。 - `limit` (integer, 任意, ≥ 1) — 1ページあたりの件数。 - `offset` (integer, 任意, 既定値 0, ≥ 0) — 先頭から何件飛ばすか。 - `since` (string, 任意, pattern ^\d{4}-\d{2}-\d{2}$) — この UTC 日付以降の投稿だけ (YYYY-MM-DD)。 - `until` (string, 任意, pattern ^\d{4}-\d{2}-\d{2}$) — この UTC 日付以前の投稿だけ (YYYY-MM-DD)。 - `post_type` (enum, 任意) — video または carousel に絞ります。 値: `video`, `carousel`. - `include_transcript` (boolean, 任意, 既定値 false) — 話し言葉の文字起こしを含めるか。 #### レスポンス ##### `Response` - `found` (boolean) — TikTok にないユーザー名なら false です。 - `account_id / username` (string) — 特定したアカウント。 - `total` (integer) — フィルタに一致した投稿。 - `has_more` (boolean) — 次のページがあるか。 - `items` (object[]) — 投稿です。新しい順です。 - `fetched_on_demand` (boolean) — まだ直近の投稿しかないとき true。 ##### `items[]` - `post_id` (uuid) — TikTok の post_id。Instagram のものとは互換しません。 - `video_id` (string) — TikTok URL の公開数値 id。 - `url` (string) — 公開パーマリンク。 - `account_id` (uuid) — 投稿者の account_id。 - `username` (string) — 投稿者のユーザー名。 - `post_type` (string) — video または carousel。 - `posted_at` (timestamp) — 投稿日時(UTC)。 - `caption` (string) — キャプション。 - `duration_seconds` (integer) — 動画の長さ。 - `width / height` (integer) — 解像度。 - `play_count` (integer) — 再生数。 - `like_count` (integer) — いいね数。 - `comment_count` (integer) — コメント数。 - `share_count` (integer) — シェア数。 - `collect_count` (integer) — 保存数。 - `is_ad` (boolean) — TikTok の広告フラグ。 - `is_pinned` (boolean) — プロフィールにピン留めされているか。 - `aigc_label_type` (string | null) — AI コンテンツのラベル。TikTok が付けたときだけ入ります。 - `original_language_code` (string | null) — 元の言語。 - `cover_url` (string) — カバー画像 URL。 - `video_url` (string) — 動画ファイル URL。 - `images` (string[]) — カルーセルのスライド。video では空です。 - `hashtags` (string[]) — キャプションのハッシュタグ。 - `mentions` (string[]) — キャプションでメンションされたユーザー名。 - `transcript` (string | null) — 話し言葉の文字起こし。include_transcript=true のときだけ入ります。 #### 例 ```console $ solari catalog tiktok account posts username=innisfree_official limit=2 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "found": true, "account_id": "019b2137-f76e-7b33-9437-26044fa7b1ed", "username": "innisfree_official", "total": 87, "has_more": true, "items": [ { "post_id": "01a0631e-f0df-7e9d-a09b-d84bc31d3834", "video_id": "7680375687139642645", "url": "https://www.tiktok.com/@innisfree_official/video/7680375687139642645", "account_id": "019b2137-f76e-7b33-9437-26044fa7b1ed", "username": "innisfree_official", "post_type": "video", "posted_at": "2026-09-02T12:00:00Z", "caption": "Deeply hydrated skin—NO OFF HOURS. 💚 wherever the day takes MINGYU—his hydration stays SUPERCHARGED ⚡️ Green Tea Ceramide Milk: Lightweight milky toner that won't clog your pores Green Tea Ceramide Mist: Touch-free, fa …", "duration_seconds": 23, "width": 1080, "height": 1920, "play_count": 493, "like_count": 37, "comment_count": 2, "share_count": 0, "collect_count": 3, "is_ad": false, "is_pinned": false, "aigc_label_type": null, "original_language_code": null, "cover_url": "https://smr-images-b.bzine.co/tiktok/users/019b2137-f76e-7b33-9437-26044fa7b1ed/posts/01a0631e-f0df-7e9d-a09b-d84bc31d3834/medias/cover.jpg", "video_url": "https://smr-images-a.bzine.co/tiktok/users/019b2137-f76e-7b33-9437-26044fa7b1ed/posts/01a0631e-f0df-7e9d-a09b-d84bc31d3834/medias/origin.mp4", "images": [], "hashtags": [], "mentions": [], "transcript": null }, "… 1 more" ], "fetched_on_demand": false } ``` #### MCP 呼び出しとして ```json { "name": "solari_catalog_tiktok_account_posts", "arguments": { "username": "innisfree_official", "limit": 2 } } ``` #### 注意点 - 文字起こしは長いので、include_transcript の既定はオフです。 - This reads the catalog only. If the username is missing, call solari fetch tiktok posts username=… then retry. #### 関連ツール - [`solari_catalog_tiktok_account_profile`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-account-profile.md?lang=ja) - [`solari_catalog_tiktok_content_detail`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-content-detail.md?lang=ja) - [`solari_catalog_instagram_account_posts`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-account-posts.md?lang=ja) ### solari catalog tiktok content detail > TikTok の投稿を取得します。 - **CLI**: `solari catalog tiktok content detail` - **MCP ツール**: `solari_catalog_tiktok_content_detail` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 post_id、video_id、または公開 URL で TikTok 投稿を読みます。 **どんなときに使うか** — 投稿が必要なときに使います。id が多いなら content batch です。 **何が返るか** — 投稿です。文字起こしがあれば付きます。 #### パラメータ - `post_id` (string, 任意, uuid, pattern ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$) — post_id。これか video_id、url のどれかを渡します。 - `video_id` (string, 任意, pattern ^\d{15,20}$) — 公開されている TikTok の数字 id。 - `url` (string, 任意, ≤ 512 chars) — 公開されている TikTok 投稿 URL。 #### レスポンス ##### `Response` - `item` (object | null) — 投稿です。存在しないか非公開なら null。 - `fetched_on_demand` (boolean) — この呼び出しで初めて投稿を取得したとき true。 ##### `item` - `post_id` (uuid) — TikTok の post_id。Instagram のものとは互換しません。 - `video_id` (string) — TikTok URL の公開数値 id。 - `url` (string) — 公開パーマリンク。 - `account_id` (uuid) — 投稿者の account_id。 - `username` (string) — 投稿者のユーザー名。 - `post_type` (string) — video または carousel。 - `posted_at` (timestamp) — 投稿日時(UTC)。 - `caption` (string) — キャプション。 - `duration_seconds` (integer) — 動画の長さ。 - `width / height` (integer) — 解像度。 - `play_count` (integer) — 再生数。 - `like_count` (integer) — いいね数。 - `comment_count` (integer) — コメント数。 - `share_count` (integer) — シェア数。 - `collect_count` (integer) — 保存数。 - `is_ad` (boolean) — TikTok の広告フラグ。 - `is_pinned` (boolean) — プロフィールにピン留めされているか。 - `aigc_label_type` (string | null) — AI コンテンツのラベル。TikTok が付けたときだけ入ります。 - `original_language_code` (string | null) — 元の言語。 - `cover_url` (string) — カバー画像 URL。 - `video_url` (string) — 動画ファイル URL。 - `images` (string[]) — カルーセルのスライド。video では空です。 - `hashtags` (string[]) — キャプションのハッシュタグ。 - `mentions` (string[]) — キャプションでメンションされたユーザー名。 - `transcript` (string | null) — 話し言葉の文字起こし。include_transcript=true のときだけ入ります。 #### 例 ```console $ solari catalog tiktok content detail video_id=7680375687139642645 include_transcript=true ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "item": { "post_id": "01a0631e-f0df-7e9d-a09b-d84bc31d3834", "video_id": "7680375687139642645", "url": "https://www.tiktok.com/@innisfree_official/video/7680375687139642645", "account_id": "019b2137-f76e-7b33-9437-26044fa7b1ed", "username": "innisfree_official", "post_type": "video", "posted_at": "2026-09-02T12:00:00Z", "caption": "Deeply hydrated skin—NO OFF HOURS. 💚 wherever the day takes MINGYU—his hydration stays SUPERCHARGED ⚡️ Green Tea Ceramide Milk: Lightweight milky toner that won't clog your pores Green Tea Ceramide Mist: Touch-free, fa …", "duration_seconds": 23, "width": 1080, "height": 1920, "play_count": 493, "like_count": 37, "comment_count": 2, "share_count": 0, "collect_count": 3, "is_ad": false, "is_pinned": false, "aigc_label_type": null, "original_language_code": null, "cover_url": "https://smr-images-b.bzine.co/tiktok/users/019b2137-f76e-7b33-9437-26044fa7b1ed/posts/01a0631e-f0df-7e9d-a09b-d84bc31d3834/medias/cover.jpg", "video_url": "https://smr-images-c.bzine.co/tiktok/users/019b2137-f76e-7b33-9437-26044fa7b1ed/posts/01a0631e-f0df-7e9d-a09b-d84bc31d3834/medias/origin.mp4", "images": [], "hashtags": [], "mentions": [], "transcript": null }, "fetched_on_demand": false } ``` #### MCP 呼び出しとして ```json { "name": "solari_catalog_tiktok_content_detail", "arguments": { "video_id": "7680375687139642645" } } ``` #### 注意点 - vm.tiktok.com と vt.tiktok.com の短縮リンクも使えます。 - 未収集の video_id や URL は、最初のリクエストでその場で取りにいきます(だいたい 10–40 秒)。 #### 関連ツール - [`solari_catalog_tiktok_content_batch`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-content-batch.md?lang=ja) - [`solari_catalog_tiktok_account_posts`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-account-posts.md?lang=ja) ### solari catalog tiktok content batch > 複数の TikTok 投稿を一度に取得します。 - **CLI**: `solari catalog tiktok content batch` - **MCP ツール**: `solari_catalog_tiktok_content_batch` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 TikTok の投稿 id リストからキャプションと成果を読みます。見つからない id は飛ばします。 **どんなときに使うか** — 検索やアカウント投稿で得た id を一度に見たいときに使います。 **何が返るか** — 見つかった投稿だけが返ります。 #### パラメータ - `post_ids` (uuid[], 必須, 1–100 items, uuid) — 読み込む TikTok 投稿 id。最大 100。 - `sort` (enum, 任意, 既定値 "recent") — 新しい順、またはエンゲージメント順。 値: `recent`, `engagement`. - `include_transcript` (boolean, 任意, 既定値 false) — 話し言葉の文字起こしを含めるか。 #### レスポンス ##### `Response` - `requested` (integer) — 送った id の件数。 - `found` (integer) — 特定できた件数。 - `items` (object[]) — 見つかった投稿。 ##### `items[]` - `post_id` (uuid) — TikTok の post_id。Instagram のものとは互換しません。 - `video_id` (string) — TikTok URL の公開数値 id。 - `url` (string) — 公開パーマリンク。 - `account_id` (uuid) — 投稿者の account_id。 - `username` (string) — 投稿者のユーザー名。 - `post_type` (string) — video または carousel。 - `posted_at` (timestamp) — 投稿日時(UTC)。 - `caption` (string) — キャプション。 - `duration_seconds` (integer) — 動画の長さ。 - `width / height` (integer) — 解像度。 - `play_count` (integer) — 再生数。 - `like_count` (integer) — いいね数。 - `comment_count` (integer) — コメント数。 - `share_count` (integer) — シェア数。 - `collect_count` (integer) — 保存数。 - `is_ad` (boolean) — TikTok の広告フラグ。 - `is_pinned` (boolean) — プロフィールにピン留めされているか。 - `aigc_label_type` (string | null) — AI コンテンツのラベル。TikTok が付けたときだけ入ります。 - `original_language_code` (string | null) — 元の言語。 - `cover_url` (string) — カバー画像 URL。 - `video_url` (string) — 動画ファイル URL。 - `images` (string[]) — カルーセルのスライド。video では空です。 - `hashtags` (string[]) — キャプションのハッシュタグ。 - `mentions` (string[]) — キャプションでメンションされたユーザー名。 - `transcript` (string | null) — 話し言葉の文字起こし。include_transcript=true のときだけ入ります。 #### 例 ```console $ solari catalog tiktok content batch post_ids='["01a0631e-f0df-7e9d-a09b-d84bc31d3834"]' ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "requested": 1, "found": 1, "items": [ { "post_id": "01a0631e-f0df-7e9d-a09b-d84bc31d3834", "video_id": "7680375687139642645", "url": "https://www.tiktok.com/@innisfree_official/video/7680375687139642645", "account_id": "019b2137-f76e-7b33-9437-26044fa7b1ed", "username": "innisfree_official", "post_type": "video", "posted_at": "2026-09-02T12:00:00Z", "caption": "Deeply hydrated skin—NO OFF HOURS. 💚 wherever the day takes MINGYU—his hydration stays SUPERCHARGED ⚡️ Green Tea Ceramide Milk: Lightweight milky toner that won't clog your pores Green Tea Ceramide Mist: Touch-free, fa …", "duration_seconds": 23, "width": 1080, "height": 1920, "play_count": 493, "like_count": 37, "comment_count": 2, "share_count": 0, "collect_count": 3, "is_ad": false, "is_pinned": false, "aigc_label_type": null, "original_language_code": null, "cover_url": "https://smr-images-b.bzine.co/tiktok/users/019b2137-f76e-7b33-9437-26044fa7b1ed/posts/01a0631e-f0df-7e9d-a09b-d84bc31d3834/medias/cover.jpg", "video_url": "https://smr-images-b.bzine.co/tiktok/users/019b2137-f76e-7b33-9437-26044fa7b1ed/posts/01a0631e-f0df-7e9d-a09b-d84bc31d3834/medias/origin.mp4", "images": [], "hashtags": [], "mentions": [], "transcript": null } ] } ``` #### MCP 呼び出しとして ```json { "name": "solari_catalog_tiktok_content_batch", "arguments": { "post_ids": [ "01a0631e-f0df-7e9d-a09b-d84bc31d3834" ] } } ``` #### 注意点 - SOLARI の投稿 id だけを受けます。数字の video id は content detail の video_id に渡してください。 - TikTok の投稿 id と Instagram の投稿 id は互換しません。 #### 関連ツール - [`solari_catalog_tiktok_content_detail`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-content-detail.md?lang=ja) - [`solari_catalog_tiktok_content_search`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-content-search.md?lang=ja) ### solari catalog tiktok content search > TikTok のキャプションと動画の文字起こしを検索するときに使います。 - **CLI**: `solari catalog tiktok content search` - **MCP ツール**: `solari_catalog_tiktok_content_search` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 KR、JP、US、TW で追跡中の TikTok 投稿をキーワードで探します。だいたい直近 6 ヶ月です。 **どんなときに使うか** — ある話題の TikTok 投稿や、画面で話している内容がほしいときに使います。 **何が返るか** — 関連の高い順の投稿です。当たった文言はハイライトされます。 #### パラメータ - `query` (string, 必須) — 探す語句。 - `region` (enum, 任意, 既定値 "KR") — KR、JP、US、TW。 値: `KR`, `JP`, `US`, `TW`. - `limit` (integer, 任意, ≥ 1) — 1ページあたりの件数。 - `offset` (integer, 任意, 既定値 0, ≥ 0) — 先頭から何件飛ばすか。 - `since` (string, 任意, pattern ^\d{4}-\d{2}-\d{2}$) — この UTC 日付以降の投稿だけ (YYYY-MM-DD)。 - `until` (string, 任意, pattern ^\d{4}-\d{2}-\d{2}$) — この UTC 日付以前の投稿だけ (YYYY-MM-DD)。 #### レスポンス ##### `Response` - `query / region` (string) — 適用した query と国。 - `total` (integer) — 一致した総数。10,000 までは正確で、そこから先は止まります。 - `took_ms` (integer) — 検索時間。 - `items` (object[]) — ヒットです。スコアの高い順です。 ##### `items[]` - `post_id / video_id / url` (string) — 投稿の識別子と公開リンク。 - `account_id / username` (string) — 投稿したアカウント。 - `caption` (string) — キャプション。 - `user_bio` (string) — 投稿者の Bio。 - `transcription_text` (string | null) — 音声の文字起こし。検索対象テキストの一部です。 - `transcription_language` (string | null) — 文字起こしの言語コード。 - `post_type` (string) — video または carousel。 - `posted_at` (timestamp) — 投稿日時(UTC)。 - `duration_seconds` (integer) — 動画の長さ。 - `play_count / like_count / comment_count / share_count / collect_count` (integer) — エンゲージメント。 - `follower_count` (integer) — 投稿者のフォロワー数。 - `is_ad` (boolean) — TikTok 自身の広告フラグ。 - `cover_url` (string) — カバー画像。 - `score` (number) — 関連度スコア。 - `highlight` (object) — フィールドごとの一致箇所。 #### 例 ```console $ solari catalog tiktok content search query="올리브영 세일" limit=3 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "query": "올리브영 세일", "region": "KR", "total": 4041, "took_ms": 29, "items": [ { "post_id": "01a05c46-9a08-7e92-a40e-b1a039103118", "video_id": "7679484556189207815", "url": "https://www.tiktok.com/@flos_bonita/video/7679484556189207815", "account_id": "0196cb39-87a7-7be3-ac4a-4a80b7818a90", "username": "flos_bonita", "caption": "태닝한 산리오 키링이라니…☀️🥹💗 푸드올로지 X 산리오 콜라보 실물 너무 귀엽잖아!! 헬로키티·쿠로미·한교동·마이멜로디까지🎀 제품마다 다른 키링이라 산리오 덕후들 취향 제대로 저격💘 올영 세일 시작했으니 얼른 구경해봐요👀🛒 #푸드올로지 #태닝키티 #올리브영추천템 #올영세일", "user_bio": "화미 프로필 링크", "transcription_text": "살리오 덕후라면 절대 그냥 넘길 수 없는 영상 오늘부터 시작인 올리브영 세일과 함께 푸드올로지와 살리오 콜라보 나왔어요 이번 콜라보는 젤리 폼 앰플 젤리 3 종으로 피디아렌 앰플 젤리 글루타치원 씨 앰플 젤리 히알루론산 앰플 젤리까지 제품마다 귀여운 살리오 굿즈도 함께 만나 볼 수 있는데 헬로키티 크로미 한교동부터 마이 멜로디까지 저는 역시 헬로키티 더 쿠답게 키티 키링으로 폼구 최애 캐릭터 …", "transcription_language": "ko", "post_type": "video", "posted_at": "2026-08-29T16:02:22Z", "duration_seconds": 37, "play_count": 955, "like_count": 26, "comment_count": 0, "share_count": 0, "collect_count": 5, "follower_count": 1345, "is_ad": true, "cover_url": "https://p16-common-sign.tiktokcdn-eu.com/tos-alisg-p-0037/oEu4VAolaEBAAYjMAjBtiyCIAABiPp9TOCAME~tplv-tiktokx-origin.image?dr=10395&x-expires=1788426000&x-signature=FAP0C10M1M1gEwD4YMB03pYd0YA%3D&t=4d5b0474&ps=13740610&sh …", "score": 53.787056, "highlight": { "caption": [ "헬로키티·쿠로미·한교동·마이멜로디까지🎀 제품마다 다른 키링이라 산리오 덕후들 취향 제대로 저격💘 올 세일 시작했으니 얼른 구경해봐요👀🛒 #푸드올로지 #태닝키티 #올리브영추천템 #올영세일" ], "user_bio": [], "transcription_text": [ "살리오 덕후라면 절대 그냥 넘길 수 없는 영상 오늘부터 시작인 올리브 세일과 함께 푸드올로지와 살리오 콜라보 나왔어요 이번 콜라보는 젤리 폼 앰플 젤리 3 종으로 피디아렌 앰플 젤리 글루타치원 씨 앰플 젤리 히알루론산 앰플 젤리까지 제품마다 귀여운 살리오 굿즈도 함께", "… 1 more" ] } }, "… 2 more" ] } ``` #### MCP 呼び出しとして ```json { "name": "solari_catalog_tiktok_content_search", "arguments": { "query": "올리브영 세일", "limit": 3 } } ``` #### 注意点 - offset の上限は 9,800 です。もっと見るなら日付を狭めてやり直してください。 - total は 10,000 まで数えて、そこから先は止まります。 #### 関連ツール - [`solari_insight_tiktok_content_aggregate`](https://finder-dev-pub.bzine.co/docs/tools/insight-tiktok-content-aggregate.md?lang=ja) - [`solari_catalog_tiktok_content_batch`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-content-batch.md?lang=ja) - [`solari_catalog_instagram_content_search`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-content-search.md?lang=ja) ### solari insight tiktok content aggregate > TikTok の投稿数を数えるときに使います。 - **CLI**: `solari insight tiktok content aggregate` - **MCP ツール**: `solari_insight_tiktok_content_aggregate` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 アカウント、形式、ハッシュタグ、メンション、キーワードごとに TikTok 投稿数を足します。 **どんなときに使うか** — 投稿ペース、ハッシュタグの比重、平均再生が必要なときに使います。投稿そのものは content search です。 **何が返るか** — グループごとの件数です。大きいグループが先に来ます。ほかの指標は頼んだものだけ入ります。 #### パラメータ - `region` (enum, 任意, 既定値 "KR") — KR、JP、US、TW。 値: `KR`, `JP`, `US`, `TW`. - `group_by` (enum, 任意) — 件数の分け方。 値: `account`, `post_type`, `hashtag`, `mention`, `caption_keyword`. - `interval` (enum, 任意) — この暦の間隔で時系列を付けます。 値: `day`, `week`, `month`. - `metrics` (string[], 任意) — post_count 以外に欲しい指標。 値: `like_sum`, `like_avg`, `comment_sum`, `comment_avg`, `view_sum`, `view_avg`, `share_sum`, `share_avg`, `collect_sum`, `collect_avg`, `follower_avg`, `account_count`. - `query` (string, 任意) — キャプションと文字起こしで探すキーワード。 - `usernames` (string[], 任意) — これらの TikTok ユーザー名だけ。 - `hashtags` (string[], 任意) — これらのハッシュタグをすべて持つ投稿だけ。 - `mentions` (string[], 任意) — これらのユーザー名をすべてメンションした投稿だけ。 - `post_types` (string[], 任意) — これらの形式だけ。 値: `video`, `carousel`. - `since` (string, 任意, pattern ^\d{4}-\d{2}-\d{2}$) — この UTC 日付以降の投稿だけ (YYYY-MM-DD)。 - `until` (string, 任意, pattern ^\d{4}-\d{2}-\d{2}$) — この UTC 日付以前の投稿だけ (YYYY-MM-DD)。 - `limit` (integer, 任意, ≥ 1) — 返すグループの数。 #### レスポンス ##### `Response` - `region` (string) — 集計した国。 - `since` (date) — 実際に使った開始日。 - `until` (date | null) — 実際に使った終了日。 - `group_by` (string | null) — 適用したグループ化。 - `interval` (string | null) — 適用した時間間隔。 - `total_posts` (integer) — フィルタに一致した投稿。 - `truncated` (boolean) — limit より多くのグループがあったとき true。 - `buckets` (object[]) — グループです。大きい順です。 ##### `buckets[]` - `key` (string) — グループの値。group_by を省略すると、合計が 1 つだけです。 - `metrics.post_count` (integer) — 投稿数。常に入ります。 - `metrics.like_sum / like_avg` (number | null) — いいねの合計と平均。頼んだときだけ入ります。 - `metrics.comment_sum / comment_avg` (number | null) — コメントの合計と平均。頼んだときだけ入ります。 - `metrics.view_sum / view_avg` (number | null) — 再生数の合計と平均。頼んだときだけ入ります。 - `metrics.share_sum / collect_sum` (number | null) — シェアと保存の合計。頼んだときだけ入ります。 - `metrics.follower_avg` (number | null) — 投稿者の平均フォロワー数。 - `metrics.account_count` (integer | null) — グループ内のユニークアカウント数。 - `series` (object[] | null) — 期間ごとの内訳。interval を付けたとき。 #### 例 ```console $ solari insight tiktok content aggregate group_by=account query="이니스프리" metrics='["view_sum","like_avg","account_count"]' limit=5 ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "region": "KR", "since": "2026-03-04", "until": null, "group_by": "account", "interval": null, "total_posts": 20, "truncated": true, "buckets": [ { "key": "merryview_", "metrics": { "post_count": 2, "like_sum": null, "like_avg": 2378.5, "comment_sum": null, "comment_avg": null, "view_sum": 179504, "view_avg": null, "share_sum": null, "share_avg": null, "collect_sum": null, "collect_avg": null, "follower_avg": null, "account_count": 1 }, "series": null }, { "key": "_kimdayun_", "metrics": { "post_count": 1, "like_sum": null, "like_avg": 1829, "comment_sum": null, "comment_avg": null, "view_sum": 102000, "view_avg": null, "share_sum": null, "share_avg": null, "collect_sum": null, "collect_avg": null, "follower_avg": null, "account_count": 1 }, "series": null }, "… 3 more" ] } ``` #### MCP 呼び出しとして ```json { "name": "solari_insight_tiktok_content_aggregate", "arguments": { "group_by": "account", "query": "이니스프리", "metrics": [ "view_sum", "like_avg", "account_count" ], "limit": 5 } } ``` #### 注意点 - view_* は再生数です。share_* と collect_* は Instagram と違い値が入ります。 - KR、JP、US、TW のだいたい直近 6 ヶ月です。それより古い since は切り詰められます。 #### 関連ツール - [`solari_catalog_tiktok_content_search`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-content-search.md?lang=ja) - [`solari_insight_instagram_content_aggregate`](https://finder-dev-pub.bzine.co/docs/tools/insight-instagram-content-aggregate.md?lang=ja) ### solari fetch instagram account > Ingest one Instagram handle into the catalog. - **CLI**: `solari fetch instagram account` - **MCP ツール**: `solari_fetch_instagram_account` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 Add one Instagram account to the SOLARI catalog by exact username. This is not a search. If it is already stored, nothing is scraped. **どんなときに使うか** — When catalog search does not know an exact handle you already have. **何が返るか** — Whether it was ingested, the account_id, and the catalog command to read it. #### パラメータ - `username` (string, 必須, ≤ 64 chars) — Instagram username. #### レスポンス ##### `Response` - `ingested` (boolean) — true if this call collected it live. - `already_tracked` (boolean) — true if it was already in the catalog. - `fetched_on_demand` (boolean) — Same as ingested. - `account_id` (uuid) — The ingested account. - `username` (string) — Resolved handle. - `note` (string) — What to expect next. - `next` (string) — Catalog command to read the result. #### 例 ```console $ solari fetch instagram account username=innisfreeofficial ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "ingested": false, "already_tracked": true, "fetched_on_demand": false, "account_id": "018cabce-14cc-7544-8890-7811ec33ef74", "username": "innisfreeofficial", "note": "Already in the SOLARI catalog. Nothing was scraped.", "next": "solari catalog instagram account profile username=innisfreeofficial" } ``` #### MCP 呼び出しとして ```json { "name": "solari_fetch_instagram_account", "arguments": { "username": "innisfreeofficial" } } ``` #### 注意点 - Do not use this to search a name. Use catalog account search first. - A first-time ingest can take several seconds. Metrics and collaborations stay empty until the crawl finishes. #### 関連ツール - [`solari_catalog_instagram_account_search`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-account-search.md?lang=ja) - [`solari_catalog_instagram_account_profile`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-account-profile.md?lang=ja) - [`solari_fetch_instagram_posts`](https://finder-dev-pub.bzine.co/docs/tools/fetch-instagram-posts.md?lang=ja) ### solari fetch instagram posts > Collect one Instagram account's posts into the catalog. - **CLI**: `solari fetch instagram posts` - **MCP ツール**: `solari_fetch_instagram_posts` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 Collect posts for one Instagram account into the SOLARI catalog by exact username. This is not a post listing. If the handle is already stored, nothing is scraped. **どんなときに使うか** — When catalog posts does not know an exact handle you already have. **何が返るか** — Whether it was ingested, how many posts came back, and the catalog command to read them. #### パラメータ - `username` (string, 必須, ≤ 64 chars) — Instagram username. #### レスポンス ##### `Response` - `ingested` (boolean) — true if this call collected it live. - `already_tracked` (boolean) — true if it was already in the catalog. - `fetched_on_demand` (boolean) — Same as ingested. - `found` (boolean) — false if the handle could not be collected. - `account_id` (uuid) — The ingested account. - `username` (string) — Resolved handle. - `total` (integer) — Posts available so far. - `note` (string) — What to expect next. - `next` (string) — Catalog command to read the result. #### 例 ```console $ solari fetch instagram posts username=innisfreeofficial ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "ingested": false, "already_tracked": true, "fetched_on_demand": false, "found": true, "account_id": "018cabce-14cc-7544-8890-7811ec33ef74", "username": "innisfreeofficial", "total": 12, "note": "Already in the SOLARI catalog. Nothing was scraped.", "next": "solari catalog instagram account posts username=innisfreeofficial" } ``` #### MCP 呼び出しとして ```json { "name": "solari_fetch_instagram_posts", "arguments": { "username": "innisfreeofficial" } } ``` #### 注意点 - Do not use this to list stored posts. Use catalog instagram account posts for that. - A first-time ingest can take several seconds. Only recent posts exist until the crawl finishes. #### 関連ツール - [`solari_fetch_instagram_account`](https://finder-dev-pub.bzine.co/docs/tools/fetch-instagram-account.md?lang=ja) - [`solari_catalog_instagram_account_posts`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-account-posts.md?lang=ja) - [`solari_catalog_instagram_account_search`](https://finder-dev-pub.bzine.co/docs/tools/catalog-instagram-account-search.md?lang=ja) ### solari fetch tiktok account > Ingest one TikTok handle into the catalog. - **CLI**: `solari fetch tiktok account` - **MCP ツール**: `solari_fetch_tiktok_account` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 Add one TikTok account to the SOLARI catalog by exact username. This is not a search. If it is already stored, nothing is scraped. **どんなときに使うか** — When catalog search does not know an exact handle you already have. **何が返るか** — Whether it was ingested, the account_id, and the catalog command to read it. #### パラメータ - `username` (string, 必須, ≤ 64 chars) — TikTok username. #### レスポンス ##### `Response` - `ingested` (boolean) — true if this call collected it live. - `already_tracked` (boolean) — true if it was already in the catalog. - `fetched_on_demand` (boolean) — Same as ingested. - `account_id` (uuid) — The ingested account. - `username` (string) — Resolved handle. - `note` (string) — What to expect next. - `next` (string) — Catalog command to read the result. #### 例 ```console $ solari fetch tiktok account username=innisfree_official ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "ingested": false, "already_tracked": true, "fetched_on_demand": false, "account_id": "01a0631e-f0df-7e9d-a09b-d84bc31d3834", "username": "innisfree_official", "note": "Already in the SOLARI catalog. Nothing was scraped.", "next": "solari catalog tiktok account profile username=innisfree_official" } ``` #### MCP 呼び出しとして ```json { "name": "solari_fetch_tiktok_account", "arguments": { "username": "innisfree_official" } } ``` #### 注意点 - Do not use this to search a name. Use catalog account search first. - A first-time ingest can take 10 to 40 seconds. Only recent posts exist until the crawl finishes. #### 関連ツール - [`solari_catalog_tiktok_account_search`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-account-search.md?lang=ja) - [`solari_catalog_tiktok_account_profile`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-account-profile.md?lang=ja) - [`solari_fetch_tiktok_posts`](https://finder-dev-pub.bzine.co/docs/tools/fetch-tiktok-posts.md?lang=ja) ### solari fetch tiktok posts > Collect one TikTok account's posts into the catalog. - **CLI**: `solari fetch tiktok posts` - **MCP ツール**: `solari_fetch_tiktok_posts` - **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。 - **Required plan**: Free - **Credit**: 0 Collect posts for one TikTok account into the SOLARI catalog by exact username. This is not a post listing. If the handle is already stored, nothing is scraped. **どんなときに使うか** — When catalog posts does not know an exact handle you already have. **何が返るか** — Whether it was ingested, how many posts came back, and the catalog command to read them. #### パラメータ - `username` (string, 必須, ≤ 64 chars) — TikTok username. #### レスポンス ##### `Response` - `ingested` (boolean) — true if this call collected it live. - `already_tracked` (boolean) — true if it was already in the catalog. - `fetched_on_demand` (boolean) — Same as ingested. - `found` (boolean) — false if the handle could not be collected. - `account_id` (uuid) — The ingested account. - `username` (string) — Resolved handle. - `total` (integer) — Posts available so far. - `note` (string) — What to expect next. - `next` (string) — Catalog command to read the result. #### 例 ```console $ solari fetch tiktok posts username=innisfree_official ``` _読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_ ```json { "ingested": false, "already_tracked": true, "fetched_on_demand": false, "found": true, "account_id": "01a0631e-f0df-7e9d-a09b-d84bc31d3834", "username": "innisfree_official", "total": 12, "note": "Already in the SOLARI catalog. Nothing was scraped.", "next": "solari catalog tiktok account posts username=innisfree_official" } ``` #### MCP 呼び出しとして ```json { "name": "solari_fetch_tiktok_posts", "arguments": { "username": "innisfree_official" } } ``` #### 注意点 - Do not use this to list stored posts. Use catalog tiktok account posts for that. - A first-time ingest can take 10 to 40 seconds. Only recent posts exist until the crawl finishes. #### 関連ツール - [`solari_fetch_tiktok_account`](https://finder-dev-pub.bzine.co/docs/tools/fetch-tiktok-account.md?lang=ja) - [`solari_catalog_tiktok_account_posts`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-account-posts.md?lang=ja) - [`solari_catalog_tiktok_account_search`](https://finder-dev-pub.bzine.co/docs/tools/catalog-tiktok-account-search.md?lang=ja)