MCP Servers

A collection of Model Context Protocol servers, templates, tools and more.

๐Ÿ”— A zero-config Model Context Protocol (MCP) server for Reddit โ€” search posts, browse subreddits, scrape user activity, and get structured data via any MCP-compatible AI client. No API keys or authentication needed.

Created 3/11/2026
Updated about 8 hours ago
Repository documentation and setup instructions

Reddit MCP Server

PyPI License: MIT

A Model Context Protocol (MCP) server that provides AI assistants with access to Reddit data. Built on top of redd โ€” no API keys required.

https://github.com/user-attachments/assets/af8ae52c-f9f3-4d04-80d5-4be0dfa61b0f


Table of Contents

  1. Features
  2. Quick Start
  3. Available Tools
  4. Configuration
  5. Architecture
  6. Contributing
  7. License

1. Features

  • ๐Ÿ” Search โ€” Search all of Reddit or within a specific subreddit
  • ๐Ÿ“ฐ Subreddit Posts โ€” Browse hot, top, new, or rising posts from any subreddit
  • ๐Ÿ“– Post Details โ€” Get full post content with nested comment trees
  • ๐Ÿ‘ค User Activity โ€” View a user's recent posts and comments
  • ๐Ÿ“ User Posts โ€” Get a user's submitted posts

No API keys, no authentication, no browser required. Just install and run.


2. Quick Start

2.1. Using uvx (recommended)

The fastest way to run the server โ€” no clone needed:

# stdio transport (default, for Claude Desktop / Cursor / etc.)
uvx reddit-no-auth-mcp-server

# HTTP transport
uvx reddit-no-auth-mcp-server \
  --transport streamable-http \
  --port 8000

2.2. From source

git clone https://github.com/eliasbiondo/reddit-mcp-server.git
cd reddit-mcp-server
uv sync

Run the server:

# stdio transport (default)
uv run reddit-no-auth-mcp-server

# HTTP transport
uv run reddit-no-auth-mcp-server \
  --transport streamable-http \
  --port 8000

2.3. MCP Client Configuration

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "reddit": {
      "command": "uvx",
      "args": ["reddit-no-auth-mcp-server"]
    }
  }
}

Cursor

Add to your .cursor/mcp.json:

{
  "mcpServers": {
    "reddit": {
      "command": "uvx",
      "args": ["reddit-no-auth-mcp-server"]
    }
  }
}

From source (any MCP client)

{
  "mcpServers": {
    "reddit": {
      "command": "uv",
      "args": [
        "--directory", "/path/to/reddit-mcp-server",
        "run", "reddit-no-auth-mcp-server"
      ]
    }
  }
}

3. Available Tools

| Tool | Description | Key Arguments | |------|-------------|---------------| | search | Search Reddit for posts | query, limit, sort | | search_subreddit | Search within a subreddit | subreddit, query, limit, sort | | get_post | Get post details + comment tree | permalink | | get_subreddit_posts | Get subreddit listing | subreddit, limit, category, time_filter | | get_user | Get user's activity feed | username, limit | | get_user_posts | Get user's submitted posts | username, limit, category, time_filter |

Tool Details

search

Search all of Reddit for posts matching a query.

query: "python async programming"
limit: 10
sort: "relevance"  # relevance, hot, top, new, comments

search_subreddit

Search within a specific subreddit.

subreddit: "Python"
query: "web scraping"
limit: 10
sort: "top"

get_post

Get full details of a Reddit post including its comment tree.

permalink: "/r/Python/comments/abc123/my_post/"

get_subreddit_posts

Get posts from a subreddit listing.

subreddit: "MachineLearning"
limit: 25
category: "hot"       # hot, top, new, rising
time_filter: "week"   # hour, day, week, month, year, all

get_user

Get a user's recent public activity (posts and comments).

username: "spez"
limit: 10

get_user_posts

Get a user's submitted posts.

username: "spez"
limit: 10
category: "top"       # hot, top, new
time_filter: "all"    # hour, day, week, month, year, all

4. Configuration

All settings can be configured via environment variables:

| Variable | Default | Description | |----------|---------|-------------| | REDDIT_TRANSPORT | stdio | MCP transport (stdio, streamable-http) | | REDDIT_HOST | 127.0.0.1 | Host for HTTP transport | | REDDIT_PORT | 8000 | Port for HTTP transport | | REDDIT_PATH | /mcp | Path for HTTP transport | | REDDIT_LOG_LEVEL | WARNING | Log level (DEBUG, INFO, WARNING, ERROR) | | REDDIT_PROXY | โ€” | HTTP/HTTPS proxy URL | | REDDIT_TIMEOUT | 10.0 | Request timeout in seconds | | REDDIT_THROTTLE_MIN | 1.0 | Min delay between paginated requests (seconds) | | REDDIT_THROTTLE_MAX | 2.0 | Max delay between paginated requests (seconds) |

CLI arguments take precedence over environment variables:

uv run reddit-no-auth-mcp-server \
  --transport streamable-http \
  --port 9000 \
  --log-level DEBUG

5. Architecture

This project follows hexagonal architecture (ports & adapters):

src/reddit_mcp_server/
โ”œโ”€โ”€ domain/                # Pure business logic, no framework imports
โ”‚   โ”œโ”€โ”€ exceptions.py      # Domain exception hierarchy
โ”‚   โ””โ”€โ”€ value_objects.py   # Immutable config objects
โ”œโ”€โ”€ ports/                 # Abstract interfaces (contracts)
โ”‚   โ”œโ”€โ”€ config.py          # ConfigPort
โ”‚   โ””โ”€โ”€ reddit.py          # RedditPort
โ”œโ”€โ”€ application/           # Use cases (orchestration)
โ”‚   โ”œโ”€โ”€ search.py
โ”‚   โ”œโ”€โ”€ search_subreddit.py
โ”‚   โ”œโ”€โ”€ get_post.py
โ”‚   โ”œโ”€โ”€ get_user.py
โ”‚   โ”œโ”€โ”€ get_subreddit_posts.py
โ”‚   โ””โ”€โ”€ get_user_posts.py
โ”œโ”€โ”€ adapters/
โ”‚   โ”œโ”€โ”€ inbound/           # Presentation layer
โ”‚   โ”‚   โ”œโ”€โ”€ cli.py         # CLI entry point
โ”‚   โ”‚   โ”œโ”€โ”€ mcp_server.py
โ”‚   โ”‚   โ”œโ”€โ”€ error_mapping.py
โ”‚   โ”‚   โ”œโ”€โ”€ serialization.py
โ”‚   โ”‚   โ””โ”€โ”€ mcp_tools/     # MCP tool definitions
โ”‚   โ””โ”€โ”€ outbound/          # Infrastructure layer
โ”‚       โ”œโ”€โ”€ env_config.py  # ConfigPort implementation
โ”‚       โ””โ”€โ”€ redd_client.py # RedditPort implementation (wraps redd)
โ””โ”€โ”€ container.py           # DI composition root

6. Contributing

Contributions are welcome. Please read CONTRIBUTING.md for guidelines on setting up the project, running tests, and submitting changes.


7. License

MIT

Quick Setup
Installation guide for this server

Install Package (if required)

uvx reddit-mcp-server

Cursor configuration (mcp.json)

{ "mcpServers": { "eliasbiondo-reddit-mcp-server": { "command": "uvx", "args": [ "reddit-mcp-server" ] } } }