bulk_update_reddit_thread_status
bulk_update_reddit_thread_status MCP tool: mark Reddit threads as NEW, COMMENTED or SKIPPED in bulk (up to 50 per call). Per-item errors, member role required.
Updated 2026-04-26
bulk_update_reddit_thread_status
bulk_update_reddit_thread_status lets the agent triage the Reddit outreach queue in a single call. It updates the status field of one or more threads, up to 50 per batch. Three statuses are user-settable: NEW (re-open or reset), COMMENTED (engaged), SKIPPED (dismissed). System-managed statuses (ENRICHING, ENRICHED, DELETED) cannot be set through this tool — they are written by the enrichment pipeline.
When to use
Use it when the user gives a moderation instruction such as "mark all these as skipped, they're off-topic", "I commented on the first three", or "re-open the ones I dismissed last week". It is the right tool for any agent that maintains a clean Reddit outreach queue based on rules (subreddit blocklist, age, score threshold). Pair with list_reddit_threads to fetch the candidates first.
Requires
memberrole minimum,customerrole rejected.
Input
| Field | Type | Description |
|---|---|---|
projectId |
string (CUID) | Project to update. |
updates |
array | 1 to 50 entries. |
updates[].redditPostId |
string (CUID) | Reddit thread to update. |
updates[].status |
enum | NEW, COMMENTED, SKIPPED. |
Response
The response carries updated/failed counts and a per-item results array. Per-item errors do not block the rest of the batch: valid updates still apply, and success flips to false only to flag that at least one item failed. The statusUpdatedAt timestamp is bumped on every successful update.
{
"success": true,
"updated": 2,
"failed": 0,
"results": [
{
"redditPostId": "clxred001",
"status": "success",
"thread": {
"id": "clxred001",
"url": "https://reddit.com/r/SEO/comments/abc123",
"status": "COMMENTED",
"statusUpdatedAt": "2026-04-26T10:15:00.000Z"
}
},
{
"redditPostId": "clxred002",
"status": "success",
"thread": {
"id": "clxred002",
"url": "https://reddit.com/r/smallbusiness/comments/def456",
"status": "SKIPPED",
"statusUpdatedAt": "2026-04-26T10:15:00.000Z"
}
}
]
}
If a redditPostId is invalid or belongs to another project, the entry returns status: "error" with a message and success is set to false for the whole batch. Other valid updates still apply.
Tips and patterns
- Always read
successand the per-itemresults[].statusto detect partial failures. - Batch up to the 50-item limit to minimise round trips. If the list is bigger, paginate.
- Use
SKIPPEDas a soft-dismiss: the thread stays indexed but is hidden from the default list filter (["NEW", "ENRICHED"]). Re-open withNEWif the call was wrong. - After your agent posts a Reddit reply, mark the thread
COMMENTEDso it does not show up in the default queue again. - Setting
ENRICHING,ENRICHEDorDELETEDwill be rejected by the schema — those are written by the enrichment pipeline, not by humans or agents.
Related tools
- list_reddit_threads — fetch the candidates to triage (filter by
status). - enrich_reddit_thread — bring a
NEWthread toENRICHEDbefore deciding. - get_reddit_thread — re-read a single thread after acting on it.