Skip to main content
Glama
Hawstein

MCP Server Reddit

by Hawstein

MCP Server Reddit

A Model Context Protocol server providing access to Reddit public API for LLMs. This server enables LLMs to interact with Reddit's content, including browsing frontpage posts, accessing subreddit information, and reading post comments.

This server uses redditwarp to interact with Reddit's public API and exposes the functionality through MCP protocol.

Video Demo (Click to Watch)

A demo in Clinde 👇

MCP Server Reddit - Clinde

Related MCP server: Reddit MCP Server

Available Tools

  • get_frontpage_posts - Get hot posts from Reddit frontpage

    • Optional arguments:

      • limit (integer): Number of posts to return (default: 10, range: 1-100)

  • get_subreddit_info - Get information about a subreddit

    • Required arguments:

      • subreddit_name (string): Name of the subreddit (e.g. 'Python', 'news')

  • get_subreddit_hot_posts - Get hot posts from a specific subreddit

    • Required arguments:

      • subreddit_name (string): Name of the subreddit (e.g. 'Python', 'news')

    • Optional arguments:

      • limit (integer): Number of posts to return (default: 10, range: 1-100)

  • get_subreddit_new_posts - Get new posts from a specific subreddit

    • Required arguments:

      • subreddit_name (string): Name of the subreddit (e.g. 'Python', 'news')

    • Optional arguments:

      • limit (integer): Number of posts to return (default: 10, range: 1-100)

  • get_subreddit_top_posts - Get top posts from a specific subreddit

    • Required arguments:

      • subreddit_name (string): Name of the subreddit (e.g. 'Python', 'news')

    • Optional arguments:

      • limit (integer): Number of posts to return (default: 10, range: 1-100)

      • time (string): Time filter for top posts (default: '', options: 'hour', 'day', 'week', 'month', 'year', 'all')

  • get_subreddit_rising_posts - Get rising posts from a specific subreddit

    • Required arguments:

      • subreddit_name (string): Name of the subreddit (e.g. 'Python', 'news')

    • Optional arguments:

      • limit (integer): Number of posts to return (default: 10, range: 1-100)

  • get_post_content - Get detailed content of a specific post

    • Required arguments:

      • post_id (string): ID of the post

    • Optional arguments:

      • comment_limit (integer): Number of top-level comments to return (default: 10, range: 1-100)

      • comment_depth (integer): Maximum depth of comment tree (default: 3, range: 1-10)

  • get_post_comments - Get comments from a post

    • Required arguments:

      • post_id (string): ID of the post

    • Optional arguments:

      • limit (integer): Number of comments to return (default: 10, range: 1-100)

Installation

Using Clinde (recommended)

The easiest way to use MCP Server Reddit is through the Clinde desktop app. Simply download and install Clinde, then:

  1. Open the Clinde app

  2. Navigate to the Servers page

  3. Find mcp-server-reddit and click Install

That's it! No technical knowledge required - Clinde handles all the installation and configuration for you seamlessly.

When using uv no specific installation is needed. We will use uvx to directly run mcp-server-reddit.

Using PIP

Alternatively you can install mcp-server-reddit via pip:

pip install mcp-server-reddit

After installation, you can run it as a script using:

python -m mcp_server_reddit

Installing via Smithery

To install MCP Server Reddit for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @Hawstein/mcp-server-reddit --client claude

Configuration

Configure for Claude.app

Add to your Claude settings:

"mcpServers": {
  "reddit": {
    "command": "uvx",
    "args": ["mcp-server-reddit"]
  }
}
"mcpServers": {
  "reddit": {
    "command": "python",
    "args": ["-m", "mcp_server_reddit"]
  }
}

Configure for Zed

Add to your Zed settings.json:

"context_servers": [
  "mcp-server-reddit": {
    "command": "uvx",
    "args": ["mcp-server-reddit"]
  }
],
"context_servers": {
  "mcp-server-reddit": {
    "command": "python",
    "args": ["-m", "mcp_server_reddit"]
  }
},

Examples of Questions

  • "What are the current hot posts on Reddit's frontpage?" (get_frontpage_posts)

  • "Tell me about the r/ClaudeAI subreddit" (get_subreddit_info)

  • "What are the hot posts in the r/ClaudeAI subreddit?" (get_subreddit_hot_posts)

  • "Show me the newest posts from r/ClaudeAI" (get_subreddit_new_posts)

  • "What are the top posts of all time in r/ClaudeAI?" (get_subreddit_top_posts)

  • "What posts are trending in r/ClaudeAI right now?" (get_subreddit_rising_posts)

  • "Get the full content and comments of this Reddit post: [post_url]" (get_post_content)

  • "Summarize the comments on this Reddit post: [post_url]" (get_post_comments)

