Topics
Read Topic
read-onlyidempotentopen-worldRead topic metadata and posts. Large post limits can require multiple upstream requests. For moderation queues, prefer reviewable list/detail evidence instead of fanning this tool out across flagged topics.
Parameters
topic_ idintegerrequiredpost_ limitinteger[1, 50]Max posts to return (default 5, max 50)
start_ post_ numberinteger>= 1Start from this post number (1-based)
Read Post
read-onlyidempotentopen-worldRead a specific post. Returns JSON with id, topic_id, post_number, username, created_at, and raw content.
Parameters
post_ idintegerrequiredRead Selected Topic Posts
read-onlyidempotentopen-worldRead exact, earliest, latest, around-post, or username-filtered topic evidence. Selection is bounded to 50 posts and reports the visible stream size without claiming the entire topic was loaded.
Parameters
topic_ idintegerrequiredselection_ modestringlatestearliestpost_idsaround_postusernamesrequiredlimitinteger[1, 50]post_ idsArray<integer>post_ numberintegerusernamesArray<string>replies_ onlybooleanCreate Post
Create a post in a topic. author_username requires a global API key. Returns the actual upstream author so callers can verify attribution.
Parameters
topic_ idintegerrequiredrawstringrequiredauthor_ usernamestringCreate Category
Create a new category. Returns JSON with id, slug, and name.
Parameters
namestringrequiredcolorstringtext_ colorstringemojistringiconstringparent_ category_ idintegerdescriptionstringCreate Topic
Create a new topic. author_username requires a global API key. Returns the actual upstream author so callers can verify attribution.
Parameters
titlestringrequiredrawstringrequiredcategory_ idintegertagsArray<string>author_ usernamestringUpdate Topic
Update an existing topic (title, category, tags, featured_link). Returns JSON with updated topic details.
Parameters
topic_ idintegerrequiredTopic ID to update
titlestringNew title
category_ idintegerMove to category
tagsArray<string>Replace all tags
featured_ linkstring<uri>Featured link URL
original_ titlestringFor conflict detection - expected current title
original_ tagsArray<string>For conflict detection - expected current tags
Update Post
Update the content of an existing post. Returns JSON with updated post details.
Parameters
post_ idintegerrequiredPost ID to update
rawstringrequiredNew post content (markdown)
edit_ reasonstringReason for the edit