Reddit MCP Server
Reddit MCP Server
一个用于与 Reddit 交互的 Model Context Protocol (MCP) 服务器——获取帖子、评论、用户信息,以及创建内容。
功能一览
功能 | reddit-mcp-server | 其他 Reddit MCP |
创建帖子 | :white_check_mark: | :x: |
回复帖子/评论 | :white_check_mark: | :x: |
编辑帖子/评论 | :white_check_mark: | :x: |
删除帖子/评论 | :white_check_mark: | :x: |
垃圾信息防护(安全模式) | :white_check_mark: | :x: |
机器人披露页脚 | :white_check_mark: | :x: |
内置政策合规 | :white_check_mark: | :x: |
浏览 Subreddit | :white_check_mark: | :white_check_mark: |
搜索 Reddit | :white_check_mark: | :white_check_mark: |
用户分析 | :white_check_mark: | :white_check_mark: |
帖子评论 | :white_check_mark: | :white_check_mark: |
零配置匿名模式 | :white_check_mark: | :white_check_mark: |
三级认证(10/60/100 rpm) | :white_check_mark: | :white_check_mark: |
Related MCP server: Reddit MCP Server
快速开始
选项 1:Claude Desktop 扩展(最简单)
下载并打开扩展文件——Claude Desktop 将自动安装它:
选项 2:NPX(无需安装)
npx reddit-mcp-server或者添加到你的 MCP 配置中(Claude Desktop、Cursor 等):
{
"mcpServers": {
"reddit": {
"command": "npx",
"args": ["reddit-mcp-server"]
}
}
}选项 3:Claude Code
claude mcp add --transport stdio reddit -- npx reddit-mcp-server功能
只读工具
工具 | 描述 |
| 获取特定 Reddit 帖子并附带互动分析 |
| 从 subreddit 或首页信息流获取热门帖子 |
| 按排序方式(hot、new、top、rising、controversial)浏览 subreddit/首页信息流 |
| 获取 Reddit 用户的详细信息 |
| 获取特定用户提交的帖子 |
| 获取特定用户发表的评论 |
| 获取 subreddit 详情和统计数据 |
| 获取当前热门的 subreddit |
| 获取特定帖子的评论并带线程结构 |
| 在 Reddit 上搜索帖子 |
写入工具(需要用户凭据)
工具 | 描述 |
| 在 subreddit 中创建新帖子 |
| 回复现有帖子或评论 |
| 编辑你自己的 Reddit 帖子(仅限文本内容) |
| 编辑你自己的 Reddit 评论 |
| 永久删除你自己的帖子 |
| 永久删除你自己的评论 |
配置
环境变量
变量 | 必填 | 默认值 | 描述 |
| 否* | - | Reddit 应用客户端 ID |
| 否* | - | Reddit 应用客户端密钥 |
| 否 | - | Reddit 用户名(用于写入操作) |
| 否 | - | Reddit 密码(用于写入操作) |
| 否 | 自动生成 | 自定义 User-Agent 字符串 |
| 否 |
| 认证模式: |
| 否 |
| 写入保护: |
| 否 |
| 机器人披露页脚: |
| 否 | 内置 | 自定义机器人页脚文本(当披露设置为 |
| 否 |
| 读取请求的内存缓存: |
| 否 |
| 缓存大小上限(MB)(超出后按 LRU 淘汰) |
| 否 |
| HTTP 429 时按 Retry-After 退避重试次数(设为 |
*仅在使用 authenticated 模式时需要。
完整 MCP 配置示例
{
"mcpServers": {
"reddit": {
"command": "npx",
"args": ["reddit-mcp-server"],
"env": {
"REDDIT_CLIENT_ID": "your_client_id",
"REDDIT_CLIENT_SECRET": "your_client_secret",
"REDDIT_USERNAME": "your_username",
"REDDIT_PASSWORD": "your_password",
"REDDIT_SAFE_MODE": "standard"
}
}
}
}安全模式(垃圾信息防护)
通过内置保护措施,保护你的 Reddit 账户免受垃圾信息检测和封禁。默认启用(standard 模式),符合 Reddit 的 Responsible Builder Policy。
为什么使用安全模式?
Reddit 的垃圾信息检测可能会因以下行为标记账户:
快速发帖或评论
重复或相似内容
在多个 subreddit 发布相同内容
非标准 User-Agent 字符串
安全模式可自动帮助防止这些问题。
模式选项
模式 | 写入延迟 | 重复检测 | 适用场景 |
| 无 | 否 | 仅限明确选择退出 |
| 2 秒 | 最近 10 项 + 跨 subreddit | 默认,推荐 |
| 5 秒 | 最近 20 项 + 跨 subreddit | 适用于谨慎的自动化发帖 |
禁用安全模式
安全模式默认启用。要明确禁用:
export REDDIT_SAFE_MODE=off
npx reddit-mcp-server安全模式的作用
速率限制:在写入操作之间强制执行最小延迟
重复检测:阻止相同内容被发布两次
跨 Subreddit 检测:防止将相同内容发布到多个 subreddit(依据 Reddit 政策)
智能 User-Agent:提供用户名时自动生成符合 Reddit 规范的 User-Agent 格式
机器人披露
Reddit 的 Responsible Builder Policy 要求机器人披露其自动化性质。在所有发布内容上启用自动机器人页脚:
export REDDIT_BOT_DISCLOSURE=auto
npx reddit-mcp-server启用后,页脚将附加到所有帖子、回复和编辑中:
---
🤖 I am a bot | Built with reddit-mcp-server使用 REDDIT_BOT_FOOTER 自定义页脚:
export REDDIT_BOT_DISCLOSURE=auto
export REDDIT_BOT_FOOTER=$'\n\n---\n^(🤖 Custom bot footer text)'认证模式
模式对比
模式 | 速率限制 | 需要设置 | 最适合 |
| ~10 次/分钟 | 无 | 快速测试、只读 |
| 10-100 次/分钟 | 可选 | 灵活使用 |
| 60-100 次/分钟 | 需要 | 生产环境使用 |
匿名模式(零配置)
{
"env": {
"REDDIT_AUTH_MODE": "anonymous"
}
}匿名模式并非在所有网络上都能工作。 Reddit 会阻止来自许多 IP 段的未认证请求——数据中心、云主机、VPN 以及其标记的地址——并以 HTTP 403 阻止页面作为响应。如果遇到这种情况,工具将失败并显示:
Reddit is blocking unauthenticated requests from this network (HTTP 403 with a
block page). Set REDDIT_CLIENT_ID and REDDIT_CLIENT_SECRET to authenticate with
OAuth, which also raises the rate limit from ~10 to 60+ requests/min.解决办法是使用 OAuth 凭据——请参阅下一节。这是你的网络属性,而不是你的 Reddit 账户或所请求的 subreddit 的问题,因此它会同时影响所有工具。如果单个 subreddit 返回 403 而其他正常,则是另一回事:该 subreddit 是私有的或被隔离的。
认证模式(更高速率限制)
在 https://www.reddit.com/prefs/apps 创建一个 Reddit 应用(选择 "script" 类型)
复制客户端 ID 和密钥
配置:
{
"env": {
"REDDIT_AUTH_MODE": "authenticated",
"REDDIT_CLIENT_ID": "your_client_id",
"REDDIT_CLIENT_SECRET": "your_client_secret"
}
}写入操作
要创建帖子、回复、编辑或删除内容,你需要用户凭据:
{
"env": {
"REDDIT_USERNAME": "your_username",
"REDDIT_PASSWORD": "your_password",
"REDDIT_SAFE_MODE": "standard"
}
}开发
命令
pnpm install # Install dependencies
pnpm build # Build TypeScript
pnpm dev # Build and run MCP inspector
pnpm test # Run tests
pnpm lint # Lint code
pnpm format # Format codeCLI 选项
npx reddit-mcp-server --version # Show version
npx reddit-mcp-server --help # Show help
npx reddit-mcp-server --generate-token # Generate OAuth token for HTTP modeHTTP 服务器模式
对于 Docker 部署或基于 Web 的客户端,请使用 HTTP 传输:
TRANSPORT_TYPE=httpStream PORT=3000 node dist/index.js使用 OAuth 保护
export OAUTH_ENABLED=true
export OAUTH_TOKEN=$(npx reddit-mcp-server --generate-token | tail -1)
TRANSPORT_TYPE=httpStream node dist/index.js发起认证请求:
curl -H "Authorization: Bearer $OAUTH_TOKEN" \
-H "Content-Type: application/json" \
-d '{"method":"tools/list","params":{}}' \
http://localhost:3000/mcpDocker
快速开始
# Pull and run
docker pull ghcr.io/jordanburke/reddit-mcp-server:latest
docker run -d \
--name reddit-mcp \
-p 3000:3000 \
-e REDDIT_CLIENT_ID=your_client_id \
-e REDDIT_CLIENT_SECRET=your_client_secret \
-e REDDIT_SAFE_MODE=standard \
ghcr.io/jordanburke/reddit-mcp-server:latestDocker Compose
services:
reddit-mcp:
image: ghcr.io/jordanburke/reddit-mcp-server:latest
ports:
- "3000:3000"
environment:
- REDDIT_CLIENT_ID=${REDDIT_CLIENT_ID}
- REDDIT_CLIENT_SECRET=${REDDIT_CLIENT_SECRET}
- REDDIT_USERNAME=${REDDIT_USERNAME}
- REDDIT_PASSWORD=${REDDIT_PASSWORD}
- REDDIT_SAFE_MODE=standard
- OAUTH_ENABLED=${OAUTH_ENABLED:-false}
- OAUTH_TOKEN=${OAUTH_TOKEN}
restart: unless-stopped本地构建
docker build -t reddit-mcp-server .
docker run -d --name reddit-mcp -p 3000:3000 --env-file .env reddit-mcp-serverReddit Responsible Builder Policy
此服务器在设计时考虑了 Reddit 的 Responsible Builder Policy:
默认开启安全模式 — 速率限制和重复检测防止垃圾信息
跨 subreddit 重复检测 — 阻止跨 subreddit 的相同内容
机器人披露支持 — 可选的自动页脚以实现透明性
无投票/声望操纵 — 有意排除 upvote/downvote 工具
无私信功能 — 有意排除 DM 工具
政策感知的 AI 指令 — MCP 服务器指令提醒 AI 助手注意数据使用限制
致谢
由 Alexandros Lekkas 的 reddit-mcp-server 分叉而来
灵感来自 Arindam200 的 Python Reddit MCP Server
Maintenance
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA specialized MCP server that enables AI agents to interact with Reddit, including reading posts, creating content, and managing subreddit configurations.26810Apache 2.0
- AlicenseAqualityFmaintenanceAn MCP server that enables AI assistants to access and interact with Reddit content through features like user analysis, post retrieval, subreddit statistics, and authenticated posting capabilities.15298MIT
- AlicenseBqualityCmaintenanceAn MCP server that provides both read-only and authenticated access to Reddit content and interactions without requiring a developer API key. It enables users to browse posts, search subreddits, and perform write actions like commenting and voting by leveraging browser session cookies.81The Unlicense
- AlicenseNot gradedqualityDmaintenanceAn MCP server that provides AI agents with full Reddit API capabilities including search, browsing, reading, posting, commenting, voting, editing, and deleting.10MIT
Related MCP Connectors
An MCP server that integrates with Discord to provide AI-powered features.
A MCP server built for developers enabling Git based project management with project and personal…
Markdown-first MCP server for Notion API with 8 composite tools and 39 actions.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/krishna-astrasols/reddit-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server