A Model Context Protocol (MCP) server that provides tools for fetching Reddit content, including frontpage posts, subreddit information and hot posts, post details, and comments.
Server provides 8 well-named, read-only Reddit tools with complete JSON schemas and reasonable descriptions. All tools follow verb_noun naming (get_*, consistent with 90% baseline). Schemas include proper types, descriptions, and constraints (min/max on limits). However, descriptions are generic (avg ~60 chars, below 194-char baseline) and lack context on WHEN to use each tool or dependencies between them. No error handling guidance, no output schema documentation, and parameter descriptions are minimal. Tools are properly composed (single responsibility) but lack enrichment hints for multi-step agent workflows.
Get hot posts from Reddit frontpage
Get comments from a post
Get detailed content of a specific post including comments
Get hot posts from a specific subreddit
Get information about a subreddit
Get new posts from a specific subreddit
Get rising posts from a specific subreddit
Descriptions lack context on tool selection and dependencies. 'Get hot posts from Reddit frontpage' does not explain WHEN to use this vs get_subreddit_hot_posts, or that it requires no parameters. Descriptions average ~60 chars vs 194-char baseline.
No output schema documentation. Tools return Pydantic models (Post, Comment, SubredditInfo, PostDetail) but LLMs cannot see the field structure. Agents cannot plan downstream calls or extract required fields without trial-and-error.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 57 | 2026-07-28+ | v2 |
Get top posts from a specific subreddit
No error handling guidance. If a subreddit does not exist or is private, the tool will fail silently or return a generic exception. Descriptions do not explain what errors are possible or how to recover (e.g., 'Try search_subreddits() if not found').
Parameter 'time' in get_subreddit_top_posts lacks enum constraint. Description says 'e.g. day, week, month, year, all' but does not enforce these as the only valid values. LLMs may hallucinate invalid time periods like 'fortnight' or 'quarter'.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). All tools are read-only and idempotent, but this is not declared in the schema. Agents cannot infer safety properties without explicit hints.