pullpush-mcp
Provides tools to search Reddit comments and submissions via the PullPush.io API, enabling retrieval of historical Reddit data.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@pullpush-mcpfind recent posts about AI in r/MachineLearning"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
pullpush-mcp
An MCP (Model Context Protocol) server for the PullPush.io Reddit API. This allows Claude and other MCP-compatible AI assistants to search Reddit comments and submissions.
PullPush.io provides access to Reddit's historical data, making it possible to search posts and comments that may no longer be available through Reddit's official API.
Tools
search_comments
Search Reddit comments with the following parameters:
Parameter | Type | Description |
| string | Search query across all comment fields |
| string | Filter by subreddit (without r/ prefix) |
| string | Filter by username |
| string | Results after date (epoch or relative: |
| string | Results before date (epoch or relative: |
|
| Sort order (default: desc) |
|
| Sort field (default: created_utc) |
| number | Results to return (1-100, default: 100) |
search_submissions
Search Reddit posts/submissions with the following parameters:
Parameter | Type | Description |
| string | Search query across all fields |
| string | Filter by subreddit (without r/ prefix) |
| string | Filter by username |
| string | Search in titles only |
| string | Search in post body only |
| string | Results after date (epoch or relative: |
| string | Results before date (epoch or relative: |
|
| Sort order (default: desc) |
|
| Sort field |
| number | Results to return (1-100, default: 25) |
| string | Filter by score ( |
| string | Filter by comment count ( |
| boolean | Filter NSFW content |
| boolean | Filter video posts |
| boolean | Filter locked posts |
| boolean | Filter stickied posts |
| boolean | Filter spoiler posts |
Related MCP server: Reddit MCP Server
Installation
npm (recommended)
npm install -g pullpush-mcpFrom source
git clone https://github.com/jacklenzotti/pullpush-mcp.git
cd pullpush-mcp
npm install
npm run buildUsage with Claude Desktop
Add to your Claude Desktop config file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Using npm (recommended):
{
"mcpServers": {
"pullpush": {
"command": "npx",
"args": ["-y", "pullpush-mcp"]
}
}
}Using a local build:
{
"mcpServers": {
"pullpush": {
"command": "node",
"args": ["/absolute/path/to/pullpush-mcp/build/index.js"]
}
}
}Restart Claude Desktop after updating the config.
Example Prompts
Once configured, you can ask Claude:
"Find all posts by user spez from the last year"
"Search for comments mentioning 'typescript' in r/programming"
"Show me the top 20 posts in r/LocalLLaMA sorted by score"
"Find comments by user GovSchwarzenegger"
"Search r/machinelearning for posts about transformers with more than 100 upvotes"
Development
# Build
npm run build
# Type check
npm run typecheck
# Test with MCP Inspector
npm run inspectAPI Reference
This server uses the PullPush.io API. PullPush provides free access to Reddit's historical data without requiring authentication.
License
MIT
Available Tools
2 toolssearch_commentsC
Search Reddit comments. Supports filtering by subreddit, author, date range, and keyword search.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Search query - searches across all comment fields | |
| size | No | Number of results to return (default: 100, max: 100) | |
| sort | No | Sort order (default: desc) | |
| after | No | Return results after this date. Accepts epoch timestamp or relative date like '30d', '1y' | |
| author | No | Filter by author username | |
| before | No | Return results before this date. Accepts epoch timestamp or relative date like '30d', '1y' | |
| sort_type | No | Field to sort by (default: created_utc) | |
| subreddit | No | Filter by subreddit name (without r/ prefix) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It only says 'supports filtering' without disclosing behavioral details such as authentication requirements, rate limits, result formatting, or pagination behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise with one sentence. It is front-loaded with the action and resource. Slightly more detail could be added without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 8 parameters, no output schema, and no annotations, the description is too minimal. It fails to explain return values, sorting behavior, date format details, or any operational constraints, making it incomplete for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description names a few filters (subreddit, author, date range, keyword) but adds little meaning beyond what the schema already provides. No parameter-level details are given.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool searches Reddit comments and lists supported filters. However, it does not differentiate from the sibling tool 'search_submissions', which has a similar purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 search_submissions. It does not specify exclusions or suggested contexts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_submissionsA
Search Reddit submissions (posts). Supports filtering by subreddit, author, date range, score, and keyword search.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Search query - searches across all submission fields | |
| size | No | Number of results to return (default: 25, max: 100) | |
| sort | No | Sort order (default: desc) | |
| after | No | Return results after this date. Accepts epoch timestamp or relative date like '30d', '1y' | |
| score | No | Filter by score. Use >N, <N, or N for exact match | |
| title | No | Search in submission titles only | |
| author | No | Filter by author username | |
| before | No | Return results before this date. Accepts epoch timestamp or relative date like '30d', '1y' | |
| locked | No | Filter locked posts | |
| over_18 | No | Filter NSFW content (true = only NSFW, false = exclude NSFW) | |
| spoiler | No | Filter spoiler posts | |
| is_video | No | Filter video posts | |
| selftext | No | Search in submission body text only | |
| stickied | No | Filter stickied posts | |
| sort_type | No | Field to sort by (default: created_utc) | |
| subreddit | No | Filter by subreddit name (without r/ prefix) | |
| num_comments | No | Filter by number of comments. Use >N, <N, or N for exact match |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only mentions search and filter capabilities, but omits details like pagination, result format, authentication needs, or rate limits. This under-disclosure is a gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the core purpose. It is efficient with no wasted words, though briefly listing filters could be slightly more structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 17 parameters and no output schema, the description should compensate by explaining return values or pagination behavior. It only lists filters, leaving the agent unaware of result structure. This incompleteness is a notable deficiency.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with each parameter described in the input schema. The description adds no new meaning beyond a high-level list of filter types, so it does not elevate the baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches Reddit submissions (posts), using a specific verb and resource. It also lists supported filter categories, distinguishing it from the sibling tool search_comments.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides context that the tool supports various filters, implying use cases for finding submissions. However, it does not explicitly state when to use or avoid this tool versus alternatives, though the sibling differentiation is clear from the name.
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.
2 tool updates
v1.0.1- First observed
search_comments - First observed
search_submissions
TDQS
Scored across 2 tools
The two tools target distinct Reddit content types: comments and submissions. There is no overlap in purpose, and an agent can easily distinguish between them based on tool names and descriptions.
Both tool names follow the same verb_noun pattern (search_comments, search_submissions), using snake_case and a consistent verb 'search' followed by the target entity.
With only 2 tools, the server is minimal. While appropriate for a focused search-only purpose, it borders on being too thin for broader Reddit interaction, but not extreme.
The server only provides search functionality, lacking tools for retrieving individual posts/comments by ID, creating, updating, or deleting content. Significant gaps exist for a typical Reddit interaction workflow.
Maintenance
Related MCP Connectors
Reddit data for AI agents: posts, comments, subreddits, search. Community + sentiment research.
Read-only Reddit search API for AI agents: posts, comments, comment trees, subreddit rules.
Reddit posts, comments, subreddits, and search for AI agents. Free key, self-minted, no signup.
Browse and manage Reddit posts, comments, and threads. Fetch user activity, explore hot/new/rising…
Related MCP Servers
- AlicenseAqualityBmaintenanceEnables AI assistants to browse Reddit, search posts, analyze user activity, and fetch comments without requiring API keys. Features smart caching, clean data responses, and optional authentication for higher rate limits.51,571 npm828MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to search, monitor, and analyze Reddit's communities and discussions through authenticated API access with intelligent caching and rate limiting.MIT
- AlicenseNot gradedqualityNot gradedmaintenanceEnables AI assistants to interact with Reddit by searching subreddits, retrieving hot posts, and fetching detailed post information with comments through the Reddit API.-
- AlicenseNot gradedqualityDmaintenanceEnables searching Reddit posts, fetching subreddit content, and retrieving post comments without requiring an API key. It uses public JSON endpoints to provide seamless access to Reddit data for LLM-based applications.2 npmMIT