Reddit (RSS)

io.github.jorgen-k由 GitHub 账号 jorgen-k 发布v1.2.1更新于 Oct 27, 2026

Read Reddit from local MCP-compatible clients (Claude Code, Codex, etc.) via public RSS feeds.

概览

AI 生成的概览

本地 MCP 服务器,让助手通过公开 RSS 源读取 Reddit:浏览子版块、阅读帖子和评论、搜索帖子,无需 API 密钥。

可以做什么
  • 按关键词搜索 Reddit 帖子,可限定子版块,并支持排序与时间筛选
  • 浏览子版块的热门、最新、最高分、上升或争议帖子
  • 完整读取单个帖子及其评论(评论为平铺列表)
  • 获取其他 Reddit 源形式,如用户页、多版块组合和域名列表
适用场景
适合在 Claude Code、Codex 或 ChatGPT Desktop 等本地客户端中,让助手获取真实的 Reddit 讨论、社区动态或帖子内容,而无需注册应用或持有 Reddit 凭据。
运行要求
以 PyPI 包 reddit-rss-mcp 通过 stdio 在本地运行;README 要求机器上装有 uv(uvx),由 uv 处理 Python 与依赖。未声明账号、API 密钥、环境变量或请求头。需要能访问 Reddit 的公开源。
安装前请注意
仅只读公开内容,但 Reddit 对未认证 RSS 限流较严,请求可能变慢或在重试后失败。不提供分数、点赞比例和评论数。搜索只覆盖帖子标题和正文,不含评论文本,最新帖子可能有延迟。设置 REDDIT_MCP_ALLOW_ANY_URL=1 会让抓取工具超出 Reddit 主机范围。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Reddit (RSS),将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

reddit-mcp

Read Reddit from local MCP-compatible clients, including Claude Code, Codex, and ChatGPT Desktop, without an API key. No app registration, no account.

Reddit's data API is effectively closed. New apps need a stated moderation use case and manual approval, anonymous .json access is blocked, and the free tier that third-party tools were built on is gone. Most "Reddit for LLMs" integrations now start with a credentials dance you can't complete.

Reddit still publishes public Atom/RSS feeds for every subreddit, thread, user and search. This small local MCP server makes those feeds available as tools to compatible clients: browse a subreddit, read a thread and its comments, search across the site.

Those feeds are published to be fetched, which is why this keeps working. It reads a supported path in a format frozen since 2005, so there is no markup to break when Reddit ships its next redesign.

What you don't get: scores, upvote ratios, comment counts. Those exist only in the gated API, and nothing here fakes them. Titles, authors, timestamps, and the full text of posts and comments all come through.

Install

reddit-rss-mcp is on PyPI (the plain reddit-mcp name belongs to an unrelated project). You need uv on your machine; it handles Python and dependencies itself, and there is nothing else to set up.

Claude Code:

sh
claude mcp add reddit --scope user -- uvx reddit-rss-mcp

Verify with claude mcp get reddit or claude mcp list. If Claude Code cannot find uvx, use its absolute path (which uvx) instead of the bare command.

Codex CLI:

sh
codex mcp add reddit -- uvx reddit-rss-mcp

Verify with codex mcp list. To use a local checkout instead, run:

sh
codex mcp add reddit -- uv --directory "$(pwd)" run server.py

Codex also supports a project-scoped .codex/config.toml, but this repository does not include one because it would configure and launch the server automatically for every trusted checkout.

ChatGPT Desktop: it shares MCP configuration with Codex, so the Codex command above also installs Reddit for ChatGPT Desktop. Restart the ChatGPT app, then use /mcp to see the connected server. You can also add it in Settings → MCP servers → Add server, choose STDIO, and enter uvx reddit-rss-mcp.

ChatGPT Work on the web: it does not read your local MCP configuration. It uses plugins and their remote MCP tools instead.

Claude Desktop, one click: download reddit-rss-mcp.mcpb from the latest release, then double-click it, drag it into Claude Desktop, or choose Settings → Extensions → Advanced settings → Install Extension. No JSON editing or absolute paths. (It runs uvx reddit-rss-mcp, so uv still needs to be on your PATH.)

