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_name (文字列): サブレディットの名前 (例: 'Python'、'news')

  • get_subreddit_hot_posts - 特定のサブレディットから人気の投稿を取得する

    • 必要な引数:

      • subreddit_name (文字列): サブレディットの名前 (例: 'Python'、'news')

    • オプションの引数:

      • limit (整数): 返される投稿の数 (デフォルト: 10、範囲: 1-100)

  • get_subreddit_new_posts - 特定のサブレディットから新しい投稿を取得する

    • 必要な引数:

      • subreddit_name (文字列): サブレディットの名前 (例: 'Python'、'news')

    • オプションの引数:

      • limit (整数): 返される投稿の数 (デフォルト: 10、範囲: 1-100)

  • get_subreddit_top_posts - 特定のサブレディットからトップの投稿を取得する

    • 必要な引数:

      • subreddit_name (文字列): サブレディットの名前 (例: 'Python'、'news')

    • オプションの引数:

      • limit (整数): 返される投稿の数 (デフォルト: 10、範囲: 1-100)

      • time (文字列): トップ投稿の時間フィルター (デフォルト: ''、オプション: 'hour'、'day'、'week'、'month'、'year'、'all')

  • get_subreddit_rising_posts - 特定のサブレディットから注目の投稿を取得する

    • 必要な引数:

      • 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 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.
    -