GnistAI GnistAI
Log in

Reddit

Search Reddit posts, browse subreddits, and read comments. Find discussions, opinions, and community insights on any topic.

Overview   |   MCP   |   REST API   |   OpenAPI   |   CLI   |   Tutorial   |   Toolkits   |   Home
status: healthy status status healthy healthy tools: 5 tools tools 5 5 type: api wrapper type type api wrapper api wrapper lifecycle: maintained lifecycle lifecycle maintained maintained Media

Data source: Reddit (reddit.com)

MCP Endpoint (Streamable HTTP) https://context.gnist.ai/mcp/reddit/
Authentication

All requests require a Gnist-API-Key header (or api_key query parameter).

Free tier: 100 calls/day. Get your API key.

Tools (5)

search_reddit

Search 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.

ParameterTypeRequiredDescription
querystringrequiredSearch terms (e.g. "machine learning", "Python async"). Searches across post titles and body text.
subredditanyoptionalRestrict search to a specific subreddit (e.g. "python", "MachineLearning"). Optional.
sortstringoptionalSort order: relevance, hot, top, new, comments. Default: relevance. (default: "relevance")
time_filterstringoptionalTime filter: hour, day, week, month, year, all. Default: all. (default: "all")
limitintegeroptionalNumber of results (1-25, default 10). (default: 10)
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "search_reddit",
    "arguments": {
      "query": "example"
    }
  }
}
get_subreddit_posts

Get posts from a specific subreddit sorted by hot, new, top, or rising.

Returns:
Dictionary with 'count' and 'posts' list.

ParameterTypeRequiredDescription
subredditstringrequiredSubreddit name without r/ prefix (e.g. "python", "worldnews", "AskReddit").
sortstringoptionalSort: hot, new, top, rising, controversial. Default: hot. (default: "hot")
time_filterstringoptionalTime filter for top/controversial: hour, day, week, month, year, all. (default: "day")
limitintegeroptionalNumber of posts (1-25, default 10). (default: 10)
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "get_subreddit_posts",
    "arguments": {
      "subreddit": "example"
    }
  }
}
get_subreddit_info

Get 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.

ParameterTypeRequiredDescription
subredditstringrequiredSubreddit name without r/ prefix (e.g. "python", "worldnews").
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "get_subreddit_info",
    "arguments": {
      "subreddit": "example"
    }
  }
}
get_reddit_post_comments

Get 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.

ParameterTypeRequiredDescription
post_idstringrequiredReddit post ID (the short alphanumeric ID, e.g. "1abc2d").
sortstringoptionalSort: top, best, new, controversial, old, qa. Default: top. (default: "top")
limitintegeroptionalNumber of comments (1-50, default 10). (default: 10)
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "get_reddit_post_comments",
    "arguments": {
      "post_id": "example"
    }
  }
}
report_feedback

Report 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'.

ParameterTypeRequiredDescription
feedbackstringrequired
feedback_typestringoptional (default: "general")
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "report_feedback",
    "arguments": {
      "feedback": "example"
    }
  }
}

Quick Start

Shell
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"}}}'
Python
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())

Related Toolkits (Media)

Resources