Skip to main content
Glama
Reddit MCP Server

Reddit MCP Server

by eliasbiondo

reddit_search_subreddit

Search posts within a chosen subreddit using keywords and return matching Reddit results; set result limit and sort by relevance, hot, top, new, or comments.

Instructions

Search within a specific subreddit.

Args: subreddit: Subreddit name without r/ prefix (e.g., 'Python', 'MachineLearning') query: Search keywords limit: Maximum number of results to return (default: 25, max: 100) sort: Sort order for results (relevance, hot, top, new, comments)

Returns: An object with a 'results' array.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "subreddit": "<subreddit>",
      "query": "<query>"
    },
    "name": "reddit_search_subreddit"
  }
}

Input Schema

NameRequiredDescriptionDefault
sortNo
limitNo
queryYes
subredditYes

Output Schema

NameRequiredDescriptionDefault
resultsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changedv0.2.1
    • addedOutput schema / description
      Added value: +"Tool response for search queries."
    • removedOutput schema / properties / result
      Removed value: -{
      -  "items": {
      -    "additionalProperties": true,
      -    "type": "object"
      -  },
      -  "type": "array"
      -}
    • addedOutput schema / properties / results
      Added value: +{
      +  "items": {
      +    "additionalProperties": true,
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "result"
      -]New value: +[
      +  "results"
      +]
    • removedOutput schema / x-fastmcp-wrap-result
      Removed value: -true
  2. First observedv0.1.2

TDQS

A3.7/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full behavioral burden. It does disclose result-shape ('results' array), the default limit of 25 and the max of 100, and the valid sort modes — useful operational context — but says nothing about pagination, rate limits, or whether private/quarantined subreddits are reachable.

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

Conciseness4/5

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

The lead sentence front-loads the purpose, and the Args/Returns block is scannable with no filler. The docstring scaffolding is slightly more verbose than a prose paragraph would be, but every line carries information.

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

Completeness3/5

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

For a simple four-parameter read operation with an output schema present, the description covers parameters and call mechanics adequately. What it lacks is routing context — how results differ from reddit_search or a subreddit post listing — which an agent needs before choosing this tool.

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

Parameters5/5

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

Schema coverage is 0%, so the description must do all the work, and it does: subreddit format ('without r/ prefix', with examples), query meaning, limit default and ceiling, and the enumerated sort values (relevance, hot, top, new, comments) — none of which appear as an enum in the schema.

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?

States a specific verb and scoped resource: 'Search within a specific subreddit', which is clearly narrower than a global search and clearly different from a post-listing tool. It doesn't name any sibling (reddit_search, reddit_get_subreddit_posts) to sharpen the distinction, so it stops short of 5.

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

Usage Guidelines3/5

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

Usage is only implied by the phrase 'within a specific subreddit' — an agent can infer this is the scoped variant of reddit_search, but nothing states when to prefer it over reddit_search (global) or reddit_get_subreddit_posts (browse without keywords). No exclusions or prerequisites are given.

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