Social Media App
Social Media App The Social Media app exposes normalized post/comment retrieval and topic search across social platforms. is for known profiles/pages. is for...
[T:documentation.sender_name]
Social Media App
The Social Media app exposes normalized post/comment retrieval and topic search
across social platforms. get-posts is for known profiles/pages. search is for
topic discovery across supported platforms.
Current Providers
reddit_jsonfetches subreddit JSON listings, search results, and optional post comments through provider-managed Webshare residential proxies.reddit_rssremains as a low-volume fallback when JSON access fails.- It is read-only and does not post, vote, message users, or automate account actions.
- It returns normalized posts and comments for manual review workflows.
- Callers should fetch comments only for relevant posts and respect Reddit’s
x-ratelimit-*headers. bluesky_publicfetches profile feeds and post search results through the official Bluesky AppView APIs.- Bluesky profile feeds use
app.bsky.feed.getAuthorFeedand require no API key. - Bluesky replies use
app.bsky.feed.getPostThreadand hydrate direct replies into the normalizedcommentsfield when requested. - Bluesky topic search uses
app.bsky.feed.searchPosts. It first tries the public AppView and can use authenticated PDS requests when credentials are configured. - Store Bluesky credentials via the normal
SECRET__*migration convention:SECRET__BLUESKY__IDENTIFIERandSECRET__BLUESKY__APP_PASSWORDmigrate tokv/data/providers/blueskyasidentifierandapp_password. mastodon_publicfetches public account statuses, instance-local status search results, and status contexts through unauthenticated Mastodon instance APIs.- Mastodon
get-postsaccepts profile URLs or account IDs inuser@instanceformat. Replies are fetched from/api/v1/statuses/{id}/contextand may be incomplete because each instance only knows federated content it has received. - Mastodon
searchuses/api/v2/search?type=statuses, searchesmastodon.socialby default, and accepts extra public instances viamastodon_instances. When status search is empty, it falls back to the public tag timeline for the normalized query (for exampleopen source->#opensource). Results are instance-local and depend on each server’s public search configuration.
Request Modes
get-postsis for one or multiple specific pages/profiles. Callers passplatformandpagefor each requested source. Mastodon pages must include an instance, for exampleGargron@mastodon.socialorhttps://mastodon.social/@Gargron.searchis for finding recent public posts around a topic. Callers passplatformandquery, with optional provider filters such as Blueskyauthoror Mastodonmastodon_instances.- Mastodon broad search is intentionally instance-scoped rather than global;
mastodon.socialis always searched first and extra instances can be added when the user names communities to include. - Bluesky topic search may require an authenticated session in some environments;
configure the Vault/env credentials above when unauthenticated search returns
403.
Reddit Sorting and Filters
get-postssupports Reddit listing sorts:new,hot,rising,top, andcomments.commentsuses subreddit-restricted JSON search withsort=commentsand defaults totime_range=weekwhen no time range is set.searchsupports Reddit search sorts:relevance,hot,top,new,comments, andlatest(latestmaps to Redditnew).- Reddit time filters are enum-backed:
hour,day,week,month,year, andall. - Reddit comment sorts are enum-backed:
confidence,top,new,controversial, andold. The default istop, and returned comments are locally ordered by public upvotes/score before being capped. - Client-side filters include
min_score,min_comments,exclude_stickied,exclude_nsfw,include_self_posts, andinclude_link_posts. - Reddit comments are capped to at most 5 per post embed.
- Social post titles, post bodies, and comment bodies are treated as hostile external content and pass through the same prompt-injection sanitizer used for video transcripts before embed data is stored or sent to the model.