Reddit Buddy Mcp

Reddit Buddy Mcp

🚀 Reddit MCP Buddy

Reddit MCP Buddy是一款专为Claude Desktop和其他AI助手打造的Reddit浏览器。它基于模型上下文协议(MCP),能让AI助手浏览Reddit、搜索帖子并分析用户活动。无需API密钥,使用便捷、响应快速且数据真实可靠。

MCP Compatible License: MIT npm version Node.js Version

🚀 快速开始

针对Claude Desktop

在你的claude_desktop_config.json文件中添加以下内容:

{
"mcpServers": {
"reddit": {
"command": "npx",
"args": ["reddit-mcp-buddy"]
}
}
}

大功告成!现在Reddit MCP Buddy已可在Claude中使用。

✨ 主要特性

  • 🚀 零配置 - 即开即用,无需注册Reddit API。
  • ⚡ 多达10倍的请求量 - 可选的身份验证可提高请求速率限制。
  • 🎯 纯净数据 - 不提供虚假的“情感分析”或编造的指标。
  • 🧠 专为大语言模型优化 - 专门为Claude等AI助手设计。
  • 📦 TypeScript编写 - 完全类型化,可靠且易于维护。

📦 安装指南

交互式身份验证设置(仅用于本地测试)

对于本地开发和测试,你可以交互式地设置身份验证:

npx reddit-buddy --auth

这将提示你输入Reddit应用凭证并将其保存到本地。注意:此方法不适用于Claude Desktop - 请在Claude配置中使用环境变量。

HTTP模式测试

要在终端中直接测试服务器:

# 在端口3000上以HTTP模式运行
npx reddit-mcp-buddy --http

# 或使用自定义端口
REDDIT_BUDDY_PORT=8080 npx reddit-mcp-buddy --http

注意:服务器默认以stdio模式运行(适用于Claude Desktop)。使用--http标志可通过Postman MCP或直接API调用进行测试。

全局安装

npm install -g reddit-mcp-buddy
reddit-buddy --http  # 用于测试

从源代码安装

git clone https://github.com/karanb192/reddit-mcp-buddy.git
cd reddit-mcp-buddy
npm install
npm run build
npm link

使用Docker

docker run -it karanb192/reddit-mcp-buddy

💻 使用示例

你的AI现在可以回答以下问题:

"今天关于GPT - 4的热门帖子有哪些?"

→ search_reddit with query="GPT-4", time="day", sort="top"

"给我展示科技领域的热门趋势"

→ browse_subreddit with subreddit="technology", sort="hot"

"人们对这篇文章有什么看法?"

→ search_reddit with the article URL to find discussions

"分析用户DeepFuckingValue"

→ user_analysis with username="DeepFuckingValue"

"获取这篇Reddit帖子的评论"

→ get_post_details with url="https://reddit.com/r/..."

"整个Reddit上的热门内容有哪些?"

→ browse_subreddit with subreddit="all", sort="hot"

📚 详细文档

它能做什么?

你可以让你的AI助手执行以下操作:

  • 📊 "Reddit上正在流行什么?" - 浏览r/all中的热门帖子。
  • 🔍 "搜索关于AI的讨论" - 在所有子版块中进行搜索。
  • 💬 "获取这篇Reddit帖子的评论" - 获取带有完整评论线程的帖子。
  • 👤 "分析用户spez" - 获取用户历史、积分和活动信息。
  • 📚 "解释Reddit积分" - 了解Reddit术语。

可用工具

browse_subreddit

可按排序选项浏览任何子版块的帖子。

- 子版块:
- "all" - 整个Reddit首页
- "popular" - Reddit上的热门内容
- 任何特定的子版块(例如,"technology"、"programming"、"science")
- 排序方式:热门、最新、置顶、上升、有争议
- 时间范围:小时、天、周、月、年、全部(适用于置顶/有争议的排序)
- 包含子版块信息:可选标志,用于获取子版块元数据

search_reddit

可在Reddit或特定子版块中进行搜索。

- 查询:你的搜索词
- 过滤条件:子版块、作者、时间、标签
- 排序方式:相关性、热门、置顶、最新、评论数

get_post_details

获取带有所有评论的帖子。

- 输入:
- Reddit URL(包括子版块的完整URL),或
- 仅帖子ID(将自动检测子版块,需2次API调用),或
- 帖子ID + 子版块(最有效,需1次API调用)
- 选项:评论排序、深度、链接提取

user_analysis

分析Reddit用户的个人资料。

- 用户名:任何Reddit用户
- 返回:积分、帖子、评论、活跃子版块

reddit_explain

获取Reddit术语的解释。

- 术语:积分、蛋糕日、AMA、ELI5等

身份验证(可选)

如果你需要更多的请求量,可以在Claude Desktop配置中添加Reddit凭证:

