Reddit MCP Server — Claude, ChatGPT, Cursor, Codex avatar

Reddit MCP Server — Claude, ChatGPT, Cursor, Codex

Pricing

from $20.00 / 1,000 mcp tool calls

Go to Apify Store
Reddit MCP Server — Claude, ChatGPT, Cursor, Codex

Reddit MCP Server — Claude, ChatGPT, Cursor, Codex

Native Reddit MCP server for AI agents. 7 Reddit tools (search, subreddits, posts+comments, users, trending) over Streamable HTTP. Works with Claude Desktop, Cursor, ChatGPT, OpenAI Codex, Agents SDK, Windsurf. No Reddit API key. Pay per tool call.

Pricing

from $20.00 / 1,000 mcp tool calls

Rating

0.0

(0)

Developer

deusex machine

deusex machine

Maintained by Community

Actor stats

0

Bookmarked

16

Total users

11

Monthly active users

4 days ago

Last modified

Share

Reddit MCP Server — Native Model Context Protocol for Claude, ChatGPT, Cursor and Codex

Useful? Leave a review — it takes 10 seconds and is the single biggest thing that helps other AI engineers and agent builders find this Reddit MCP server.

Give Claude Desktop, ChatGPT, Cursor, OpenAI Codex, the OpenAI Agents SDK, Windsurf, Continue.dev, Zed, n8n, LangChain, LlamaIndex and any other MCP-compatible agent a production Reddit toolbox — no Reddit API key, no local process, no npx middleware running on the user's laptop, no OAuth dance. Seven first-class Reddit tools are exposed over the Model Context Protocol (MCP) using Streamable HTTP, hosted on Apify Standby. You connect once via URL, your agent discovers every tool automatically, and you pay only for successful tool calls. Read the official MCP specification for background.

This is a native MCP server, not a wrapper or proxy. Real JSON-RPC 2.0 over HTTP POST at /mcp, protocol version 2025-06-18. The underlying scraper has been in production against old.reddit.com since 2024 with residential proxies and a stealth-hardened browser — so the transport changed, but the reliability did not.

What this Reddit MCP server does

Given an MCP client (Claude Desktop, Cursor, ChatGPT, Codex, Windsurf, LangChain, a custom agent, anything) and a URL, this actor turns Reddit into a typed, callable toolbox. The agent sends tools/list on first connect, discovers the seven Reddit tools, and then calls tools/call with a structured argument object whenever it wants to search Reddit, pull a subreddit listing, fetch a post with full comments, profile a user, look up subreddit metadata or discover trending communities.

Every Reddit fetch is performed inside Apify's container, through a residential-proxy-routed stealth browser targeting old.reddit.com's JSON endpoints. Images, fonts, CSS and media are blocked at the request-interception layer so each page load is only the JSON payload. The response is transformed into a flat, documented JSON shape — one level of nesting, ISO 8601 timestamps, no undefined vs null ambiguity — before being handed back to the agent as an MCP content block.

No Reddit developer account. No OAuth app. No refresh-token rotation. No 100-request-per-minute official-API ceiling.

✨ Why use this scraper

  • Native MCP, not a wrapper. Real JSON-RPC 2.0 over HTTP POST at /mcp. No extra proxy process, no Smithery adapter, no npx dependency to keep updated on every end-user machine.
  • No Reddit API key required. Reddit tightened free-tier access and killed many third-party clients in 2023. This actor talks to Reddit's publicly-accessible JSON endpoints instead, over residential IPs, so your agent is not gated by the official API quota.
  • Built for agents, not dashboards. Tool schemas are strict, responses are flat, field names are stable. An LLM can reason over the response in one pass and cite post IDs, permalinks and author handles without hallucinating URLs.
  • Pay-per-tool-call. $0.02 per successful tool call. No subscription, no seat fee. Idle MCP connections cost nothing.
  • No cold start for your users. Apify Standby keeps a warm container alive so tools/call latency is dominated by the Reddit fetch, not Actor boot time.

The 7 Reddit MCP tools

