Skip to main content
Glama
krishna-astrasols

Reddit MCP Server

Reddit MCP Server

Сервер Model Context Protocol (MCP) для взаимодействия с Reddit — получение постов, комментариев, информации о пользователях и создание контента.

npm version npm downloads GitHub stars License: MIT

Возможности с первого взгляда

Возможность

reddit-mcp-server

Other Reddit MCPs

Создание постов

: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:

Просмотр сабреддитов

: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 установит его автоматически:

Скачать reddit-mcp-server.mcpb

Вариант 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

Возможности

Инструменты только для чтения

Инструмент

Описание

get_reddit_post

Получить конкретный пост Reddit с анализом вовлечённости

get_top_posts

Получить лучшие посты из сабреддита или главной ленты

browse_subreddit

Просматривать сабреддит/главную ленту по сортировке (hot, new, top, rising, controversial)

get_user_info

Получить подробную информацию о пользователе Reddit

get_user_posts

Получить посты, опубликованные конкретным пользователем

get_user_comments

Получить комментарии, оставленные конкретным пользователем

get_subreddit_info

Получить сведения и статистику о сабреддите

get_trending_subreddits

Получить текущие трендовые сабреддиты

get_post_comments

Получить комментарии к конкретному посту с ветвлением

search_reddit

Искать посты по всему Reddit

Инструменты записи (требуют учётные данные пользователя)

Инструмент

Описание

create_post

Создать новый пост в сабреддите

reply_to_post

Оставить ответ на существующий пост или комментарий

edit_post

Редактировать свой пост Reddit (только текст)

edit_comment

Редактировать свой комментарий Reddit

delete_post

Навсегда удалить свой пост

delete_comment

Навсегда удалить свой комментарий

Конфигурация

Переменные окружения

Переменная

Обязательная

По умолчанию

Описание

REDDIT_CLIENT_ID

Нет*

-

Идентификатор клиента приложения Reddit

REDDIT_CLIENT_SECRET

Нет*

-

Секрет клиента приложения Reddit

REDDIT_USERNAME

Нет

-

Имя пользователя Reddit (для операций записи)

REDDIT_PASSWORD

Нет

-

Пароль Reddit (для операций записи)

REDDIT_USER_AGENT

Нет

Автоматически генерируется

Пользовательская строка User-Agent

REDDIT_AUTH_MODE

Нет

auto

Режим аутентификации: auto, authenticated, anonymous

REDDIT_SAFE_MODE

Нет

standard

Защита записи: off, standard, strict

REDDIT_BOT_DISCLOSURE

Нет

off

Подвал с указанием бота: auto, off

REDDIT_BOT_FOOTER

Нет

Встроенный

Пользовательский текст подвала бота (когда раскрытие auto)

REDDIT_CACHE

Нет

on

Кэширование запросов чтения в памяти: on, off

REDDIT_CACHE_MAX_MB

Нет

50

Максимальный размер кэша в МБ (вытеснение LRU за пределами этого)

REDDIT_MAX_RETRIES

Нет

3

Повторные попытки при HTTP 429 с задержкой Retry-After (0 для отключения)

*Требуется только при использовании режима 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.

Зачем использовать безопасный режим?

Система обнаружения спама Reddit может пометить аккаунты за:

  • Быструю публикацию или комментирование

  • Дублирующийся или похожий контент

  • Публикацию одного и того же контента в нескольких сабреддитах

  • Нестандартные строки User-Agent

Безопасный режим помогает автоматически предотвращать эти проблемы.

Варианты режима

Режим

Задержка записи

Обнаружение дубликатов

Сценарий использования

off

Нет

Нет

Только явный отказ

standard

2 секунды

Последние 10 элементов + межсабреддитный

По умолчанию, рекомендуется

strict

5 секунд

Последние 20 элементов + межсабреддитный

Для осторожной автоматической публикации

Отключение безопасного режима

Безопасный режим включён по умолчанию. Чтобы явно отключить:

export REDDIT_SAFE_MODE=off
npx reddit-mcp-server

Что делает безопасный режим

  1. Ограничение частоты: обеспечивает минимальные задержки между операциями записи

  2. Обнаружение дубликатов: блокирует публикацию одинакового контента дважды

  3. Межсабреддитное обнаружение: предотвращает публикацию одного и того же контента в нескольких сабреддитах (в соответствии с политикой Reddit)

  4. Умный User-Agent: автоматически генерирует формат User-Agent, соответствующий требованиям Reddit, при указании имени пользователя

Раскрытие бота

Политика ответственного разработчика Reddit требует, чтобы боты раскрывали свою автоматическую природу. Включите автоматические подвалы бота на всём публикуемом контенте:

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)'

Режимы аутентификации

Сравнение режимов

Режим

Лимит запросов

Требуется настройка

Лучше всего подходит для

anonymous

~10 запросов/мин

Нет

Быстрое тестирование, только чтение

auto (по умолчанию)

10-100 запросов/мин

Необязательно

Гибкое использование

authenticated

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 или запрошенного сабреддита, поэтому оно влияет на все инструменты сразу. Ошибка 403 на одном сабреддите, когда другие работают, — это другое: этот сабреддит является приватным или карантинным.

Аутентифицированный режим (более высокие лимиты запросов)

  1. Создайте приложение Reddit на https://www.reddit.com/prefs/apps (выберите тип «script»)

  2. Скопируйте идентификатор клиента и секрет

  3. Настройте:

{
  "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 code

Параметры CLI

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 mode

Режим HTTP-сервера

Для развёртывания в Docker или веб-клиентов используйте 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/mcp

Docker

Быстрый старт

# 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:latest

Docker 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-server

Политика ответственного разработчика Reddit

Этот сервер разработан с учётом Политики ответственного разработчика Reddit:

  • Безопасный режим включён по умолчанию — ограничение частоты и обнаружение дубликатов предотвращают спам

  • Межсабреддитное обнаружение дубликатов — блокирует одинаковый контент в разных сабреддитах

  • Поддержка раскрытия бота — необязательный автоматический подвал для прозрачности

  • Нет манипуляций голосованием/кармой — инструменты апвоутов/даунвоутов намеренно исключены

  • Нет личных сообщений — инструменты DM намеренно исключены

  • Инструкции для ИИ с учётом политики — инструкции MCP-сервера напоминают ИИ-ассистентам об ограничениях использования данных

Благодарности

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Related MCP Servers

  • A
    license
    A
    quality
    F
    maintenance
    An 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.
    15
    298
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    An 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.
    8
    1
    The Unlicense
  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that provides AI agents with full Reddit API capabilities including search, browsing, reading, posting, commenting, voting, editing, and deleting.
    10
    MIT

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

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