设置步骤

  1. 访问https://www.reddit.com/prefs/apps
  2. 创建一个应用(类型:脚本 - 重要!)
  3. 找到你的凭证:
    • 客户端ID:显示在“个人使用脚本”下方
    • 客户端密钥:应用页面上的密钥字符串
  4. 更新你的Claude Desktop配置:
{
"mcpServers": {
"reddit": {
"command": "npx",
"args": ["reddit-mcp-buddy"],
"env": {
"REDDIT_CLIENT_ID": "your_client_id",
"REDDIT_CLIENT_SECRET": "your_client_secret",
"REDDIT_USERNAME": "your_username",
"REDDIT_PASSWORD": "your_password"
}
}
}
}

速率限制

  • 无身份验证:每分钟10个请求(默认)
  • 仅客户端ID + 密钥:每分钟60个请求
  • 包含用户名 + 密码:每分钟100个请求

注意:要达到最大速率限制(每分钟100个请求),你需要包括用户名和密码在内的所有四个凭证。

与其他工具的比较

特性 Reddit MCP Buddy 其他MCP工具
零配置 ✅ 即开即用 ❌ 需要API密钥
编程语言 TypeScript/Node.js 大多为Python
工具数量 5个(专注) 8 - 10个(冗余)
虚假指标 ✅ 仅真实数据 ❌ “情感评分”
搜索功能 ✅ 全面搜索 有限或无
缓存功能 ✅ 智能缓存 通常无
大语言模型优化 ✅ 参数清晰 选项混乱

速率限制

模式 每分钟请求数 缓存TTL 需要的设置
匿名模式 10 15分钟
仅应用模式 60 5分钟 客户端ID + 密钥
认证模式 100 5分钟 所有凭证

为什么选择Reddit MCP Buddy?

其他工具的不足之处:

  • 虚假指标 - “情感评分”只是简单的关键词计数。
  • 复杂的设置 - 仅启动就需要API密钥。
  • 臃肿的响应 - 返回Reddit原始API的100多个字段。
  • 大语言模型集成不佳 - 参数混乱且描述不清晰。

我们的优势:

  • 仅真实数据 - 如果不是来自Reddit API,我们不会编造。
  • 简洁的响应 - 只返回重要的字段。
  • 清晰的参数 - 大语言模型能准确理解要发送的内容。
  • 快速且有缓存 - 尽可能即时响应。

故障排除

常见问题

“命令未找到”错误

# 确保npm已安装
node --version
npm --version

# 尝试使用完整的npx路径
$(npm bin -g)/reddit-mcp-buddy

速率限制错误

  • 无身份验证:每分钟限制10个请求。
  • 仅应用凭证:每分钟60个请求。
  • 完整身份验证:每分钟100个请求。
  • 解决方案:添加Reddit凭证(见身份验证)。

“未找到子版块”

  • 检查拼写(不区分大小写)。
  • 某些子版块可能是私有的或被隔离的。
  • 尝试使用“all”或“popular”代替。

连接问题

  • Reddit可能已宕机(检查https://www.redditstatus.com)。
  • 防火墙可能阻止了请求。
  • 尝试重启MCP服务器。

环境变量

身份验证变量
变量 描述 是否必需 速率限制
REDDIT_CLIENT_ID Reddit应用客户端ID 每分钟60个请求(与密钥一起使用)
REDDIT_CLIENT_SECRET Reddit应用密钥 每分钟60个请求(与ID一起使用)
REDDIT_USERNAME Reddit账户用户名 每分钟100个请求(与所有四个一起使用)
REDDIT_PASSWORD Reddit账户密码 每分钟100个请求(与所有四个一起使用)
REDDIT_USER_AGENT 用户代理字符串 -
服务器配置
变量 描述 默认值
REDDIT_BUDDY_HTTP 以HTTP服务器而不是stdio模式运行 false
REDDIT_BUDDY_PORT HTTP服务器端口(当HTTP=true时) 3000
REDDIT_BUDDY_NO_CACHE 禁用缓存(始终获取最新数据) false

🔧 技术细节

智能缓存系统

Reddit MCP Buddy包含智能缓存系统,以提高性能并减少API调用:

  • 内存安全:硬限制为50MB - 不会影响你的系统性能。
  • 自适应TTL:热门帖子(5分钟)、新帖子(2分钟)、置顶帖子(30分钟)。
  • LRU淘汰机制:在接近限制时自动移除最少使用的数据。
  • 命中跟踪:根据实际使用模式优化缓存。 这意味着更快的响应速度,并能在使用最少系统资源的情况下,严格遵守Reddit的速率限制。

开发

# 安装依赖
npm install

# 开发模式运行
npm run dev

# 构建
npm run build

# 测试
npm test

# 代码检查
npm run lint

# 类型检查
npm run typecheck

要求

  • Node.js >= 18.0.0
  • npm或yarn
  • TypeScript 5.5+

贡献

欢迎提交PR!请参阅CONTRIBUTING.md获取指南。 我们保持简单:

  • 无虚假分析。
  • 代码简洁、类型化。
  • 文档清晰。
  • 响应快速。

支持

📄 许可证

本项目采用MIT许可证,你可以随意使用!


为MCP社区用心打造。无风险投资,无跟踪,只是一个优秀的MCP服务器。

  • 0 关注
  • 0 收藏,7 浏览
  • system 提出于 2025-09-22 10:03

相似服务问题