项目简介

Reddit MCP 集成服务器是一个基于 Model Context Protocol (MCP) 实现的应用后端,旨在连接 AI 语言模型(LLM)客户端与 Reddit 平台。它通过提供一系列标准化的工具,使得 LLM 能够理解并操作 Reddit 上的数据,例如获取用户信息、查看热门帖子、甚至创建新帖子和回复评论。

主要功能点

  • 用户信息查询: 获取特定 Reddit 用户的详细信息、Karma统计和活动分析。
  • 热门帖子浏览: 获取指定 Subreddit 在特定时间范围内的热门帖子列表及摘要。
  • Subreddit 信息获取: 查询 Subreddit 的详细信息、统计数据和社区分析。
  • 热门 Subreddit 列表: 获取当前 Reddit 上的热门 Subreddit 列表。
  • 内容发布(需用户凭据):
    • 在指定 Subreddit 发布新帖子。
    • 回复现有 Reddit 帖子。

安装步骤

  1. 克隆本仓库到本地:
    git clone https://github.com/alexandros-lekkas/reddit-mcp-server
  2. 前往 Reddit 网站创建你的应用(选择 'script' 类型),获取客户端 ID (Client ID) 和客户端密钥 (Client Secret)。
  3. 复制仓库中的 '.env.example' 文件,创建 '.env' 文件。
  4. 在 '.env' 文件中填写你的 Reddit Client ID 和 Client Secret。
  5. 如果你需要使用创建帖子或回复评论等写入功能,还需要在 '.env' 文件中填写你的 Reddit 用户名 (Username) 和密码 (Password)。
  6. 使用 Node.js 包管理器安装项目依赖:
    cd reddit-mcp-server
    npm install
  7. 编译项目:
    npm run build
  8. 运行服务器(用于开发或测试,实际部署通常由MCP客户端启动):
    npm run dev
    或者运行编译后的代码:
    node ./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