Reddit MCP Server
Reddit MCP Server
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
š 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 80002.2. From source
git clone https://github.com/eliasbiondo/reddit-mcp-server.git
cd reddit-mcp-server
uv syncRun 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 80002.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 Reddit for posts |
|
| Search within a subreddit |
|
| Get post details + comment tree |
|
| Get subreddit listing |
|
| Get user's activity feed |
|
| Get user's submitted posts |
|
Tool Details
search
Search all of Reddit for posts matching a query.
query: "python async programming"
limit: 10
sort: "relevance" # relevance, hot, top, new, commentssearch_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, allget_user
Get a user's recent public activity (posts and comments).
username: "spez"
limit: 10get_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, all4. Configuration
All settings can be configured via environment variables:
Variable | Default | Description |
|
| MCP transport ( |
|
| Host for HTTP transport |
|
| Port for HTTP transport |
|
| Path for HTTP transport |
|
| Log level ( |
| ā | HTTP/HTTPS proxy URL |
|
| Request timeout in seconds |
|
| Min delay between paginated requests (seconds) |
|
| 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 DEBUG5. 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 root6. Contributing
Contributions are welcome. Please read CONTRIBUTING.md for guidelines on setting up the project, running tests, and submitting changes.
7. License
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/eliasbiondo/reddit-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server