Debugging

You can use the MCP inspector to debug the server. For uvx installations:

npx @modelcontextprotocol/inspector uvx mcp-server-reddit

Or if you've installed the package in a specific directory or are developing on it:

cd path/to/mcp_server_reddit
npx @modelcontextprotocol/inspector uv run mcp-server-reddit

License

mcp-server-reddit is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.

Available Tools

8 tools
get_frontpage_postsC

Get hot posts from Reddit frontpage

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of posts to return (default: 10)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It states the tool gets posts but doesn't mention whether this is a read-only operation, if it requires authentication, rate limits, pagination behavior, or what format the returned posts will have. For a tool that likely makes external API calls, this leaves significant behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise at just 5 words, front-loading the core purpose without any unnecessary elaboration. Every word earns its place by specifying what's being retrieved ('hot posts') and from where ('Reddit frontpage'). There's zero waste in this minimal but complete statement of function.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool likely interacts with an external API (Reddit) and has no annotations or output schema, the description is insufficiently complete. It doesn't explain what 'hot' means algorithmically, whether results are personalized or global, authentication requirements, rate limits, or return format. For a tool with external dependencies and no structured behavioral hints, more context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description mentions no parameters, while the schema has 1 parameter with 100% coverage (including description, default, and constraints). Since schema_description_coverage is high (>80%), the baseline is 3 even without parameter information in the description. The description doesn't add meaning beyond what the schema already provides about the 'limit' parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get hot posts from Reddit frontpage' clearly states the action (get) and resource (hot posts from Reddit frontpage), making the purpose immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'get_subreddit_hot_posts' or 'get_subreddit_top_posts', which could cause confusion about when to use this specific tool versus those alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With siblings like 'get_subreddit_hot_posts' and 'get_subreddit_top_posts' available, there's no indication whether this tool is for the aggregated frontpage versus specific subreddits, or what 'hot' means compared to 'top' or 'new' posts. The lack of context leaves usage decisions ambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_post_commentsC

Get comments from a post

ParametersJSON Schema
NameRequiredDescriptionDefault
post_idYesID of the post
limitNoNumber of comments to return (default: 10)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Get comments from a post' implies a read-only operation, but it doesn't specify authentication needs, rate limits, pagination behavior, or error conditions. For a tool with no annotation coverage, this leaves significant gaps in understanding its operational characteristics.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero wasted words. It's front-loaded with the core purpose and appropriately sized for a simple retrieval tool, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is incomplete for a tool that likely returns structured comment data. It doesn't explain what the return format looks like (e.g., list of comments with fields like author, text, timestamp), error handling, or any dependencies. For a retrieval tool with missing structured context, this is inadequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with clear documentation for both parameters (post_id and limit with default and constraints). The description doesn't add any meaningful semantic context beyond what the schema already provides, such as explaining what constitutes a valid post_id or how comments are ordered. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get comments from a post' clearly states the action (get) and resource (comments from a post), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'get_post_content' which might also retrieve post-related data, so it's not fully distinctive.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With siblings like 'get_post_content' that might retrieve different aspects of a post, there's no indication of when comments are needed versus post content or how this differs from other comment-related tools that might exist in a broader context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_post_contentC

Get detailed content of a specific post

ParametersJSON Schema
NameRequiredDescriptionDefault
post_idYesID of the post
comment_limitNoNumber of top-level comments to return (default: 10)
comment_depthNoMaximum depth of comment tree (default: 3)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states 'Get detailed content' but doesn't clarify what 'detailed content' includes (e.g., post body, metadata, comments), whether it's a read-only operation, potential rate limits, or error handling. This is a significant gap for a tool with no annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It's front-loaded with the core purpose ('Get detailed content of a specific post'), making it easy to parse quickly. Every word earns its place, achieving optimal conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (a post retrieval tool with parameters for comments), no annotations, and no output schema, the description is incomplete. It doesn't explain what 'detailed content' entails, how comments are included, or the return format, leaving gaps that could hinder correct tool invocation by an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all three parameters (post_id, comment_limit, comment_depth) with descriptions, defaults, and constraints. The description adds no additional parameter semantics beyond what the schema provides, meeting the baseline score of 3 for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get' and the resource 'detailed content of a specific post', making the purpose understandable. However, it doesn't explicitly differentiate from sibling tools like 'get_post_comments' or 'get_frontpage_posts', which might also retrieve post-related data, so it lacks sibling differentiation for a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'get_post_comments' or 'get_frontpage_posts'. It doesn't mention prerequisites, exclusions, or specific contexts, leaving the agent with no usage instructions beyond the basic purpose.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_subreddit_hot_postsC

