Skip to main content
Glama
Reddit Search and Thread Scraper MCP Server

Reddit Search and Thread Scraper MCP Server

Reddit Search and Thread Scraper MCP Server

npm version license

An MCP server for the Mamba Labs Reddit Search and Thread Scraper actor on Apify. Search Reddit by keyword, read subreddits, or read threads with their comments, and get one flat row per post and comment.

What's Inside

Related MCP server: reddit-search

What it does

Each search term runs across all of Reddit or inside each subreddit you list, sorted by new, relevance, top, most comments, or hot. By default a result is kept only when the search term is in the post's title or text, so loosely related results are dropped and not charged. Subreddits with no search term return their newest, hot, top, or rising posts. Thread URLs return the post and its top comments. Each query also returns one free summary row with its counts. Reddit is read through its public feeds; no Reddit account, login, or API key is used.

All of the work runs on Apify. This package is a thin client that starts the actor run, waits for it, and hands back the dataset rows.

Quick start

You need Node.js 18 or newer and an Apify account with an API token.

Add this to your Claude Desktop config (claude_desktop_config.json), Cursor, or any MCP client:

{
  "mcpServers": {
    "mamba-reddit-search-thread-scraper": {
      "command": "npx",
      "args": [
        "-y",
        "@mambalabsdev/mcp-reddit-search-thread-scraper"
      ],
      "env": {
        "APIFY_TOKEN": "your-apify-token"
      }
    }
  }
}

Restart the client. The search_reddit tool appears.

Prerequisites

Example prompts

  • "Find Reddit posts from the last week in r/sales and r/startups that mention cold email."

  • "Pull the top comments from this Reddit thread into a table."

  • "What are people on r/SaaS posting about this month?"

Tool

search_reddit. One tool. Example arguments:

{
  "search_terms": [
    "cold email"
  ],
  "subreddits": [
    "sales"
  ],
  "since_days": 7,
  "max_posts_per_query": 50
}

Inputs

Every buyer facing input of the actor. Omitted inputs take the actor's own defaults.

Input

Type

Required

Description

search_terms

array

no

Keywords to search Reddit for. With subreddits, each term runs inside each subreddit.

subreddits

array

no

Subreddits to search in, or to read when there is no search term.

thread_urls

array

no

Thread URLs to read with their comments, up to 200.

sort

string

no

Search order: new, relevance, top, comments, hot. Default new.

subreddit_sort

string

no

Subreddit read order: new, hot, top, rising. Default new.

time_window

string

no

Reddit's time filter: hour, day, week, month, year, all. Default month.

since_days

integer

no

Drop posts older than this many days.

max_posts_per_query

integer

no

Posts per search or subreddit, up to 1,000. Default 50.

require_term_match

boolean

no

Keep a search result only when the term is in its title or text. Default true.

include_comments

boolean

no

Also return the comments of every post found. Default false.

max_comments_per_thread

integer

no

Comments per thread, top first, up to 500. Default 25.

comment_depth

integer

no

Reply levels under each top level comment, 1 to 10. Default 3.

only_new

boolean

no

Skip posts and comments an earlier run returned for the same query. Default false.

state_key

string

no

Name for the only new results memory.

max_charge_usd

string

no

Optional cost cap for the run.

proxy_mode

string

no

auto or residential. Default auto.

Pricing

Pay per event on Apify, billed to your Apify account. Prices in USD.

Event

Free plan

Bronze

Silver

Gold

post-row, per Reddit post

$0.0015

$0.001425

$0.00135

$0.001275

comment-row, per Reddit comment

$0.0015

$0.001425

$0.00135

$0.001275

apify-actor-start, per run start

$0.003144

$0.003144

$0.003144

$0.003144

Summary rows, refused input, search results without the term, and already delivered rows are free. Mamba Labs pays the platform costs of the run, Apify proxy traffic included.

Full actor documentation

apify.com/mambalabs/reddit-search-thread-scraper

License

MIT. See LICENSE.

Available Tools

1 tool
search_redditSearch Reddit posts and commentsA
Read-onlyIdempotent

Search Reddit by keyword, across all of Reddit or inside chosen subreddits, read the newest posts of subreddits, or read thread URLs with their comments. Returns one flat row per post (title, text, author, subreddit, publish date, post link, outbound link, the search term it matched) and, when asked, one row per comment, plus one free summary row per query. By default a search result is kept only when the search term is in its title or text. Reads Reddit's public feeds; no Reddit login or API key. A run that does not succeed is returned as an error with its run ID. Read-only; requires an APIFY_TOKEN and is billed per post and comment row.

