reddit-mcp
Provides tools for interacting with Reddit, enabling posting, commenting, voting, and sending private messages as the authenticated user.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@reddit-mcpshow me hot posts in r/programming"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
reddit-mcp
An MCP server over the Reddit API, backed by a self-owned OAuth2 app. Unlike the read-only servers in this set, this one can act as the account — post, comment, vote, and send private messages — so it is worth being deliberate about what you ask it to do.
Runs over stdio, registered in ~/.claude.json as reddit.
Tools
Read
Tool | Purpose |
| The authenticated account's own profile |
| Another user's public profile |
| A user's recent posts and comments |
| Listing for a subreddit (hot/new/top/rising) |
| A single post plus its comment tree |
| Search across Reddit or within one subreddit |
| Private messages and inbox replies |
Write — these have real, public consequences
Tool | Purpose |
| Create a new post in a subreddit |
| Reply to a post or comment |
| Up/down/clear vote on a post or comment |
| Send a private message to a user |
| Mark inbox items read |
The write tools post under your real account, publicly and attributably. Reddit's spam and vote-manipulation rules apply to API traffic exactly as they do to browser traffic, and account bans follow the account, not the app.
Related MCP server: reddit-mcp
Auth
OAuth2 with a refresh token, stored in credentials/token.json (gitignored).
Reddit does not rotate refresh tokens, so the stored one stays valid
indefinitely — access tokens are refreshed automatically ~60s before expiry.
npm run authorize # one-time browser consent, writes credentials/token.json
npm run check-auth # verify the stored token still worksSetup
Requires Node 20+.
Create a script app at reddit.com/prefs/apps.
Save its id and secret to
credentials/client_secret.json— seecredentials/client_secret.example.jsonfor the shape.credentials/is git-ignored.Identify yourself to Reddit. The default User-Agent contains a placeholder, and Reddit throttles generic agents hard, so set one of:
REDDIT_USERNAME=your_reddit_username # fills in the /u/ segment REDDIT_USER_AGENT="platform:app:v1.0.0 (by /u/you)" # or replace it wholesaleAuthorize and register:
npm ci npm run authorize claude mcp add reddit -- node <path>/reddit-mcp/src/index.js
Tests
npm testRegistration, the fullname-prefix helper, and User-Agent construction. No network and no credentials, so it is safe in CI.
Layout
src/auth.js token load, refresh, caching
src/reddit.js all tool registrations
src/index.js McpServer construction + stdio transport
scripts/authorize.js one-time OAuth consent flow
scripts/check-token.js token health checkNotes
Reddit requires a descriptive, unique
User-Agent; a generic one gets 429s regardless of rate.Fullnames are prefixed type IDs (
t3_post,t1_comment,t5_subreddit).reddit_votewants the fullname, not the short ID from a URL.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/brettadams0/reddit-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server