solari instagram content aggregate
Count posts instead of listing them — by account, format, hashtag, mention, or keyword.
- MCP tool
- solari_instagram_content_aggregate
- CLI
- solari instagram content aggregate
- Access
- solari:readWorks with any signed-in SOLARI account.Works with any signed-in SOLARI account.
Overview
Counts and engagement rollups over tracked posts, for questions answered by numbers rather than by individual posts: posts per account per month, which hashtags dominate a topic, average likes by format. Group by account, post_type, hashtag, mention, caption_keyword, or transcription_keyword, and optionally split each group by day, week, or month. post_count always comes back; request metrics for like/comment/view sums and averages, mean follower count, and distinct account counts. Narrow the set with a free-text query, usernames, hashtags, mentions, or post_types. Filtering by mentions and grouping by account answers which accounts tagged a given handle. Coverage: regions KR, JP, US, and TW, holding roughly the most recent 6 months — a since older than that is clamped and the applied value is echoed back. Buckets are largest-first; truncated=true means more groups existed than limit returned. Use solari_instagram_content_search when the posts themselves are needed instead of counts. Works with any signed-in SOLARI account.
When to use it — Numeric questions: posts per account per month, which hashtags dominate a topic, average likes by format.
What comes back — Per-group counts and engagement rollups, largest group first.
Parameters
- regionenumoptional
- Region to aggregate. Only these four regions are indexed.default
"KR"ValuesKRJPUSTW - group_byenumoptional
- Dimension to group by. Omit to aggregate the whole filtered set into a single total bucket.Values
accountpost_typehashtagmentioncaption_keywordtranscription_keyword - intervalenumoptional
- Calendar interval to split by. Alone it returns one bucket per period; combined with group_by each group carries a series.Values
dayweekmonth - metricsstring[]optional
- Extra metrics beyond post_count, which is always returned. Metric values are snapshots and can lag live counts.Values
like_sumlike_avgcomment_sumcomment_avgview_sumview_avgfollower_avgaccount_count - querystringoptional
- Free-text filter matched against captions, creator bios, and video transcriptions.
- usernamesstring[]optional
- Restrict to these Instagram handles.
- hashtagsstring[]optional
- Restrict to posts carrying every one of these hashtags.
- mentionsstring[]optional
- Restrict to posts that tag every one of these handles. Pair with group_by=account to rank the accounts tagging a given handle.
- post_typesstring[]optional
- Restrict to these post formats.
- sincestringoptional
- Only posts on or after this UTC date, YYYY-MM-DD inclusive. Defaults to 183 days ago, which is also the earliest accepted bound.pattern ^\d{4}-\d{2}-\d{2}$
- untilstringoptional
- Only posts on or before this UTC date, YYYY-MM-DD inclusive.pattern ^\d{4}-\d{2}-\d{2}$
- limitintegeroptional
- Maximum groups returned when group_by is set, default 20. Values above 50 are clamped to 50.≥ 1
Response
Response
- regionstring
- Region the aggregation ran over.
- sincedate
- Start date actually applied. A request older than the retention window is clamped and echoed back here.
- untildate | null
- End date actually applied.
- group_bystring | null
- Grouping dimension applied.
- intervalstring | null
- Calendar interval applied.
- total_postsinteger
- Posts matching the filters. Can differ from the sum of bucket counts when groups overlap.
- truncatedboolean
- true when more groups existed than limit returned.
- bucketsobject[]
- One entry per group, largest first.
buckets[]
- keystring
- The group value — handle, hashtag, format, and so on. A single total bucket when group_by is omitted.
- metrics.post_countinteger
- Post count. Always returned.
- metrics.like_sum / like_avgnumber | null
- Like total and mean. Only when requested via metrics.
- metrics.comment_sum / comment_avgnumber | null
- Comment total and mean.
- metrics.view_sum / view_avgnumber | null
- View total and mean.
- metrics.share_sum / collect_sumnumber | null
- TikTok-only metrics; always null on Instagram.
- metrics.follower_avgnumber | null
- Mean follower count of the authoring accounts.
- metrics.account_countinteger | null
- Distinct accounts in the group.
- seriesobject[] | null
- Per-period breakdown, present when interval is set.
Example
Request
$ solari instagram content aggregate group_by=hashtag query="이니스프리" metrics='["like_avg","view_sum","account_count"]' limit=5Response · Long strings and repeated array entries are trimmed for readability.
{
"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"
]
}As an MCP call
{
"name": "solari_instagram_content_aggregate",
"arguments": {
"group_by": "hashtag",
"query": "이니스프리",
"metrics": [
"like_avg",
"view_sum",
"account_count"
],
"limit": 5
}
}Notes
- post_count always comes back. Everything else is null unless named in metrics.
- Filtering by mentions and grouping by account answers "which accounts tagged this handle?".
- The index covers KR, JP, US, and TW over roughly the most recent 6 months. since defaults to — and bottoms out at — 183 days ago; an older value is clamped and the applied value is echoed back.
- interval alone returns one bucket per period; combined with group_by, each group carries a series.
- When the posts themselves are the answer, use content search.
Related tools
- solari_instagram_content_searchKeyword search across captions, creator bios, and video transcriptions.
- solari_tiktok_content_aggregateCount TikTok posts instead of listing them.
Machine-readable: /docs/tools/instagram-content-aggregate.md