NameRequiredDescriptionDefault
sortNoSearch order. Default new.
only_newNoSkip posts and comments an earlier run returned for the same query (free). Default false.
state_keyNoOptional name for the only new results memory.
proxy_modeNoauto uses the Apify proxy pool with residential as the fallback; residential uses residential addresses for every request. Does not change the price. Default auto.
since_daysNoDrop posts older than this many days.
subredditsNoSubreddit names (sales, r/sales, or a URL). With search terms, the search runs inside them; without, their newest posts are read.
thread_urlsNoReddit thread URLs to read with their comments, up to 200.
time_windowNoReddit's time filter for searches and the top sort. Default month.
search_termsNoKeywords to search Reddit for. With subreddits, each term runs inside each subreddit; without, across all of Reddit.
comment_depthNoReply levels under each top level comment. Default 3.
max_charge_usdNoOptional. The run stops before a charge that would pass this amount.
subreddit_sortNoOrder for subreddit reads with no search term. Default new.
include_commentsNoAlso return the comments of every post found. Default false. Thread URLs always return comments.
require_term_matchNoKeep a search result only when the term is in its title or text. Default true.
max_posts_per_queryNoPosts per search or subreddit. Default 50.
max_comments_per_threadNoComments per thread, top first. Default 25.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations (readOnly, openWorld, idempotent, non-destructive), the description discloses auth requirements (no Reddit login/API key but requires an APIFY_TOKEN), the billing model (charged per post and comment row), failure behavior (unsuccessful run returned as an error with its run ID), and the default filtering rule that discards results whose term is not in title or text. This is exactly the operational context an agent needs before invoking a paid, open-world scraper.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with capabilities, then return shape, then defaults, then auth and billing constraints. For a 16-parameter tool the density is justified and no sentence is filler, though the single dense paragraph is slightly harder to scan than a structured list.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 16 optional parameters and no output schema, the description carries the return-shape burden and does so: it enumerates the post row fields, the comment row behavior, and the free summary row. Auth, cost, and error semantics are also covered, leaving no material gap for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds cross-parameter behavior the schema does not: thread URLs always return comments regardless of include_comments, and results are filtered to term-matching titles/text by default. It does not explain several other parameters such as only_new/state_key memory or max_charge_usd, so it is above baseline but not exhaustive.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names three concrete capabilities with specific verbs and resources: keyword search across Reddit or inside subreddits, reading newest posts of a subreddit, and reading thread URLs with comments. It also states exactly what is returned (one flat row per post with named fields, one row per comment, one free summary row). An agent knows precisely what this tool does and what it produces.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied clearly through parameter-dependent modes: search_terms alone searches all of Reddit, search_terms plus subreddits searches within them, subreddits alone reads newest posts, and thread_urls reads threads with comments. There are no sibling tools and no explicit exclusions or 'do not use when' guidance, so it falls short of a 5, but the mode routing is unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool updatev1.0.0
    • First observedsearch_reddit

TDQS

A4.4/5.0

Scored across 1 tool

Disambiguation4/5

With only one tool in the set, there is no cross-tool ambiguity or risk of misselection. However, that single tool multiplexes several distinct behaviors (keyword search, newest-subreddit browsing, thread+comment retrieval) that must be discriminated via parameters rather than by tool choice, which slightly muddies intent.

Naming Consistency4/5

The name search_reddit follows a clean verb_noun convention and is readable. It only partly advertises the tool's broader roles (subreddit browsing, thread scraping), but consistency itself is trivially satisfied with a single tool.

Tool Count3/5

One tool is thin for a server whose description implies at least three distinct operations (search, browse subreddits, fetch threads with comments). It works as an Apify actor wrapper, but splitting modes into separate tools would make the surface clearer and easier to scope.

Completeness4/5

For a read-only Reddit search/scrape purpose, the surface covers keyword search, subreddit feeds, and thread comments with sensible output shape. Gaps exist around pagination, sorting/date filters, and user-level reads, but core read workflows are addressed.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Enables AI assistants to browse Reddit, search posts, analyze user activity, and fetch comments without requiring API keys. Features smart caching, clean data responses, and optional authentication for higher rate limits.
    5
    2,001 npm
    874
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables searching Reddit posts, fetching subreddit content, and retrieving post comments without requiring an API key. It uses public JSON endpoints to provide seamless access to Reddit data for LLM-based applications.
    6 npm
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to access public Reddit data via JSON endpoints, including subreddit trending posts, keyword search, and post details with comments, without authentication.
    10 npm
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Provides read-only access to public Reddit discussions via official OAuth, with tools to list posts, search subreddits, and retrieve posts and comments.
    4
    31 npm
    MIT