Data source: Reddit (reddit.com)
https://context.gnist.ai/mcp/reddit/
AuthenticationAll requests require a Gnist-API-Key header (or api_key query parameter).
Free tier: 100 calls/day. Get your API key.
Tools (5)
search_redditSearch Reddit posts by keyword, optionally within a specific subreddit.
Returns:
Dictionary with 'count' and 'posts' list. Each post has id, title,
author, subreddit, url, permalink, selftext, score, upvote_ratio,
num_comments, created_utc, is_self, link_flair_text.
| Parameter | Type | Required | Description |
|---|---|---|---|
query | string | required | Search terms (e.g. "machine learning", "Python async"). Searches across post titles and body text. |
subreddit | any | optional | Restrict search to a specific subreddit (e.g. "python", "MachineLearning"). Optional. |
sort | string | optional | Sort order: relevance, hot, top, new, comments. Default: relevance. (default: "relevance") |
time_filter | string | optional | Time filter: hour, day, week, month, year, all. Default: all. (default: "all") |
limit | integer | optional | Number of results (1-25, default 10). (default: 10) |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "search_reddit",
"arguments": {
"query": "example"
}
}
}get_subreddit_postsGet posts from a specific subreddit sorted by hot, new, top, or rising.
Returns:
Dictionary with 'count' and 'posts' list.
| Parameter | Type | Required | Description |
|---|---|---|---|
subreddit | string | required | Subreddit name without r/ prefix (e.g. "python", "worldnews", "AskReddit"). |
sort | string | optional | Sort: hot, new, top, rising, controversial. Default: hot. (default: "hot") |
time_filter | string | optional | Time filter for top/controversial: hour, day, week, month, year, all. (default: "day") |
limit | integer | optional | Number of posts (1-25, default 10). (default: 10) |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "get_subreddit_posts",
"arguments": {
"subreddit": "example"
}
}
}get_subreddit_infoGet metadata about a subreddit — name, description, subscribers, active users, etc.
Returns:
Subreddit info: name, title, description, subscribers, active_users,
created_utc, over18, url, subreddit_type.
| Parameter | Type | Required | Description |
|---|---|---|---|
subreddit | string | required | Subreddit name without r/ prefix (e.g. "python", "worldnews"). |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "get_subreddit_info",
"arguments": {
"subreddit": "example"
}
}
}get_reddit_post_commentsGet a Reddit post and its top-level comments by post ID.
Returns:
Dictionary with 'post' (full post data) and 'comments' list.
Each comment has id, author, body, score, created_utc, depth.
| Parameter | Type | Required | Description |
|---|---|---|---|
post_id | string | required | Reddit post ID (the short alphanumeric ID, e.g. "1abc2d"). |
sort | string | optional | Sort: top, best, new, controversial, old, qa. Default: top. (default: "top") |
limit | integer | optional | Number of comments (1-50, default 10). (default: 10) |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "get_reddit_post_comments",
"arguments": {
"post_id": "example"
}
}
}report_feedbackReport a bug, feature request, or general feedback for this data source.
Use this when something doesn't work as expected, when you'd like
a new feature, or when you have suggestions for improvement.
Args:
feedback: Describe the issue or suggestion.
feedback_type: One of 'bug', 'feature_request', or 'general'.
| Parameter | Type | Required | Description |
|---|---|---|---|
feedback | string | required | |
feedback_type | string | optional | (default: "general") |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "report_feedback",
"arguments": {
"feedback": "example"
}
}
}Quick Start
curl -X POST "https://context.gnist.ai/mcp/reddit/" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "Gnist-API-Key: YOUR_API_KEY" \
-d '{"jsonrpc": "2.0", "method": "tools/call", "id": 1, "params": {"name": "search_reddit", "arguments": {"query": "example"}}}'
import httpx
resp = httpx.post(
"https://context.gnist.ai/mcp/reddit/",
headers={"Gnist-API-Key": "YOUR_API_KEY", "Content-Type": "application/json"},
json={
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "search_reddit",
"arguments": {
"query": "example"
}
}
},
)
print(resp.json())