MCP Reddit Server

MCP Reddit Server

A Model Context Protocol server that enables AI assistants like Claude to browse and analyze Reddit content, including searching subreddits, retrieving post details with comments, and viewing trending posts.

wllcnm

Social Media
Visit Server

README

MCP Reddit Server

English | 中文说明

<h2 id="chinese">中文说明</h2>

1. 项目介绍

这是一个基于MCP(Model Context Protocol)协议的Reddit服务器,专门设计用于与Claude等大语言模型进行交互。通过这个服务,你可以让AI助手帮助你浏览和分析Reddit上的内容。

1.1 主要功能

  • 搜索特定subreddit中的帖子
  • 获取帖子详细信息和评论
  • 浏览subreddit中的热门帖子

1.2 项目结构

nangeAGICode/reddit_chat_claude/
├── .github/
│   └── workflows/
│       └── docker.yml # GitHub Actions工作流配置
├── src/
│   ├── init.py
│   └── server.py # MCP服务器核心代码
├── .gitignore # Git忽略文件配置
├── Dockerfile # Docker构建文件
├── LICENSE # MIT许可证
├── README.md # 项目说明文档
└── requirements.txt # Python依赖包列表

2. 安装和配置

2.1 前提条件

  • Docker(必须)
  • Python 3.12+(用于本地开发)
  • Reddit API凭证(必需)

2.2 获取Reddit API凭证

  1. 访问 https://www.reddit.com/prefs/apps
  2. 点击"create another app..."
  3. 选择"script"
  4. 填写必要信息
  5. 获取client_id和client_secret

2.3 环境变量配置

需要设置以下环境变量:

REDDIT_CLIENT_ID=你的client_id
REDDIT_CLIENT_SECRET=你的client_secret
REDDIT_USER_AGENT=你的user_agent

2.4 Docker安装

MAC用户: 1.访问 Docker 官网:https://www.docker.com/products/docker-desktop 2.点击 "Download for Mac" 3.选择对应你的 Mac 芯片的版本(Apple Silicon 或 Intel) 4.下载并安装 .dmg 文件

5.验证安装:

# 检查 Docker 版本
docker --version

# 运行测试容器
docker run hello-world

6.确保 Docker 服务正在运行:

# 检查 Docker 服务状态
docker ps

3. 使用方法

3.1 在Claude桌面客户端中使用

在你的claude_desktop_config.json中添加以下配置:

{
  "mcpServers": {
    "reddit": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e", "REDDIT_CLIENT_ID=你的client_id",
        "-e", "REDDIT_CLIENT_SECRET=你的client_secret",
        "-e", "REDDIT_USER_AGENT=你的user_agent",
        "ghcr.io/nangeplus/mcp-reddit:latest"
      ]
    }
  }
}

3.2 可用工具

  1. search_subreddit: 搜索特定subreddit中的帖子

    • 参数:
      • subreddit: subreddit名称
      • query: 搜索关键词
      • limit: 最大返回结果数(默认:5)
  2. get_post_details: 获取特定帖子的详细信息

    • 参数:
      • post_id: Reddit帖子ID
      • comment_limit: 获取评论的最大数量(默认:10)
  3. get_subreddit_hot: 获取subreddit中的热门帖子

    • 参数:
      • subreddit: subreddit名称
      • limit: 返回帖子的最大数量(默认:5)

3.3 使用示例

在Claude中,你可以这样使用工具:

{
  "tool": "get_subreddit_hot",
  "arguments": {
    "subreddit": "Python",
    "limit": 3
  }
}

示例对话:

用户:帮我查看Python subreddit中最热门的3个帖子。

Claude:好的,我来帮你查看。我将使用get_subreddit_hot工具:

{
  "tool": "get_subreddit_hot",
  "arguments": {
    "subreddit": "Python",
    "limit": 3
  }
}

[Claude会返回帖子信息]

用户:帮我查看第一个帖子的详细内容和评论。

Claude:我将使用get_post_details工具:

{
  "tool": "get_post_details",
  "arguments": {
    "post_id": "返回的帖子ID"
  }
}

4. 本地开发

4.1 克隆仓库

git clone https://github.com/nangeplus/mcp-reddit.git
cd mcp-reddit

4.2 安装依赖

pip install -r requirements.txt

4.3 运行服务器

python src/server.py

4.4 Docker构建

docker build -t mcp-reddit .
docker run -i --rm \
  -e REDDIT_CLIENT_ID=你的client_id \
  -e REDDIT_CLIENT_SECRET=你的client_secret \
  -e REDDIT_USER_AGENT=你的user_agent \
  mcp-reddit

5. 注意事项

  1. 安全性

    • 请妥善保管你的Reddit API凭证
    • 不要在公共场合分享你的配置文件
    • 建议使用环境变量而不是硬编码凭证
  2. 使用限制

    • Reddit API有调用频率限制
    • 默认返回的评论数量限制为10条
    • 搜索结果默认限制为5条
  3. 故障排除

    • 检查API凭证是否正确
    • 确保网络连接正常
    • 查看日志输出了解详细错误信息

6. 贡献指南

  1. Fork 项目
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 开启 Pull Request

7. 许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情


Recommended Servers

@wopal/mcp-server-hotnews

@wopal/mcp-server-hotnews

A Model Context Protocol server that provides real-time hot trending topics from major Chinese social platforms and news sites.

Featured
actors-mcp-server

actors-mcp-server

Use 3,000+ pre-built cloud tools from Apify, known as Actors, to extract data from websites, e-commerce, social media, search engines, maps, and more

Official
TypeScript
mcp-maigret

mcp-maigret

MCP server for maigret, a powerful OSINT tool that collects user account information from various public sources. This server provides tools for searching usernames across social networks and analyzing URLs.

Local
JavaScript
Instagram MCP Server

Instagram MCP Server

A server that allows fetching Instagram posts using Chrome's existing login session via Model Context Protocol (MCP).

Local
TypeScript
X(Twitter) MCP Server

X(Twitter) MCP Server

An MCP server that allows Claude to create, manage and publish X/Twitter posts directly through the chat interface.

Local
Python
LinkedIn MCP Server

LinkedIn MCP Server

A Model Context Protocol server that enables seamless interaction with LinkedIn for job applications, profile retrieval, feed browsing, and resume analysis through natural language commands.

Local
Python
Twitter MCP Server

Twitter MCP Server

Provides AI agents with comprehensive Twitter functionality through the Model Context Protocol standard, enabling reading tweets, posting content, managing interactions, and accessing timeline data with robust error handling.

Local
JavaScript
Twitch MCP Server

Twitch MCP Server

Enables interaction with the Twitch API, allowing users to retrieve comprehensive information about channels, streams, games, and more, with additional support for searching and accessing chat elements like emotes and badges.

TypeScript
LinkedIn Browser MCP Server

LinkedIn Browser MCP Server

A FastMCP-based server that enables programmatic LinkedIn automation and data extraction through browser automation, offering secure authentication and tools for profile operations and post interactions while respecting LinkedIn's rate limits.

Python
Hive MCP Server

Hive MCP Server

Enables AI assistants to interact with the Hive blockchain through the Model Context Protocol, allowing for account info retrieval, content reading/creation, cryptocurrency transfers, and cryptographic operations.

TypeScript