Claude Desktop, manual local-server configuration: add this to ~/Library/Application Support/Claude/claude_desktop_config.json, using the absolute path from which uvx (the app doesn't inherit your shell PATH):

json
{  "mcpServers": {    "reddit": {      "command": "/absolute/path/to/uvx",      "args": ["reddit-rss-mcp"]    }  }}

If the file already has other top-level keys, add mcpServers alongside them rather than overwriting the file. Then:

  1. Fully quit the app (Cmd+Q, not just closing the window). The running app rewrites this file, so an edit made while it's open can be discarded.
  2. Relaunch. It may take a couple of restarts before the server registers.
  3. Grant permission when the app prompts to run the server.

Cowork: install the .mcpb bundle above through Claude Desktop Extensions. Cowork does not load local servers from claude_desktop_config.json, so use the bundle rather than the manual configuration.

Tools

ToolWhat it does
search_reddit(query, subreddit=None, sort="relevance", time_filter="all", limit=25)Search Reddit discussions for real user opinions and experiences on a topic.
browse_subreddit(subreddit, sort="hot", time_filter="day", limit=25)What a community is posting right now (hot/new/top/rising/controversial).
get_post(url, comment_limit=50)One thread in full: the post plus its comments (a flat list; the reply tree isn't in the feed).
fetch_json(url)The remaining Reddit feed shapes: /user/<name>, multireddits, /domain/<site>.

fetch_json is deliberately not a general web fetcher. URLs on other hosts are refused unless you start the server with REDDIT_MCP_ALLOW_ANY_URL=1, so an unrelated fetch tool doesn't sit in the client's tool list waiting to be picked at the wrong moment.

Other ways to install

As a plugin

The plugin/ directory is a plugin in the format Claude Code, Codex and RK share: it runs uvx reddit-rss-mcp, the latest release. It is in a subdirectory rather than at the repository root so that opening this repository in Claude Code does not offer to start the server. RK lists it in its built-in marketplace; any marketplace can list it with a git-subdir source:

json
{ "name": "reddit", "source": { "source": "git-subdir", "url": "jorgen-k/reddit-mcp", "path": "plugin" } }

From GitHub (latest main, no clone)

To run unreleased changes, point uvx at the repo and the reddit-rss-mcp entry point. Append @vX.Y.Z (or any tag) to pin a release instead of tracking main:

sh
claude mcp add reddit --scope user -- uvx --from git+https://github.com/jorgen-k/reddit-mcp reddit-rss-mcpcodex mcp add reddit -- uvx --from git+https://github.com/jorgen-k/reddit-mcp reddit-rss-mcp

From a local clone

Prefer this if you want to edit the code:

sh
git clone https://github.com/jorgen-k/reddit-mcp.gitcd reddit-mcpclaude mcp add reddit --scope user -- uv --directory "$(pwd)" run server.pycodex mcp add reddit -- uv --directory "$(pwd)" run server.py

For Claude Desktop, use the same config file as above, with absolute paths from which uv and pwd:

json
{  "mcpServers": {    "reddit": {      "command": "/absolute/path/to/uv",      "args": ["--directory", "/absolute/path/to/reddit-mcp", "run", "server.py"]    }  }}

Updating after a code change

The server is a long-lived process, spawned once when the client connects. Editing server.py does not hot-reload it; the running process keeps the old code until it's restarted.

  • Claude Code: run /mcp, select reddit, and reconnect it (or restart Claude Code).
  • Codex CLI: start a new Codex session. Use codex mcp list to confirm the configured server.
  • ChatGPT Desktop: select Restart in Settings → MCP servers, or quit and relaunch the app.
  • Claude Desktop or Cowork: fully quit the app (Cmd+Q) and relaunch.

Limits worth knowing

Read-only, public content only. Be considerate with request volume; these are public feeds.

No scores, vote counts, or comment counts. RSS doesn't carry them. For those you need Reddit's Data API, which now requires a moderation use case and approval.

Rate limiting. Reddit throttles unauthenticated RSS aggressively. On an HTTP 429 the server retries with backoff, honoring the Retry-After header when present and otherwise sleeping roughly 2, 4, 8, 16, 32, 64, 128 seconds (plus jitter) across up to 7 retries. It also keeps a minimum gap between outbound requests to avoid tripping the limit in the first place. All tools share this.

Search is only as good as Reddit's search. search_reddit uses Reddit's own search engine; RSS is just the output format, so results match the website, not a separate weaker index. That engine has real limits:

  • It doesn't search comment text, only post titles and bodies (and community names). A term that appears only in a comment won't be found.
  • Very new posts lag, because indexing isn't instant. To catch brand-new posts reliably, use browse_subreddit(sort="new").
  • It isn't exhaustive. Low-relevance results get dropped or buried.

So "no results" means Reddit's search didn't surface it, not that it was never posted.

License

MIT. See LICENSE.

来源:README.md,提交 0a0ee8f

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

2
  1. v1.2.1最新Sep 29, 2026
  2. v1.1.5Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分