MCP server providing 85+ tools for Reddit API access via PRAW
Project description
Reddit MCP Server
MCP server providing 85+ tools for Reddit API access via PRAW.
Features
- Reading: Browse posts, comments, subreddits, user profiles, wiki pages
- Submissions: Create text/link/image/video/gallery/poll posts, crosspost
- Comments: Reply, edit, delete comments
- Interactions: Vote, save, hide, report, award content
- Search: Search posts, comments, users across Reddit
- User Management: Friends, blocks, preferences, multireddits
- Moderation: Full mod tools - approve/remove, ban/mute, flair, modqueue
Installation
Option 1: PyPI (Recommended)
# With pip
pip install reddit-mcp-tools
# With uv
uv pip install reddit-mcp-tools
Option 2: uvx (No Installation)
Run directly without installing:
uvx reddit-mcp-tools
Option 3: From GitHub
# With pip
pip install git+https://github.com/ErcinDedeoglu/reddit-mcp.git
# With uv
uv pip install git+https://github.com/ErcinDedeoglu/reddit-mcp.git
# Or run directly with uvx
uvx --from git+https://github.com/ErcinDedeoglu/reddit-mcp.git reddit-mcp
Option 4: From Source
git clone https://github.com/ErcinDedeoglu/reddit-mcp.git
cd reddit-mcp
uv sync # or: pip install -e .
Configuration
Create a .env file or set environment variables with your Reddit API credentials:
REDDIT_CLIENT_ID=your_client_id
REDDIT_CLIENT_SECRET=your_client_secret
REDDIT_USERNAME=your_username
REDDIT_PASSWORD=your_password
REDDIT_USER_AGENT=reddit-mcp/1.0.0
Getting Reddit API Credentials
- Go to https://www.reddit.com/prefs/apps
- Click "create another app..."
- Select "script" type
- Note the client ID (under app name) and secret
Usage
With Claude Desktop
Add to your Claude Desktop config:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Linux: ~/.config/claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Using PyPI install:
{
"mcpServers": {
"reddit": {
"command": "reddit-mcp-tools",
"env": {
"REDDIT_CLIENT_ID": "your_client_id",
"REDDIT_CLIENT_SECRET": "your_client_secret",
"REDDIT_USERNAME": "your_username",
"REDDIT_PASSWORD": "your_password",
"REDDIT_USER_AGENT": "reddit-mcp/1.0.0"
}
}
}
}
Using uvx (no install needed):
{
"mcpServers": {
"reddit": {
"command": "uvx",
"args": ["reddit-mcp-tools"],
"env": {
"REDDIT_CLIENT_ID": "your_client_id",
"REDDIT_CLIENT_SECRET": "your_client_secret",
"REDDIT_USERNAME": "your_username",
"REDDIT_PASSWORD": "your_password",
"REDDIT_USER_AGENT": "reddit-mcp/1.0.0"
}
}
}
}
Using local clone:
{
"mcpServers": {
"reddit": {
"command": "uv",
"args": ["--directory", "/path/to/reddit-mcp", "run", "reddit-mcp-tools"],
"env": {
"REDDIT_CLIENT_ID": "your_client_id",
"REDDIT_CLIENT_SECRET": "your_client_secret",
"REDDIT_USERNAME": "your_username",
"REDDIT_PASSWORD": "your_password",
"REDDIT_USER_AGENT": "reddit-mcp/1.0.0"
}
}
}
}
Standalone
# After installation
reddit-mcp-tools
# With uvx
uvx reddit-mcp-tools
# From source
uv run reddit-mcp-tools
Tools (85 total)
Reading (13 tools)
| Tool | Description |
|---|---|
get_subreddit_posts |
Browse posts from any subreddit |
get_front_page |
Get posts from subscribed subreddits |
get_post_details |
Get full details of a post |
get_post_comments |
Get comments on a post |
get_comment_details |
Get a specific comment |
get_comment_replies |
Get replies to a comment |
get_subreddit_info |
Get subreddit metadata |
get_subreddit_rules |
Get posting rules |
get_subreddit_wiki_page |
Read wiki pages |
get_user_info |
Get user profile |
get_user_posts |
Browse user's posts |
get_user_comments |
Browse user's comments |
get_multireddit |
Get posts from multireddit |
Submissions (9 tools)
| Tool | Description |
|---|---|
submit_text_post |
Create a text/self post |
submit_link_post |
Submit a URL |
submit_image_post |
Upload and post an image |
submit_video_post |
Upload and post a video |
submit_gallery_post |
Post multiple images |
submit_poll_post |
Create a poll |
edit_post |
Edit post content |
delete_post |
Delete a post |
crosspost |
Share to another subreddit |
Comments (5 tools)
| Tool | Description |
|---|---|
reply_to_post |
Add a comment to a post |
reply_to_comment |
Reply to a comment |
edit_comment |
Edit your comment |
delete_comment |
Delete your comment |
get_more_comments |
Expand collapsed threads |
Interactions (10 tools)
| Tool | Description |
|---|---|
upvote |
Upvote a post/comment |
downvote |
Downvote a post/comment |
clear_vote |
Remove your vote |
save_item |
Save to your account |
unsave_item |
Remove from saved |
hide_post |
Hide from your feed |
unhide_post |
Unhide a post |
report_item |
Report to moderators |
give_award |
Give an award |
get_saved_items |
List saved content |
Search (4 tools)
| Tool | Description |
|---|---|
search_all |
Search all of Reddit |
search_subreddit |
Search within a subreddit |
search_comments |
Search comments |
search_users |
Find users |
User (16 tools)
| Tool | Description |
|---|---|
get_me |
Get authenticated user info |
get_user |
Get any user's profile |
get_user_submissions |
Get user's post history |
get_karma_breakdown |
Karma by subreddit |
get_trophies |
User's trophies |
get_friends |
List friends |
add_friend |
Add a friend |
remove_friend |
Remove a friend |
get_blocked |
List blocked users |
block_user |
Block a user |
unblock_user |
Unblock a user |
get_preferences |
Get account settings |
update_preferences |
Update settings |
get_multireddits |
List your multireddits |
create_multireddit |
Create a multireddit |
is_username_available |
Check username availability |
Moderation (28 tools)
| Tool | Description |
|---|---|
approve_item |
Approve reported content |
remove_item |
Remove content |
spam_item |
Mark as spam |
distinguish_comment |
Add mod distinction |
undistinguish_comment |
Remove distinction |
sticky_post |
Sticky a post |
unsticky_post |
Unsticky a post |
set_suggested_sort |
Set comment sort |
ban_user |
Ban from subreddit |
unban_user |
Remove ban |
mute_user |
Mute in modmail |
unmute_user |
Unmute user |
add_contributor |
Add approved user |
remove_contributor |
Remove approved user |
get_banned |
List banned users |
get_contributors |
List approved users |
set_user_flair |
Set user's flair |
delete_user_flair |
Remove user flair |
set_post_flair |
Set post flair |
get_flair_templates |
List flair options |
create_flair_template |
Create new flair |
delete_flair_template |
Delete flair option |
get_modqueue |
View mod queue |
get_reports |
View reported items |
get_spam |
View spam queue |
get_edited |
View edited items |
get_unmoderated |
View unmoderated posts |
get_mod_log |
View moderation log |
Development
# Clone and install with dev dependencies
git clone https://github.com/ErcinDedeoglu/reddit-mcp.git
cd reddit-mcp
uv sync --dev
# Run linters
uv run ruff check .
uv run pylint reddit_mcp/
# Build package
uv build
Publishing to PyPI
# Build the package
uv build
# Publish (requires PYPI_TOKEN)
uv publish
License
MIT License - see LICENSE for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file reddit_mcp_tools-0.1.1.tar.gz.
File metadata
- Download URL: reddit_mcp_tools-0.1.1.tar.gz
- Upload date:
- Size: 79.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.27 {"installer":{"name":"uv","version":"0.9.27","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8744cbe8df23f60cfb1fab64978a76b412ad18cc59e17d1edac723bbe5304d4f
|
|
| MD5 |
74f36f2ad0c18c4ac6bc07abad240701
|
|
| BLAKE2b-256 |
d6fc4c0134ca34bdcf04f7ecc8f485e47f58d031dfb73f267ef810b74acd8cb0
|
File details
Details for the file reddit_mcp_tools-0.1.1-py3-none-any.whl.
File metadata
- Download URL: reddit_mcp_tools-0.1.1-py3-none-any.whl
- Upload date:
- Size: 37.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.27 {"installer":{"name":"uv","version":"0.9.27","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f657908e91215b4b1b8fb1290941ee23a9d835526e0aa5e63136052373bc549c
|
|
| MD5 |
b173c71bbad2a4a0a5b9323ad0fb3e18
|
|
| BLAKE2b-256 |
2560ba2dbba54befc574819ce325b77bae5214730de74c1df9f20940ed32a2a9
|