MCP server for the Reddit API — read, post, comment, vote and message via a self-owned OAuth2 app
Strong tool naming (verb_noun pattern consistently applied) and comprehensive parameter schemas with proper enums and type definitions. All 12 tools have descriptions and input schemas visible in src/reddit.js. However, descriptions are often terse (many under 100 chars), lack dependency hints, and output schemas are not documented. No error handling guidance or recovery paths. Missing confirmation steps for destructive operations (submit_post, submit_comment, send_message). Risk annotations present but incomplete, no idempotent hints for reversible operations.
Lists inbox items: private messages, comment replies, and mentions.
Profile of the Reddit account this server is authorized as.
Fetch a post (submission) and its comment tree by post id (t3_... or bare id) or subreddit+id.
List posts from a subreddit feed (hot, new, top, rising).
Public profile info (karma, trophies, account age) for a username.
List a user's submitted posts, comments, or both (overview).
Destructive operations (reddit_submit_post, reddit_submit_comment, reddit_send_message) lack confirmation/dry-run support. Descriptions state 'No confirmation step' but offer no mitigation. Agents can irreversibly post or message without verification.
Output schemas not documented. Tool descriptions do not specify what fields are returned (e.g., reddit_search returns posts with which fields?). LLMs cannot plan downstream tool calls or extract required IDs without guessing.
Descriptions for write/reversible tools are terse and lack actionable error guidance. E.g., reddit_submit_post: 'Creates a real post in a subreddit immediately. No confirmation step.', does not explain what to do if submission fails, rate limits, or validation errors occur.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | B | 73 | 2026-07-28+ | v2 |
Marks one or more inbox items as read.
Search posts across Reddit or within a specific subreddit.
Sends a real private message to a user immediately. No confirmation step.
Posts a real comment reply to a post or comment immediately. No confirmation step.
Creates a real post in a subreddit immediately. No confirmation step.
Casts an upvote, downvote, or clears a vote immediately.
Reversible operations (reddit_vote, reddit_mark_read) lack idempotent hints in tool annotations. Agents cannot determine if retrying a vote or mark-read is safe or will cause duplicate side effects.
Parameter descriptions lack format/constraint details. E.g., 'postId' accepts 'bare (e.g. "1abc2de") or t3_-prefixed fullname' but does not specify regex pattern or length. LLMs may pass invalid formats.