All tools return a single JSON object. Field names match the schemas exposed via tools/list — no undocumented fields, no breaking renames.

1. search_reddit

Global or subreddit-scoped Reddit search.

  • query (string, required)
  • subreddit (string, optional — restricts to one sub, restrict_sr=on)
  • sortrelevance (default), hot, top, new, comments
  • timeFilterhour, day, week, month, year, all (default)
  • limit — 1–250, default 25

2. get_subreddit_posts

Fetch a listing from a subreddit with pagination handled automatically.

  • subreddit (string, required) — with or without the r/ prefix
  • sorthot (default), new, top, rising, controversial
  • timeFilter — applies when sort is top or controversial
  • limit — 1–250, default 25

3. get_post_with_comments

Fetch a single Reddit post plus the entire flattened comment tree. Reddit has no server-side depth cap — this tool enforces it via commentLimit.

  • postId (string) — with or without the t3_ prefix
  • subreddit (string, recommended when using postId)
  • url (string, optional) — full Reddit URL, overrides postId + subreddit when set
  • commentSortconfidence (default), top, new, controversial, old, qa
  • commentLimit — 0–500, default 100 (0 means unlimited up to 500)

4. get_user_posts

Submissions by a user.

  • username (string, required)
  • sortnew (default), hot, top, controversial
  • timeFilter — applies when sort is top or controversial
  • limit — 1–250, default 25

5. get_user_comments

Comments by a user, each enriched with the parent post title and permalink for context.

  • username (string, required)
  • sortnew (default), hot, top, controversial
  • timeFilter — applies when sort is top or controversial
  • limit — 1–500, default 25

6. get_subreddit_info

Metadata for a subreddit: description, subscribers, active users, creation date, submission rules, NSFW flag, icon, banner.

  • subreddit (string, required)

7. get_trending_subreddits

Discover popular, new or default subreddits.

  • categorypopular (default), new, default
  • limit — 1–100, default 25

🎯 Use cases

  • Research assistants — Build a Claude or ChatGPT workflow that takes a topic, searches multiple subreddits, pulls full comment trees, clusters the arguments and returns a cited summary. search_reddit + get_post_with_comments is the whole backend.
  • Sentiment tracking on your product — Set up a scheduled agent that monitors r/startups, r/saas, r/selfhosted and your brand's dedicated sub for mentions, pulls the thread context, and files tickets when something looks like churn risk.
  • Social listening for marketers — Feed a nightly agent the prompt "what did /r/ProductManagement discuss this week" and let it produce a digest with clickable permalinks.
  • Lead intelligence for B2B sales — Profile a Reddit user your prospect mentions, read their last 12 months of comments, and draft a pre-call brief — without ever leaving Cursor.
  • Moderation and compliance tooling — Agents that scan flagged threads, quote the context, and draft responses for human review.
  • Dataset builders for ML teams — Combine search_reddit + get_post_with_comments in a LangChain or LlamaIndex pipeline to assemble fine-tuning datasets (text + metadata) for domain-specific LLMs.

How to connect this Reddit MCP server

Your MCP endpoint is:

https://makework36--reddit-mcp-server.apify.actor/mcp?token=APIFY_TOKEN

Replace APIFY_TOKEN with a personal API token (read scope is enough). The server also accepts the token in an Authorization: Bearer <token> header — that is sometimes cleaner if your MCP client supports arbitrary headers.

What follows are copy-paste configs for each major MCP client.

🚀 How to use

Edit ~/Library/Application Support/Claude/claude_desktop_config.json on macOS or %APPDATA%\Claude\claude_desktop_config.json on Windows:

{
"mcpServers": {
"reddit": {
"url": "https://makework36--reddit-mcp-server.apify.actor/mcp?token=APIFY_TOKEN"
}
}
}

Restart Claude Desktop. Then ask: "What is trending on r/technology today? Include the top comments on the highest-scoring post." Claude will discover and call the tools automatically.

One-liner:

$claude mcp add reddit https://makework36--reddit-mcp-server.apify.actor/mcp?token=APIFY_TOKEN