Get hot posts from a specific subreddit

ParametersJSON Schema
NameRequiredDescriptionDefault
subreddit_nameYesName of the subreddit (e.g. 'Python', 'news')
limitNoNumber of posts to return (default: 10)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but offers minimal behavioral context. It doesn't mention whether this is a read-only operation (implied by 'Get'), rate limits, authentication requirements, or what the return format looks like (e.g., list of posts with titles, scores, etc.).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without any unnecessary words. It's perfectly front-loaded and wastes no space.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no annotations and no output schema, the description is insufficient. It doesn't explain what 'hot' means algorithmically, what data is returned, or any behavioral constraints. Given the context of multiple sibling tools with different sorting methods, more completeness is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% description coverage, providing clear documentation for both parameters. The description adds no additional parameter semantics beyond what's already in the schema, so it meets the baseline of 3 for adequate coverage without adding value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and resource ('hot posts from a specific subreddit'), making the purpose immediately understandable. However, it doesn't explicitly differentiate from siblings like 'get_subreddit_new_posts' or 'get_subreddit_top_posts', which would require mentioning the 'hot' sorting algorithm specifically.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With siblings like 'get_subreddit_new_posts' and 'get_subreddit_top_posts' available, there's no indication that this tool retrieves posts sorted by Reddit's 'hot' algorithm rather than other sorting methods.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_subreddit_infoC

Get information about a subreddit

ParametersJSON Schema
NameRequiredDescriptionDefault
subreddit_nameYesName of the subreddit (e.g. 'Python', 'news')

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the action but doesn't cover critical aspects like whether this is a read-only operation, potential rate limits, authentication needs, error conditions, or what specific information is returned (e.g., description, subscriber count). This leaves significant gaps for safe and effective use.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without any fluff or redundancy. It's appropriately sized and front-loaded, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete for a tool that likely returns structured data about a subreddit. It doesn't explain what 'information' includes (e.g., metadata, rules, stats), leaving the agent uncertain about the tool's output and how to use it effectively in context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the parameter 'subreddit_name' clearly documented in the schema itself. The description adds no additional parameter details beyond what the schema provides, so it meets the baseline of 3 for adequate but minimal value in this dimension.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Get') and resource ('information about a subreddit'), making the purpose immediately understandable. However, it doesn't distinguish this tool from its siblings (e.g., 'get_subreddit_hot_posts'), which all involve retrieving subreddit-related data but serve different purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With siblings like 'get_subreddit_hot_posts' that also retrieve subreddit data, there's no indication that this tool is for general metadata versus post listings, leaving the agent to guess based on the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_subreddit_new_postsC

Get new posts from a specific subreddit

ParametersJSON Schema
NameRequiredDescriptionDefault
subreddit_nameYesName of the subreddit (e.g. 'Python', 'news')
limitNoNumber of posts to return (default: 10)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool retrieves posts but omits critical details such as rate limits, authentication requirements, pagination behavior, error handling, or the format of returned data. This leaves significant gaps for an agent to understand how the tool behaves in practice.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's function without unnecessary words. It is front-loaded and wastes no space, making it easy to parse quickly while conveying the core purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete for a tool that likely involves API calls with behavioral nuances. It fails to address key contextual aspects like data format, error conditions, or operational constraints, leaving the agent with insufficient information for reliable use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, clearly documenting both parameters ('subreddit_name' and 'limit') with examples and constraints. The description adds no additional semantic context beyond what the schema provides, so it meets the baseline for adequate but unenhanced parameter information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and resource ('new posts from a specific subreddit'), making the purpose immediately understandable. However, it doesn't explicitly differentiate from siblings like 'get_subreddit_hot_posts' or 'get_subreddit_top_posts' beyond the 'new' qualifier, which is implied but not contrasted.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'get_frontpage_posts' or other subreddit-specific tools (e.g., 'get_subreddit_hot_posts'). It lacks context about what 'new' means (e.g., chronological order, time frame) or any prerequisites, leaving usage entirely implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_subreddit_rising_postsC

Get rising posts from a specific subreddit

