项目简介
Reddit MCP 集成服务器是一个基于 Model Context Protocol (MCP) 实现的应用后端,旨在连接 AI 语言模型(LLM)客户端与 Reddit 平台。它通过提供一系列标准化的工具,使得 LLM 能够理解并操作 Reddit 上的数据,例如获取用户信息、查看热门帖子、甚至创建新帖子和回复评论。
主要功能点
- 用户信息查询: 获取特定 Reddit 用户的详细信息、Karma统计和活动分析。
- 热门帖子浏览: 获取指定 Subreddit 在特定时间范围内的热门帖子列表及摘要。
- Subreddit 信息获取: 查询 Subreddit 的详细信息、统计数据和社区分析。
- 热门 Subreddit 列表: 获取当前 Reddit 上的热门 Subreddit 列表。
- 内容发布(需用户凭据):
- 在指定 Subreddit 发布新帖子。
- 回复现有 Reddit 帖子。
安装步骤
- 克隆本仓库到本地:
git clone https://github.com/alexandros-lekkas/reddit-mcp-server - 前往 Reddit 网站创建你的应用(选择 'script' 类型),获取客户端 ID (Client ID) 和客户端密钥 (Client Secret)。
- 复制仓库中的 '.env.example' 文件,创建 '.env' 文件。
- 在 '.env' 文件中填写你的 Reddit Client ID 和 Client Secret。
- 如果你需要使用创建帖子或回复评论等写入功能,还需要在 '.env' 文件中填写你的 Reddit 用户名 (Username) 和密码 (Password)。
- 使用 Node.js 包管理器安装项目依赖:
cd reddit-mcp-server npm install - 编译项目:
npm run build - 运行服务器(用于开发或测试,实际部署通常由MCP客户端启动):
或者运行编译后的代码:npm run devnode ./build/index.js
服务器配置(供 MCP 客户端参考)
将此 MCP 服务器添加到你的 MCP 客户端(如 Claude Desktop, Cursor 等)的配置文件中,通常是 JSON 格式。你需要指定客户端如何启动这个服务器进程。配置信息大致如下所示,具体格式请参考你使用的 MCP 客户端文档:
- 'server name': 给你的服务器起一个唯一的名称,例如 "reddit"。
- 'command': 启动 Node.js 可执行文件的命令,通常是 'node'。
- 'args': 传递给 'command' 的参数数组,第一个参数应是服务器代码编译后的入口文件路径,例如 '["C:\path\to\reddit-mcp-server\build\index.js"]' (请替换为你的实际路径)。
- 'env': 环境变量对象,用于向服务器传递 Reddit 凭据。你需要在这里填写你在 '.env' 文件中配置的 'REDDIT_CLIENT_ID', 'REDDIT_CLIENT_SECRET', 'REDDIT_USERNAME' (可选), 'REDDIT_PASSWORD' (可选) 等环境变量。
- 'autoApprove' (可选): 一个工具名称列表,列出的工具在被 LLM 调用时无需用户手动确认。
请注意:MCP 客户端将负责启动和管理这个服务器进程,你通常不需要手动运行 'npm run dev' 或 'node ./build/index.js' 来保持服务器运行。配置完成后,客户端会在需要时自动启动服务器。
基本使用方法
在 MCP 客户端中完成服务器配置后,启动客户端。如果配置正确,LLM 应该能够检测到并利用 Reddit MCP 服务器提供的工具。你可以直接在与 LLM 的对话中提出需要 Reddit 信息或操作的要求,例如:
- "获取用户 u/[用户名] 的信息"
- "帮我看看 r/[Subreddit 名称] 最近一周的热门帖子"
- "我想在 r/[Subreddit 名称] 发一个标题为'[帖子标题]',内容是'[帖子内容]'的帖子"
LLM 会识别你的意图,并通过 MCP 协议调用相应的工具来完成任务。
信息
分类
网页与API