Or drop the same JSON block into ~/.claude.json under mcpServers. Claude Code inherits the MCP server for every project.

Settings → MCPAdd new MCP server:

{
"mcpServers": {
"reddit": {
"url": "https://makework36--reddit-mcp-server.apify.actor/mcp?token=APIFY_TOKEN"
}
}
}

Reload Cursor, open an empty composer tab, and ask Cursor to "search r/ClaudeAI for opinions on Opus 4.7 vs Sonnet 4.6 and summarize the top 10 posts of the last month." Cursor will discover the tools and stream the results back inline.

~/.codeium/windsurf/mcp_config.json:

{
"mcpServers": {
"reddit": {
"serverUrl": "https://makework36--reddit-mcp-server.apify.actor/mcp?token=APIFY_TOKEN"
}
}
}

Open SettingsBeta Features → enable Custom Connectors (MCP), then add a connector:

  • Name: Reddit
  • URL: https://makework36--reddit-mcp-server.apify.actor/mcp?token=APIFY_TOKEN

ChatGPT will expose the 7 tools as function calls under a single connector.

Codex CLI supports MCP servers via ~/.codex/config.toml:

[mcp_servers.reddit]
url = "https://makework36--reddit-mcp-server.apify.actor/mcp?token=APIFY_TOKEN"

Restart Codex and the tools will show up in the command palette.

Python:

from agents.mcp import MCPServerStreamableHttp
reddit = MCPServerStreamableHttp(
name="reddit",
params={"url": "https://makework36--reddit-mcp-server.apify.actor/mcp?token=APIFY_TOKEN"},
)
# pass `reddit` into Agent(mcp_servers=[reddit])

TypeScript:

import { MCPServerStreamableHttp } from "@openai/agents";
const reddit = new MCPServerStreamableHttp({
name: "reddit",
url: "https://makework36--reddit-mcp-server.apify.actor/mcp?token=APIFY_TOKEN",
});

Reference the MCP server as a tool in your Assistants API call:

{
"type": "mcp",
"server_url": "https://makework36--reddit-mcp-server.apify.actor/mcp?token=APIFY_TOKEN",
"server_label": "reddit"
}

~/.continue/config.yaml:

mcpServers:
- name: reddit
type: streamable-http
url: https://makework36--reddit-mcp-server.apify.actor/mcp?token=APIFY_TOKEN

~/.config/zed/settings.json:

{
"context_servers": {
"reddit": {
"command": null,
"url": "https://makework36--reddit-mcp-server.apify.actor/mcp?token=APIFY_TOKEN"
}
}
}

Use the MCP Client Tool node. Set the endpoint URL to the actor's /mcp URL with your token as the query parameter, select the tool to invoke, map the input fields from the previous node. No custom credential type required.

from langchain_mcp_adapters.client import MultiServerMCPClient
client = MultiServerMCPClient({
"reddit": {
"transport": "streamable_http",
"url": "https://makework36--reddit-mcp-server.apify.actor/mcp?token=APIFY_TOKEN",
}
})
tools = await client.get_tools()

All seven Reddit MCP tools are now available to any LangChain agent, graph or chain.

curl -s https://makework36--reddit-mcp-server.apify.actor/mcp?token=APIFY_TOKEN \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Useful for debugging, CI smoke tests or building your own MCP client from scratch. Read the JSON-RPC 2.0 spec for wire-level details.

💻 Code examples

Real prompts that route through multiple tools without human orchestration:

  • "Research what r/LocalLLaMA thinks about running Llama 4 locally. Summarize the top 5 threads of the past week with the most upvoted counterargument in each."search_reddit + get_post_with_comments ×5
  • "Find Reddit discussions comparing Cursor and a rival coding-agent IDE, pull the top comments, produce a sentiment breakdown with quotes."search_reddit + get_post_with_comments
  • "Profile Reddit user spez over the past year: submission patterns, subreddits they comment in, controversial takes."get_user_posts + get_user_comments
  • "Which new subreddits from the past month are worth watching for startup signal?"get_trending_subreddits + get_subreddit_info ×N
  • "What is blowing up on r/news in the last hour? Give me the post with the most polarized comments."get_subreddit_posts (sort=new, timeFilter=hour) + get_post_with_comments (sort=controversial)