ParametersJSON Schema
NameRequiredDescriptionDefault
subreddit_nameYesName of the subreddit (e.g. 'Python', 'news')
limitNoNumber of posts to return (default: 10)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the action but doesn't mention any behavioral traits such as rate limits, authentication requirements, pagination, or what the return format looks like. This is a significant gap for a tool with no annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without any wasted words. It is appropriately sized and front-loaded, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what 'rising' means in Reddit's context, the return format, or any behavioral aspects like error handling. For a tool with two parameters and multiple siblings, more context is needed to be fully helpful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with clear descriptions for both parameters ('subreddit_name' and 'limit'), including defaults and constraints. The description adds no additional parameter semantics beyond what the schema provides, so it meets the baseline of 3 without compensating or detracting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Get') and resource ('rising posts from a specific subreddit'), making the purpose immediately understandable. It distinguishes itself from siblings like 'get_subreddit_hot_posts' or 'get_subreddit_new_posts' by specifying 'rising' posts, though it doesn't explicitly contrast with them in the text.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. With siblings like 'get_subreddit_hot_posts' and 'get_subreddit_new_posts', the description lacks any context about what 'rising' means or when it's preferred over other listing tools, leaving usage decisions ambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_subreddit_top_postsC

Get top posts from a specific subreddit

ParametersJSON Schema
NameRequiredDescriptionDefault
subreddit_nameYesName of the subreddit (e.g. 'Python', 'news')
limitNoNumber of posts to return (default: 10)
timeNoTime filter for top posts (e.g. 'hour', 'day', 'week', 'month', 'year', 'all')

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states what the tool does but provides no information about authentication requirements, rate limits, error conditions, response format, or pagination behavior. For a read operation that likely has API constraints, this is a significant gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that communicates the core purpose without any wasted words. It's appropriately sized for a straightforward tool and gets directly to the point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 3 parameters, no annotations, and no output schema, the description is insufficient. It doesn't explain what 'top' means algorithmically, doesn't describe the return format, and provides no context about authentication or API limitations. The description should do more to compensate for the lack of structured metadata.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all parameters are well-documented in the schema itself. The description adds no additional parameter information beyond what's already in the schema descriptions. This meets the baseline expectation when schema coverage is complete.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get' and resource 'top posts from a specific subreddit', making the purpose immediately understandable. It distinguishes from some siblings like 'get_subreddit_info' or 'get_post_comments', but doesn't explicitly differentiate from other post-fetching siblings like 'get_subreddit_hot_posts' or 'get_subreddit_new_posts'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With siblings like 'get_subreddit_hot_posts', 'get_subreddit_new_posts', and 'get_subreddit_rising_posts' available, there's no indication of what 'top' means or when it's preferable to other sorting methods.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A3.5/5.0
Disambiguation5/5

Every tool has a clearly distinct purpose with no ambiguity. The tools are organized by specific resources (frontpage, subreddit, post) and actions (get posts, get comments, get info), making it easy for an agent to select the right tool for each task without confusion.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern using snake_case, starting with 'get_' followed by a descriptive resource identifier. This predictable naming scheme enhances readability and usability across the entire tool set.

Tool Count5/5

With 8 tools, the server is well-scoped for its Reddit browsing purpose. Each tool earns its place by covering distinct aspects of Reddit content retrieval, from frontpage and subreddit posts to comments and subreddit information, without being overly sparse or bloated.

Completeness4/5

The tool set provides comprehensive coverage for browsing and retrieving Reddit content, including posts, comments, and subreddit info. A minor gap exists in the lack of write operations (e.g., posting or voting), but this is reasonable for a read-focused server, and agents can still perform core browsing workflows effectively.

Maintenance

ActivityInactive
ResponsivenessSlow

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol server that enables AI assistants like Claude to browse and analyze Reddit content, including searching subreddits, retrieving post details with comments, and viewing trending posts.
    9
    MIT
  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    A Model Context Protocol server that enables AI assistants to fetch Reddit content including consensus on topics, top posts, helpful links, and related subreddits.
    2
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides access to public Reddit data through tools for searching subreddits, viewing posts, and reading comments without requiring authentication. It enables Model Context Protocol clients to interact with Reddit's public JSON API via stdio or HTTP transports.
    32
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    A read-only Model Context Protocol server that enables browsing subreddits, searching within subreddits, retrieving comment trees, and looking up user activity on Reddit via natural language.

Latest Blog Posts

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/Hawstein/mcp-server-reddit'

If you have feedback or need assistance with the MCP directory API, please join our Discord server