Skip to main content
Glama
Hawstein

MCP Server Reddit

by Hawstein

MCP 服务器 Reddit

铁匠徽章

一个模型上下文协议服务器,为 LLM 提供访问 Reddit 公共 API 的权限。该服务器使 LLM 能够与 Reddit 的内容进行交互,包括浏览首页帖子、访问子版块信息以及阅读帖子评论。

该服务器使用redditwarp与 Reddit 的公共 API 进行交互,并通过 MCP 协议公开功能。

视频演示(点击观看)

Clinde 的演示👇

MCP 服务器 Reddit - Clinde

Related MCP server: Reddit MCP Server

可用工具

  • get_frontpage_posts - 从 Reddit 首页获取热门帖子

    • 可选参数:

      • limit (整数):返回的帖子数量(默认值:10,范围:1-100)

  • get_subreddit_info - 获取有关 subreddit 的信息

    • 必需参数:

      • subreddit_name (字符串):子版块的名称(例如“Python”、“news”)

  • get_subreddit_hot_posts - 获取特定 subreddit 的热门帖子

    • 必需参数:

      • subreddit_name (字符串):子版块的名称(例如“Python”、“news”)

    • 可选参数:

      • limit (整数):返回的帖子数量(默认值:10,范围:1-100)

  • get_subreddit_new_posts - 从特定 subreddit 获取新帖子

    • 必需参数:

      • subreddit_name (字符串):子版块的名称(例如“Python”、“news”)

    • 可选参数:

      • limit (整数):返回的帖子数量(默认值:10,范围:1-100)

  • get_subreddit_top_posts - 获取特定 subreddit 的热门帖子

    • 必需参数:

      • subreddit_name (字符串):子版块的名称(例如“Python”、“news”)

    • 可选参数:

      • limit (整数):返回的帖子数量(默认值:10,范围:1-100)

      • time (字符串):热门帖子的时间过滤器(默认值:'',选项:'小时','天','周','月','年','全部')

  • get_subreddit_rising_posts - 获取特定 subreddit 的热门帖子

    • 必需参数:

      • subreddit_name (字符串):子版块的名称(例如“Python”、“news”)

    • 可选参数:

      • limit (整数):返回的帖子数量(默认值:10,范围:1-100)

  • get_post_content - 获取特定帖子的详细内容

    • 必需参数:

      • post_id (字符串):帖子的 ID

    • 可选参数:

      • comment_limit (整数):返回的顶级评论数(默认值:10,范围:1-100)

      • comment_depth (整数):评论树的最大深度(默认值:3,范围:1-10)

  • get_post_comments - 获取帖子评论

    • 必需参数:

      • post_id (字符串):帖子的 ID

    • 可选参数:

      • limit (整数):返回的评论数量(默认值:10,范围:1-100)

安装

使用Clinde (推荐)

使用 MCP Server Reddit 最简单的方法是通过 Clinde 桌面应用。只需下载并安装 Clinde,然后:

  1. 打开 Clinde 应用

  2. 导航到服务器页面

  3. 找到 mcp-server-reddit 并点击安装

就是这样!无需任何技术知识 - Clinde 会为您无缝处理所有安装和配置。

使用 uv(推荐)

使用uv时无需特殊安装。我们将使用uvx直接运行mcp-server-reddit 。

使用 PIP

或者,您可以通过 pip 安装mcp-server-reddit :

pip install mcp-server-reddit

安装后,您可以使用以下命令将其作为脚本运行:

python -m mcp_server_reddit

通过 Smithery 安装

要通过Smithery自动为 Claude Desktop 安装 MCP Server Reddit:

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

配置

为 Claude.app 配置

添加到您的 Claude 设置:

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

为 Zed 配置

添加到您的 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"]
  }
},

问题示例

  • “Reddit 首页上当前的热门帖子有哪些?” (get_frontpage_posts)

  • “告诉我关于 r/ClaudeAI 子版块的信息”(get_subreddit_info)

  • “r/ClaudeAI 子版块中的热门帖子有哪些?” (get_subreddit_hot_posts)

  • “显示来自 r/ClaudeAI 的最新帖子”(get_subreddit_new_posts)

  • “r/ClaudeAI 上历来最热门的帖子有哪些?” (get_subreddit_top_posts)

  • “r/ClaudeAI 上现在哪些帖子最热门?” (get_subreddit_rising_posts)

  • “获取此 Reddit 帖子的完整内容和评论:[post_url]”(get_post_content)

  • “总结此 Reddit 帖子的评论:[post_url]”(get_post_comments)

调试

您可以使用 MCP 检查器来调试服务器。对于 uvx 安装:

npx @modelcontextprotocol/inspector uvx mcp-server-reddit

或者,如果您已将软件包安装在特定目录中或正在其上进行开发:

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

执照

mcp-server-reddit 采用 MIT 许可证。这意味着您可以自由使用、修改和分发该软件,但须遵守 MIT 许可证的条款和条件。更多详细信息,请参阅项目仓库中的 LICENSE 文件。

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.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 8 tool updates
    • First observedget_frontpage_posts
    • First observedget_post_comments
    • First observedget_post_content
    • First observedget_subreddit_hot_posts
    • First observedget_subreddit_info
    • First observedget_subreddit_new_posts
    • First observedget_subreddit_rising_posts
    • First observedget_subreddit_top_posts

TDQS

A3.5/5.0

Scored across 8 tools

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
ResponsivenessUnresponsive

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.
    16 npm
    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.
    -