Because the tools return structured JSON, the agent can cite post IDs, permalinks, author handles and timestamps verbatim — no hallucinated URLs.

📋 Output example

A truncated response from get_post_with_comments:

{
"post": {
"id": "1abc234",
"subreddit": "LocalLLaMA",
"title": "Running Llama 4 on a Mac Studio M3 Ultra",
"author": "some_user",
"score": 1240,
"upvoteRatio": 0.96,
"createdAt": "2026-04-18T14:22:11.000Z",
"permalink": "https://www.reddit.com/r/LocalLLaMA/comments/1abc234/...",
"selftext": "After a week of tuning, I got Llama 4 70B running at 22 tok/s on the M3 Ultra..."
},
"comments": [
{
"id": "jxyz98",
"parentId": "t3_1abc234",
"author": "llm_pro",
"score": 420,
"createdAt": "2026-04-18T14:40:02.000Z",
"body": "22 tok/s on 70B is wild. What quantization?",
"depth": 0
}
],
"scrapedAt": "2026-04-22T10:01:02.118Z"
}

All timestamps are ISO 8601. Field names are stable across versions.

💵 Pricing

$0.02 per successful tool call. That is the entire pricing model.

  • initialize, tools/list, ping and notifications are free — only the events that actually hit Reddit cost money.
  • Failed tool calls (Reddit 404, rate-limit, network error after retries) are not billed.
  • Long idle MCP connections (the agent loaded the server but did not call anything yet) cost nothing.
  • Standby compute and residential proxy bandwidth are included — no separate line items.

Plan guidance

Apify planRecommended forNotes
FREE (trial credit)First-time evaluation, personal AI agents~$5 credit → ~250 tool calls to evaluate
STARTERPersonal agents, side projects, research botsMonthly credit + proxy bandwidth included
SCALEProduction agents, moderate-traffic SaaSHigher concurrency, more proxy bandwidth
BUSINESSEnterprise agent products, internal tools at scaleSLAs, priority support
ENTERPRISE / DIAMONDLarge AI companies, LLM labs, high-volume agent platformsDedicated resources, custom terms

Comparison you should actually do: price a DIY setup (Reddit OAuth app, rotating datacenter proxies to survive 429s, a server to host an MCP bridge, monitoring, refresh-token rotation) against $0.02 per answered question. For most agent workloads this actor saves weeks of setup and tens of dollars a month in proxy bills.

Token-level cost is a rounding error: even a heavy research agent making 500 Reddit calls per day lands at $10/day. Most assistants burn 10–50 calls per session, i.e. $0.20–$1.00.

📊 Comparison

Several Reddit integrations exist for AI agents. Here is how this native MCP server stacks up on the dimensions that matter most in production. All alternatives are anonymized because pricing models and transport layers change frequently.

FeatureThis MCP serverOfficial Reddit API + OAuth appReddit scraper with residential proxyLocal npx Reddit MCP bridge
Setup time30 seconds (paste URL)Hours (OAuth app + refresh tokens)Minutes (key + proxy config)Minutes (install, update, restart)
Reddit API key requiredNoYesUsually noSometimes
TransportStreamable HTTP + JSON-RPC 2.0RESTREST / customLocal stdio
Works on Claude, Cursor, ChatGPT, Codex, Windsurf, Zed, LangChain, n8nYes — all of themNo — you must wrap itNo — you must wrap itClaude Desktop only or limited
Rate limitsNo per-minute ceiling100 req/min (free tier)Depends on proxy quotaDepends on proxy quota
Residential proxy includedYesNoOptional, extra costOptional, extra cost
Cold start per sessionWarm container (Standby)N/AWarm-up depends on hostDepends on local machine
Pay-per-success billingYes ($0.02/call, failures free)Free but gated by quotaTypically per scrapeTypically flat
Output shape stable across versionsYes (documented schemas)YesVariesVaries
Comment tree flattening and depth capYes (commentLimit)ManualManualManual
Works with OpenAI Assistants / Agents SDKYesRequires wrapperRequires wrapperNo (stdio only)

