
MCP server for fetching and creating Reddit content with user and subreddit analytics.
MCP server for fetching and creating Reddit content with user and subreddit analytics.
A Model Context Protocol (MCP) that provides tools for fetching and creating Reddit content.
https://github.com/user-attachments/assets/caa37704-7c92-4bf8-b7e8-56d02ccb4983
https://www.linkedin.com/feed/update/urn:li:activity:7328864060534419457/
Read-only Tools (Client Credentials):
get_user_info(username)
- Get detailed user analysis with engagement insightsget_top_posts(subreddit, time_filter, limit)
- Get and analyze top postsget_subreddit_stats(subreddit)
- Get comprehensive subreddit analysisget_trending_subreddits()
- Get list of trending subredditsRead-write Tools (User Credentials):
create_post(subreddit, title, content, flair, is_self)
- Create an optimized postreply_to_post(post_id, content, subreddit)
- Add a reply with engagement insightsreply_to_comment(comment_id, content, subreddit)
- Add a strategic replyTo install Reddit Content Integration Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @alexandros-lekkas/reddit-mcp-server --client claude
git clone https://github.com/alexandros-lekkas/reddit-mcp-server
Create a Reddit app here
Make sure to select "script"!
Copy the client ID and client secret
Create a .env
file based on .env.example
Do this with your REDDIT_CLIENT_ID
and REDDIT_CLIENT_SECRET
If you want to write posts you need to include your REDDIT_USERNAME
and REDDIT_PASSWORD
(don't worry, I won't steal them 😜)
npm run dev
and open the inspection server (http://127.0.0.1:6274/)"mcpServers": { "reddit": { "command": "node", "args": [ "C:\\path\\to\\reddit-mcp-server\\build\\index.js" // Replace this with your local path to build/index.js ], "env": { "REDDIT_CLIENT_ID": "😜", "REDDIT_CLIENT_SECRET": "😜", "REDDIT_USERNAME": "😜", "REDDIT_PASSWORD": "😜" }, "autoApprove": [ "get_reddit_post", "get_top_posts", "get_user_info", "get_subreddit_info", "get_trending_subreddits", "create_post", "reply_to_post" ] // You don't need to add this, but it makes it so that you don't have to keep clicking approve } }
(Make sure to replace the environmental variables with your actual keys, not the 😜 emoji)
Credit goes to the Python Reddit MCP Server by Arindam200 for the inspiration and implementation of these tools. This repository is, at the moment, simply a Node.js port of the Python implementation.
Credit goes to Eugene Sh for the tutorial on how to build an MCP server (which was used as a reference for this implementation).