B2B Reddit Conversation Monitor MCP Server
Reads public Reddit feeds to monitor B2B conversations by company, category, or topic. Returns tagged threads and comments with sentiment, intent scores, displacement signals, and summary rows such as share of voice against competitors, most-discussed companies, and recurring question themes.
Posts run results to a Slack-compatible webhook URL, enabling notifications of top Reddit conversation monitoring results.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@B2B Reddit Conversation Monitor MCP ServerAnalyze Reddit sentiment for smartlead.ai vs Instantly in the last 60 days"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
B2B Reddit Conversation Monitor MCP Server
An MCP server for the Mamba Labs B2B Reddit Conversation Monitor actor on Apify. Give it a company domain, product category keywords, or a topic. Each run reads public Reddit feeds and returns tagged threads and comments, plus summary rows: share of voice against competitors, the most discussed companies in a category, or recurring questions grouped by theme.
What's Inside
Related MCP server: Reddit MCP Server
What it does
Three modes:
company: give
company_domain(for example smartlead.ai). You get the threads and comments that name the brand or its competitors, each tagged complaint, praise, comparison, alternative_request, switching, buying_intent, feature_request, or question, with sentiment and a 0 to 100 intent score. A row getsdisplacement_signaltrue when one sentence names a competitor and complains about it, switches from it, or asks for an alternative to it. One company summary row carries mention counts, the sentiment split, share of voice per competitor, and the top complaint themes.category: give
category_keywords(for example cold email tools). You get the threads plus one row per company discussed in two or more threads, with mention counts, sentiment, and share of voice.gap: give
subreddits, atopic, or both. You get the questions people ask (is there a tool for, how do I, alternative to), grouped by theme, with how many went unanswered and which tools the answers named.
Tags, sentiment, and the score are rule based. Blocked or empty results come back free with a row_status saying so. 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-b2b-reddit-conversation-monitor": {
"command": "npx",
"args": [
"-y",
"@mambalabsdev/mcp-b2b-reddit-conversation-monitor"
],
"env": {
"APIFY_TOKEN": "your-apify-token"
}
}
}
}Restart the client. The monitor_reddit_conversations tool appears.
Prerequisites
Node.js 18 or newer.
An Apify API token from console.apify.com/account/integrations, set as
APIFY_TOKEN. The server lists its tool without a token; a call needs one.
Example prompts
"What are people on Reddit saying about smartlead.ai versus Instantly in the last 60 days? Show the displacement signals."
"Which cold email tools get recommended most on Reddit this year?"
"What do people in r/sales and r/LeadGeneration keep asking for that nobody answers?"
Tool
monitor_reddit_conversations. One tool. Example arguments:
{
"mode": "company",
"company_domain": "smartlead.ai",
"brand_names": ["Smartlead"],
"competitors": ["Instantly", "lemlist"],
"since_days": "60"
}Inputs
Every buyer facing input of the actor, unchanged. Omitted inputs take the actor's own defaults. Numbers and booleans are sent as strings.
Input | Type | Description |
| string | company (default), category, or gap |
| string | Company mode. One domain |
| array | Company mode. Up to 50 domains |
| array | Company mode. Names to search for; empty resolves them from the domain |
| array | Company mode. Product names beside the brand |
| array | Company mode. Competitor names; empty discovers them |
| string | true or false. Default true |
| string | 0 to 5. Default 5 |
| string | true runs Mamba Labs Company Identity Resolver when brand_names is empty, charged by Apify at its own price (0.007 USD per domain). Default true |
| array | Category mode. Product lane phrases |
| array | Category and gap modes. Names to always count |
| string | Gap mode. What the questions are about |
| array | Gap mode. More search phrases for the same need |
| array | Limit searches to these subreddits |
| array | Drop rows from these subreddits |
| string | exclude (default) or flag. A vendor's own subreddit is dropped, or kept with |
| string | Gap mode. Default true |
| string | Date window in days. Default 90 |
| string | Thread rows per input, up to 1000. Default 100 |
| string | Comment rows. Default true in company and gap, false in category |
| string | Threads opened for comments. Default 20, 30 in category, 50 in gap |
| string | Default 25 |
| string | Default 2 |
| string | Default false |
| string | Optional cost cap for the run |
| string | Skip rows an earlier run with the same state_key returned. Default false |
| string | Names the seen list |
| string | Optional https URL for a Slack compatible POST |
| string | Default 10 |
| string | 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 |
| $0.0018 | $0.0017 | $0.0016 | $0.0015 |
| $0.001 | $0.00095 | $0.0009 | $0.00085 |
| $0.003 | $0.00285 | $0.0027 | $0.00255 |
| $0.0005 | $0.0005 | $0.0005 | $0.0005 |
Blocked, error, and no results rows, and rows skipped by only_new, are free.
Your keys
The actor needs no key. It reads public Reddit feeds and holds no Reddit key or any other key. Proxy traffic adds nothing to your price: Mamba Labs pays the platform costs of the run. proxy_mode is a reliability setting.
Full actor documentation
apify.com/mambalabs/b2b-reddit-conversation-monitor
License
MIT. See LICENSE.
Available Tools
1 toolmonitor_reddit_conversationsMonitor Reddit conversationsARead-only
Find Reddit conversations about a company, its competitors, a product category, or a topic, read from public Reddit feeds. mode company: give company_domain (for example smartlead.ai) and get thread and comment rows that name the brand or its competitors, each tagged complaint, praise, comparison, alternative_request, switching, buying_intent, feature_request, or question, with sentiment, a 0 to 100 intent score, and a displacement_signal when a competitor draws a complaint, switch, or alternative request, plus one company summary row with share of voice per competitor. mode category: give category_keywords (for example cold email tools) and get the companies discussed most, with mention counts and sentiment. mode gap: give subreddits and or a topic and get recurring questions grouped by theme, with unanswered counts and the tools the answers named. Tags are rule based. Blocked or empty results come back free with a row_status saying so. A run that does not succeed is returned as an error with its run ID. Read-only; requires an APIFY_TOKEN; Apify charges per thread, comment, and summary row returned.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | company (default), category, or gap. | |
| topic | No | Gap mode. What the questions are about. | |
| domains | No | Company mode. Several domains, up to 50. | |
| only_new | No | Skip rows an earlier run with the same state_key returned. Default false. | |
| state_key | No | Names the seen list for only_new. | |
| proxy_mode | No | auto uses the Apify datacenter proxy and moves to residential when Reddit refuses; residential uses residential only. A reliability choice; proxy use adds nothing to the price. Default auto. | |
| since_days | No | Only threads from the last this many days. Default 90. | |
| subreddits | No | Limit searches to these subreddits, without r/. | |
| brand_names | No | Company mode. Names to search for, as the company writes them. Empty: resolved from the domain. | |
| competitors | No | Company mode. Competitor names. Empty: found in the brand threads when discover_competitors is true. | |
| max_threads | No | Thread rows per input, up to 1000. Each thread row is billed. Default 100. | |
| topic_terms | No | Gap mode. More search phrases for the same need. Reddit returns only posts with every word of a query, so a two word topic can be narrow. Up to 10. | |
| webhook_url | No | Optional https URL. One POST at the end with a Slack compatible text field and the top rows. | |
| comment_depth | No | Reply levels read. Default 2. | |
| product_names | No | Company mode. Product names to search for beside the brand. | |
| webhook_top_n | No | Rows in the webhook, 1 to 50. Default 10. | |
| company_domain | No | Company mode. One company domain, for example smartlead.ai. | |
| max_charge_usd | No | Optional. The run stops before any row that would take its charges over this amount. | |
| known_companies | No | Category and gap modes. Names to always count. | |
| max_competitors | No | Company mode. 0 to 5. Default 5. | |
| include_comments | No | Return comments that name the brand, a competitor, or a category company as billed rows. Default true in company and gap modes, false in category mode. | |
| category_keywords | No | Category mode. Product lane phrases, for example cold email tools. | |
| vendor_subreddits | No | A vendor's own subreddit (named after the brand, a competitor, or a company found in the run) is read as marketing. exclude (default) drops those threads; flag keeps them with vendor_subreddit true and out of every count. A subreddit named in subreddits is never treated as one. | |
| exclude_subreddits | No | Drop rows from these subreddits. | |
| discover_subreddits | No | Gap mode. Find up to 8 subreddits from the topic when none are given. Default true. | |
| include_hacker_news | No | Also search Hacker News. Default false. | |
| max_comment_threads | No | Threads opened to read comments, highest intent first. Default 20, 30 in category mode, 50 in gap mode. | |
| discover_competitors | No | Company mode. Find competitors in the brand threads when none are given. Default true. | |
| use_identity_resolver | No | Company mode, when brand_names is empty. true runs Mamba Labs Company Identity Resolver from your account, which Apify charges at its own result price (0.007 USD per domain); false uses the homepage title. Default true. | |
| max_comments_per_thread | No | Comments read per opened thread. Default 25. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint=false and destructiveHint=false, yet the description adds substantial context beyond them: rule-based tagging, free blocked/empty results reported via row_status, failed runs surfaced as errors with a run ID, the APIFY_TOKEN requirement, and per-thread/comment/summary-row billing. This is exactly the extra behavioral detail a caller needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Given 30 parameters and three distinct modes, the length is justified and the purpose is front-loaded before any mode detail. It is dense and would benefit from visual separation of the modes, but every sentence (tags, row_status, error behavior, billing) carries information a caller would otherwise lack.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the return-value burden and does so well: it names the returned row types, the tag taxonomy, sentiment, the 0-100 intent score, displacement_signal, and the company summary row with share of voice. Combined with coverage of auth, billing, and failure behavior, nothing essential for correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 meaning with concrete examples ('smartlead.ai', 'cold email tools') and explains mode-specific relationships (company_domain resolves brand names, competitors are discovered when discover_competitors is true). It does not cover every parameter's semantics, so it lands just above baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening sentence gives a specific verb and resource ('Find Reddit conversations about a company, its competitors, a product category, or a topic') and immediately states the scope ('read from public Reddit feeds'). The three operating modes are each named and tied to a concrete input, so an agent knows exactly what the tool produces without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly routes between the three modes: 'mode company: give company_domain...', 'mode category: give category_keywords...', 'mode gap: give subreddits and or a topic...'. With no sibling tools, mode selection is the only routing decision and it is fully spelled out with examples rather than left to inference.
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 tool update
v1.0.0- First observed
monitor_reddit_conversations
TDQS
Scored across 1 tool
Only one tool exists, so there is no possibility of selecting the wrong tool. Its modes (company, category, gap) are internal parameters rather than separate tools, which keeps the surface unambiguous.
The single tool uses a clear verb_noun snake_case name (monitor_reddit_conversations). There is no competing convention to create inconsistency.
One tool is on the thin end for a monitoring server, though it consolidates three modes (company, category, gap) into a single entry point. Borderline but defensible given the narrow, read-only purpose.
The tool covers the core read paths for company, category, and gap analysis with tagging, sentiment, intent scoring, and share-of-voice. It lacks lifecycle features like scheduled monitoring, alerting, or historical trend comparison, which are minor workarounds for a feed-reading tool.
Maintenance
Related MCP Connectors
Reddit posts, comments, keyword search and historical archives as tools. Runs on Apify.
Find Reddit leads and brand mentions. AI buyer labels and Slack or Notion delivery. $1.50/1k results
Live Reddit and X (Twitter) data: search, threads, users, subreddits, leads and mentions.
Reddit posts, comments, search, users & subreddits as JSON via Apify. No Reddit API key. $2/1k
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables AI agents to search Reddit for posts, comments, and users or monitor for high-intent leads and brand mentions. It functions by delegating scraping tasks to high-performance Apify cloud actors.219 npm7MIT
- AlicenseAqualityBmaintenanceEnables AI assistants to search, browse, and analyze Reddit in real-time via web scraping, including subreddit browsing, post comments, and business opportunity scoring.91MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to research customer voice by searching Reddit and extracting structured comments from supported community platforms via MCP.MIT
- AlicenseAqualityBmaintenanceEnables AI to query Reddit discussion volume trends, growth rates, and top topics for any keyword without hitting Reddit API limits.31MIT