list_posts
mcp:readread-only
List the workspace's social posts with their approval state, one page at a time. Use filter.status (e.g. pending_approval, scheduled) and filter.scheduledFrom / filter.scheduledTo to find pending or upcoming posts.
Returns { items, page, limit, total, hasMore }: limit is posts per page (default 25, max 100) and page is 1-based; when hasMore is true, call again with page + 1. total is the count of all posts matching the filter.
Input
pageinteger1-based page number. Use with limit; hasMore says whether another page exists.
min 1 · default
1limitintegerPosts per page, 1-100 (default 25).
min 1 · max 100 · default
25sortBystringone of
scheduledForUtc,createdAt,status,platform· default"scheduledForUtc"sortDirstringone of
asc,desc· default"asc"filterobjectdefault
{}Fields
platformstringstatusstringsocialAccountIdstringtagIdstringscheduledFromstringscheduledTostring
filterOpobjectdefault
{}Fields
platformstringone of
eq,instatusstringone of
eq,insocialAccountIdstringone of
eqtagIdstringone of
eq,inscheduledFromstringone of
gtescheduledTostringone of
lte
Permission
Needs the mcp:read scope: view your workspace. It only reads, so assistants can call it without asking.
Example call
Your assistant sends this for you. It is shown so you can see the shape of a call, with placeholder values for the required fields.
{ "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "list_posts", "arguments": {} }}Same action over the REST API
The tool runs GET /v1/orgs/{orgId}/marketing/posts as the signed-in user, with the same validation, approval rules and limits. See it in the Posts API reference.