Sign inSign up

hackerdogs/reddit-mcp

By hackerdogs

Updated 3 months ago

Reddit MCP Server

Image
0

213

hackerdogs/reddit-mcp repository overview

Hackerdogs
hackerdogs

Reddit MCP Server

MCP server wrapper for mcp-server-reddit — read-only Reddit access for browsing subreddits, searching posts, and reading comment threads.

What is Reddit MCP Server?

The mcp-server-reddit package exposes Reddit's public read API through MCP, letting AI assistants fetch hot/new/top posts from any subreddit, search across Reddit by keyword, and retrieve full comment threads without requiring Reddit API credentials. It uses Reddit's public JSON endpoints.

No API keys required — this server works out of the box using Reddit's anonymous public feeds.

Tools Reference

ToolDescription
get_frontpage_postsGet Frontpage Posts
get_subreddit_infoGet Subreddit Info
get_subreddit_hot_postsGet Subreddit Hot Posts
get_subreddit_new_postsGet Subreddit New Posts
get_subreddit_top_postsGet Subreddit Top Posts
get_subreddit_rising_postsGet Subreddit Rising Posts
get_post_contentGet Post Content
get_post_commentsGet Post Comments

Example Prompts

Here are example prompts you can use with Claude (or any MCP client) when this tool is connected:

  • "Show me the top 10 posts in r/netsec from this week."
  • "Search Reddit for recent discussions about CVE-2024-3400."
  • "Fetch the comments on this Reddit post and summarize the key opinions."
  • "What are the hot posts in r/MachineLearning right now?"
  • "Find Reddit threads discussing the pros and cons of using Rust for systems programming."
  • "Get the top posts from r/AskNetsec and identify the most common security questions being asked."

Deploy

docker-compose up -d
Docker Run (stdio mode)
docker run -i --rm hackerdogs/reddit-mcp:latest
Docker Run (HTTP streamable mode)
docker run -d -p 8661:8661 \
  -e MCP_TRANSPORT=streamable-http \
  -e MCP_PORT=8661 \
  hackerdogs/reddit-mcp:latest

MCP Client Configuration

Stdio mode (default)

Add to your Claude Desktop or Cursor MCP config:

{
  "mcpServers": {
    "reddit-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "MCP_TRANSPORT",
        "hackerdogs/reddit-mcp:latest"
      ],
      "env": {
        "MCP_TRANSPORT": "stdio"
      }
    }
  }
}
HTTP mode (streamable-http)

First, start the server using Docker Compose or docker run with HTTP mode (see Deploy above), then point your MCP client at the running server:

{
  "mcpServers": {
    "reddit-mcp": {
      "url": "http://localhost:8661/mcp"
    }
  }
}

When to use HTTP mode: HTTP mode is ideal for shared/remote deployments, multi-user setups, and Hackerdogs scheduled prompts. The server runs as a long-lived process and accepts connections from multiple MCP clients concurrently.

Environment Variables

VariableDefaultDescription
MCP_TRANSPORTstdioTransport mode: stdio or streamable-http
MCP_PORT8661HTTP port (only used with streamable-http)

Installing in Hackerdogs

The fastest way to get started is through Hackerdogs:

  1. Log in to your Hackerdogs account.
  2. Go to the Tools Catalog.
  3. Search for the tool by name.
  4. Expand the tool card and click Install — you're ready to go.

Give it a couple of minutes to go live. Then start querying by asking Hackerdogs to use the tool explicitly. If you don't specify, Hackerdogs will automatically choose the best tool for the job.

  1. Vendor API key required? Add your key in the config environment variable field before clicking Install. Your key will be encrypted at rest.
  2. Enable / Disable the tool anytime from the Enabled Tools page.
  3. Need to update a key or parameter? Go to My Tools → toggle Show Decrypted Values → edit → Save.

Want to contribute or chat with the team? Join our Discord.

Build

docker build -t hackerdogs/reddit-mcp:latest .

Testing

Automated tests
./test.sh
Test directly with Docker

1. Start the server in HTTP mode:

docker run -d --rm --name reddit-mcp-test -p 8661:8661 \
  -e MCP_TRANSPORT=streamable-http \
  hackerdogs/reddit-mcp:latest

2. Initialize the MCP session:

SESSION_ID=$(curl -s -D - -X POST http://localhost:8661/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"0.1"}}}' \
  2>&1 | grep -i mcp-session-id | awk '{print $2}' | tr -d '\r\n')

curl -s -X POST http://localhost:8661/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "mcp-session-id: $SESSION_ID" \
  -d '{"jsonrpc":"2.0","method":"notifications/initialized"}'

3. List available tools:

curl -s -X POST http://localhost:8661/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "mcp-session-id: $SESSION_ID" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}'

4. Clean up:

docker stop reddit-mcp-test

Tag summary

Content type

Image

Digest

sha256:30e0e019c

Size

185.2 MB

Last updated

3 months ago

docker pull hackerdogs/reddit-mcp