Skip to main content

MCP server for Reddit - read and write without API keys

Project description

reddit-mcp

MCP server for Reddit. Read-only mode works out of the box with no setup. Write mode requires a session cookie and comes with risks.

Read-Only Mode (No Setup Required)

Reading from Reddit requires no credentials. Just install and use:

pip install reddit-mcp-noapi

The read tools (reddit_read, reddit_listing, reddit_search) fetch public JSON from old.reddit.com. This is identical to viewing Reddit in a browser — no login required.

Note: Feeding Reddit content to AI probably violates Reddit's ToS. However, read-only access is indistinguishable from normal browsing, so there's no practical risk — Reddit can't tell the difference between you reading a post and Claude reading it.

MCP Config (Read-Only)

{
  "mcpServers": {
    "reddit": {
      "command": "reddit-mcp"
    }
  }
}

CLI Examples (Read-Only)

# Read a post with comments
reddit read https://reddit.com/r/LocalLLaMA/comments/abc123/post_title

# List subreddit posts
reddit listing LocalLLaMA --limit 10

# Search
reddit search LocalLLaMA "llama 3"

Write Mode (Session Cookie Required)

⚠️ Read this before proceeding.

Write mode lets you post comments, submit posts, vote, and check your inbox. It works by using session cookies from your browser.

The Risk

This violates Reddit's Terms of Service. Reddit severely restricted API access in 2023 and stopped issuing new free API keys entirely in December 2025. Using automation to bypass their API restrictions is explicitly against their rules.

If Reddit detects automated access on your account, your account may be permanently banned. There's no way to predict if or when this will happen.

If You Accept the Risk

Option 1: Auto-Import from Browser (Recommended)

If you're logged into Reddit in your browser, the CLI can import your session automatically:

# Auto-detect browser
reddit auth

# Or specify a browser
reddit auth --browser firefox
reddit auth --browser chrome

This extracts the reddit_session cookie and saves it to ~/.config/reddit-mcp/session.json.

Supported browsers:

Browser Linux macOS Windows
Firefox
Chrome
Chromium
Safari ?
Edge
Opera
Brave

✓ = supported, ? = untested, — = not applicable

Notes:

  • Snap and Flatpak installations of Chrome/Chromium are supported on Linux
  • Chrome-based browsers may prompt for keychain/keyring access to decrypt cookies
  • Safari support is untested — please report if it works (or doesn't)

Using different accounts: If you use different browsers for different Reddit accounts, specify the browser:

# Main account in Firefox
reddit auth --browser firefox

# Alt account in Chromium (use different session directory)
REDDIT_SESSION_DIR=~/.config/reddit-mcp-alt reddit auth --browser chromium

Option 2: Manual Cookie Export

If auto-import doesn't work:

  1. Log into Reddit in your browser
  2. Open DevTools (F12) → Application → Cookies → https://www.reddit.com
  3. Find the cookie named reddit_session
  4. Copy its value (it's a long JWT string starting with eyJ...)
  5. Create ~/.config/reddit-mcp/session.json:
{
  "cookies": {
    "reddit_session": "eyJhbGciOiJS... (your full cookie value here)"
  },
  "username": "your_reddit_username"
}

Note: Manual setup doesn't support auto-refresh. When your cookie expires, you'll need to repeat these steps. Use reddit auth if you want automatic refresh.

(Optional) Override the Session Location

By default, the session is stored in ~/.config/reddit-mcp/. You can override this in your MCP config if you want Claude to use a different Reddit account than your CLI default, or if you're running multiple instances with different accounts:

{
  "mcpServers": {
    "reddit": {
      "command": "reddit-mcp",
      "env": {
        "REDDIT_SESSION_DIR": "/path/to/session/directory"
      }
    }
  }
}

How Write Mode Works

  1. Write operations load the session cookie from ~/.config/reddit-mcp/session.json
  2. The cookie is used to authenticate with old.reddit.com
  3. When the cookie expires, reddit-mcp automatically re-imports from the same browser

Reddit session cookies last a long time (months), so refreshes are rare. If auto-refresh fails (e.g., you logged out of the browser), just run reddit auth again.

Write Tools

Tool Description
reddit_inbox Check replies, mentions, messages
reddit_comment Reply to a post or comment
reddit_submit Submit a new post
reddit_vote Upvote/downvote
reddit_delete Delete your own content

CLI Examples (Write Mode)

# Check inbox
reddit inbox
reddit inbox --unread

# Post a comment (thing_id is t3_xxx for posts, t1_xxx for comments)
reddit comment t3_abc123 "This is my reply"

# Submit a text post
reddit submit LocalLLaMA "Post Title" --text "Post body here"

# Submit a link post
reddit submit LocalLLaMA "Post Title" --url "https://example.com"

# Vote (1 = upvote, -1 = downvote, 0 = remove vote)
reddit vote t3_abc123 1

# Delete your own post or comment
reddit delete t1_xyz789

Why This Exists

Reddit severely restricted third-party API access in 2023 and stopped issuing new free API keys entirely in December 2025. If you want to build something that interacts with Reddit programmatically, your options are:

  1. Be a large company that can negotiate API access
  2. Scrape public pages (read-only)
  3. Use session cookies (what this does for writes)

This tool exists because the AI/LLM community benefits from being able to interact with Reddit, and Reddit has made that impossible through official channels.

License

Unlicense — Public domain. Do whatever you want with it.

The author takes no responsibility for any consequences of using this tool.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

reddit_mcp_noapi-0.1.0.tar.gz (14.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

reddit_mcp_noapi-0.1.0-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file reddit_mcp_noapi-0.1.0.tar.gz.

File metadata

  • Download URL: reddit_mcp_noapi-0.1.0.tar.gz
  • Upload date:
  • Size: 14.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for reddit_mcp_noapi-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c544923c2aa0c851ceebb7b94fcb9d0eab77871804e7f58cfde167bf017af952
MD5 fd12d1c7b4383032877859b6a50b2dd8
BLAKE2b-256 e0a558d8ff0896168db21e98d3dc6826deb02ea39cc5afe3757a4af8cefdf451

See more details on using hashes here.

File details

Details for the file reddit_mcp_noapi-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: reddit_mcp_noapi-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 15.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for reddit_mcp_noapi-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bf4222df9a934cd59b0fb4cfb11b105db08dcb9f57e99e0ff3a07555c872e82b
MD5 b6ab129cfea9bcbc77032a9a5b634328
BLAKE2b-256 085815e5efad05417cd4f91f9ca5865f1bbb9613965d6d91ca5edf086f80270d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page