Metadata-Version: 2.4
Name: iflow-mcp_sinanefeozler-reddit-summarizer-mcp
Version: 0.1.0
Summary: Reddit summarizer mcp server
License: MIT
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: asyncpraw>=7.8.1
Requires-Dist: httpx>=0.28.1
Requires-Dist: mcp[cli]>=1.11.0
Requires-Dist: python-dotenv>=1.1.1
Dynamic: license-file

# Reddit Summarizer MCP Server
A Model Context Protocol (MCP) server for summarizing homepage of the user or contents of subreddits and comments on posts.
## Features
- Summarize user's reddit frontpage (homepage) with or without comment analyses.
- Summarize a subreddit contents by inspecting posts sorted by hot, new, top, rising, random (if aviable) with or without comment analysis.
- Summarize comments on a post.
## Requirements
- Python 3.12 or higher
- uv package manager (recommended)
- Reddit API credentials
- MCP client (e.g. Claude Desktop)
## Installation
Clone repository or download files manually.
```bash
git clone https://github.com/sinanefeozler/reddit-summarizer-mcp.git
cd reddit-summarizer-mcp
```
Create virtual envoriment and install dependencies.
```bash
uv venv
source .venv/bin/activate
uv sync
```
### Setting Up The Envoriment Variables
- This server needs reddit username, password and reddit authentication.
- You can get client id and client secret by following [these steps](https://github.com/reddit-archive/reddit/wiki/OAuth2-Quick-Start-Example#first-steps)
- When you get the required keys create .env file according to .env.example
For claude desktop client users check out this [link](https://modelcontextprotocol.io/quickstart/user) to setup the server.
## Available Tools
### `summarize_frontpage`
Summarize user's homepage with post limits and optional comment analyse on posts.
Parameters:
- `limit` (default: 10): Post fetching limit
- `with_comments` (default: false): Summarize with comments on posts
### `summarize_subreddit`
Summarize a subreddit's contents by inspecting posts.
Parameters:
- `limit` (default: 10): Post fetching limit
- `with_comments` (default: false): Summarize with comments on posts
- `fetch_by` (default: 'hot') : Sorting option for posts. (hot, new, top, rising, random if aviable)
### `reed_comments`
Reed and summarize comments on a post. Needs post id or url.
Parameters:
- `id` (default: None) : id of post
- `url` (default: None) : url of post
- `limit` (default: 15) : fetching limit of the comments
## Prompts
### Example Prompts:
- "Summarize my reddit frontpage with comment analyse for deeper understanding of public opinion"
- "Summarize the hot post of Politics"
### Prompt Template:
#### `/summarize_my_page`
Provides a prompt to summarize and categorize the posts and comments on frontpage. Gives LLM a predefined template and categorize to make a more human readable outputs.
## License
MIT