The honest take: if you already have a Reddit OAuth app, production proxy infrastructure and an MCP bridge you maintain, keep using it. If you want an MCP server you can hand to any AI client with a single URL, this one is the fastest path.

Architecture notes

For readers who care about the stack under the hood:

  • Transport. JSON-RPC 2.0 over HTTP POST. Batching supported. notifications/initialized returns 202 Accepted. Protocol version 2025-06-18.
  • Runtime. Apify Standby mode. Node.js 20 on apify/actor-node-puppeteer-chrome:20. Chrome + puppeteer-extra with the stealth plugin.
  • Fetch layer. Requests hit a warm Puppeteer browser against old.reddit.com. Images, fonts, CSS and media are blocked at the request-interception layer, so each page load is only the JSON response body.
  • Proxy. RESIDENTIAL Apify Proxy by default, with a graceful fallback to the default Apify Proxy group. Reddit aggressively 403s datacenter IPs, so residential is non-negotiable for reliability.
  • Retry policy. 3 attempts per fetch. 404 short-circuits (propagated as a tool error). 403 / 5xx rotates the browser session and retries.
  • Response shape. Every tool returns one JSON object. All timestamps are ISO 8601 strings. No null vs undefined ambiguity. Text fields that can be huge (selftext, comment body, subreddit description) are sliced to sane caps so the response fits comfortably in a 200 KB LLM context window.

❓ FAQ

Do I need a Reddit account or a Reddit API key? No. This MCP server fetches Reddit's public JSON endpoints using residential IPs. No OAuth, no developer app, no refresh tokens.

Is scraping Reddit legal? This server accesses only publicly visible data — the same content any user sees on reddit.com. We do not bypass logins, quarantined-community warnings or private communities. As with any scraping, consult legal counsel for your specific use case and jurisdiction.

What MCP clients are officially supported? Claude Desktop, Claude Code, Cursor, ChatGPT Desktop (Custom Connectors), OpenAI Codex CLI, OpenAI Agents SDK (Python and TypeScript), OpenAI Assistants API, Windsurf / Codeium, Continue.dev, Zed, n8n, LangChain and LlamaIndex via their respective MCP adapters. Any MCP client that speaks Streamable HTTP + JSON-RPC 2.0 will work.

What is the MCP protocol version? 2025-06-18. The server advertises this in its initialize response.

How fresh is the data? Real-time. Every tools/call hits Reddit live. Nothing is cached between calls unless your client adds its own caching.

Can I combine this with other MCP servers? Yes. MCP clients are designed to host multiple servers simultaneously — Reddit, your file system, your database, a web search server, and this one. Each server has its own tool namespace.

What happens if Reddit changes its HTML? The server parses Reddit's JSON endpoints, not HTML. JSON contract changes are much rarer than HTML changes. When they do happen, the actor is updated without breaking your MCP client — just retry.

Can I whitelist specific tools per user? Not at the server level in v1. Enforce it in your agent: give the agent a system prompt that allowlists the subset of tools you want exposed.

Do you support rate-limiting per caller? Rate limits are enforced by Apify Standby itself (per-actor concurrency) and by Apify's proxy rotation. If you need stricter per-user quotas, add an API gateway or proxy in front of the MCP URL.

Do you have related scrapers for other social platforms? Yes. See Related scrapers — same account publishes scrapers for Trustpilot, Airbnb, Booking.com, flights and hotels.

📝 Changelog

  • v1.0.0 (2026-04-21) — Initial public release. Apify Standby MCP server over Streamable HTTP. JSON-RPC 2.0, protocol version 2025-06-18. Seven Reddit tools: search_reddit, get_subreddit_posts, get_post_with_comments, get_user_posts, get_user_comments, get_subreddit_info, get_trending_subreddits. Residential proxy, stealth Puppeteer against old.reddit.com JSON endpoints. Pay-per-event pricing at $0.02 per successful tool call.

📞 Support