social_* — Social posting
The cross-platform social posting tool namespace — accounts and profiles, the draft → approve → publish/schedule flow, post listing and metrics, and comment replies.
The social_* family is a normalized cross-platform posting surface —
the same tools work across providers (provider defaults to meta). The
intended path is draft → approve → publish/schedule, with a built-in
review step. Posts and comment replies are public actions, so the approval gate
exists for a reason.
Accounts & profiles
social_list_accounts(provider="meta")
social_list_profiles(provider="meta", account_id="")
social_list_profiles returns the publishable profiles — the profile_id
values the post tools need.
The draft → approve → publish flow
social_create_post_draft
social_create_post_draft(profile_id, provider="meta", text="", title="",
body="", call_to_action="", link_url="",
hashtags=None, media_urls=None, scheduled_for="",
approval_required=True)
Composes a post and returns a preview plus a review_url where it can be
approved, rejected, or revised. approval_required=True (default) keeps the
human gate in place.
social_get_draft / social_approve_draft
social_get_draft(draft_id, provider="meta")
social_approve_draft(draft_id, provider="meta", approved=True)
Fetch the normalized draft, then approve (or set approved=False to
un-approve).
social_publish_post / social_schedule_post
social_publish_post(provider="meta", draft_id="", profile_id="", approved=False,
text="", title="", body="", call_to_action="",
link_url="", hashtags=None, media_urls=None)
social_schedule_post(publish_at, provider="meta", draft_id="", profile_id="",
approved=False, text="", ...)
Either reference an approved draft_id or pass the content inline.
social_schedule_post requires publish_at (the future time); publish_post
goes out now.
Reading & engagement
social_list_posts(provider="meta", profile_id="", status="", limit=10)
social_get_post_metrics(post_id, provider="meta")
social_list_comments(post_id, provider="meta", limit=25)
social_snapshot(provider="meta", profile_id="", limit=5)
social_snapshot is the quick cross-platform overview; social_get_post_metrics
returns normalized engagement for one post.
social_reply_to_comment
social_reply_to_comment(comment_id, message, provider="meta")
A public reply — same confirm-before-send caution as publishing applies.
Related pages
- Marketing & analytics — GA4 / GSC / GBP performance reads that pair with posting
- Tools — catalog overview and routing rules