Skip to main content
Glama
README.md
<p align="center">
  <img src="https://img.shields.io/badge/🚀-LearnFlow_AI-blueviolet?style=for-the-badge&labelColor=black" alt="LearnFlow AI"/>
</p>

<h1 align="center">🎓 LearnFlow AI</h1>
<h3 align="center">Your AI-Powered Learning Companion | Learn. Build. Play. 🚀</h3>

<p align="center">
  <img src="https://img.shields.io/badge/License-MIT-green.svg" alt="License"/>
  <img src="https://img.shields.io/badge/Node.js-18+-brightgreen.svg" alt="Node"/>
  <img src="https://img.shields.io/badge/MCP-Compatible-blue.svg" alt="MCP"/>
  <img src="https://img.shields.io/badge/YouTube_API-v3-red.svg" alt="YouTube"/>
  <img src="https://img.shields.io/badge/AI_Powered-Claude-orange.svg" alt="Claude"/>
</p>

<p align="center">
  <b>Free • Open Source • Learn Anything • No Limits</b>
</p>

---

## 🌟 What is LearnFlow AI?

**LearnFlow AI** is a revolutionary **MCP (Model Context Protocol) server** that transforms how you learn programming and technology. It connects directly to **Claude AI** and gives it superpowers to:

- 🎯 **Find the BEST YouTube tutorials** for any topic
- 📚 **Generate personalized learning paths** for ANY skill
- 🔍 **Filter videos by quality** (80%+ positive comments only!)
- ⏱️ **Create time-based study plans** (1 hour, weekend, daily micro-learning)
- 🎓 **Track your learning progress**
- 🆕 **Stay updated** with latest tech news and features

> **"Learn anything, build everything, pay nothing."** 💪

---

## 🎬 Why LearnFlow AI?

| Problem | LearnFlow AI Solution |
|---------|----------------------|
| 😵 Overwhelmed by YouTube tutorials | 🎯 AI finds the BEST videos, filters out junk |
| 📚 Don't know where to start | 🗺️ Auto-generated learning roadmaps |
| ⏰ No time to learn | ⚡ 15-min daily micro-learning plans |
| 💸 Can't afford courses | 🆓 100% free YouTube-based learning |
| 📅 No structure | 📋 Week-by-week curriculum with projects |
| 🤔 Outdated content | 🆕 Finds recent, up-to-date tutorials |

---

## 🚀 Quick Start (5 Minutes Setup!)

### Prerequisites

- **Node.js 18+** - [Download here](https://nodejs.org/)
- **YouTube Data API Key** - [Get free key here](https://console.cloud.google.com/apis/credentials)
- **Claude Desktop** - [Download here](https://claude.ai/download)

### Step 1: Clone & Install

```bash
# Clone the repository
git clone https://github.com/Shalin-Shah-2002/Yt-MCP.git

# Navigate to project
cd Yt-MCP

# Install dependencies
npm install
```

### Step 2: Get YouTube API Key (Free!)

1. Go to [Google Cloud Console](https://console.cloud.google.com/)
2. Create a new project (or select existing)
3. Enable **YouTube Data API v3**
4. Go to **Credentials** → **Create Credentials** → **API Key**
5. Copy your API key

### Step 3: Configure Claude Desktop

Add this to your Claude Desktop config file:

**macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
**Windows:** `%APPDATA%\Claude\claude_desktop_config.json`

```json
{
  "mcpServers": {
    "learnflow-ai": {
      "command": "node",
      "args": ["/FULL/PATH/TO/Yt-MCP/src/server.js"],
      "env": {
        "YOUTUBE_API_KEY": "YOUR_API_KEY_HERE"
      }
    }
  }
}
```

> 💡 Replace `/FULL/PATH/TO/Yt-MCP` with actual path and add your API key!

### Step 4: Restart Claude Desktop

Close and reopen Claude Desktop. You should see **LearnFlow AI** tools available! 🎉

---

## 🛠️ All Features & Tools (27 Total!)

### 📹 YouTube Tools (14 Tools)

| Tool | Description |
|------|-------------|
| `search_youtube` | Search YouTube videos with smart ranking |
| `get_video_details` | Get comprehensive video info |
| `analyze_video` | Deep analysis with quality score & recommendations |
| `get_video_comments` | Analyze comment sentiment |
| `get_video_timestamps` | Extract chapters/timestamps |
| `compare_videos` | Side-by-side video comparison |
| `get_related_videos` | Find similar content |
| `get_video_transcript` | Get video transcript/summary info |
| `get_full_transcript` | Fetch complete video transcript |
| `analyze_channel` | Deep channel analysis |
| `get_channel_info` | Basic channel information |
| `set_youtube_api_key` | Set API key at runtime |
| `get_api_key_status` | Check API key status |
| `check_api_quota` | Monitor API usage |

### 🎓 Learning Path Tools (3 Tools)

| Tool | Description |
|------|-------------|
| `generate_learning_path` | Create week-by-week curriculum for ANY topic |
| `get_available_paths` | See suggested learning categories |
| `get_path_info` | Get details about a learning path |

### 🧠 Smart Learning Tools (10 Tools)

| Tool | Description |
|------|-------------|
| `smart_search` | Quality-filtered search (80%+ positive comments) |
| `generate_smart_roadmap` | AI-powered learning roadmap |
| `get_video_trust_score` | Calculate video quality score |
| `generate_topic_curriculum` | Detailed curriculum with phases |
| `get_prerequisites` | What to learn before a topic |
| `get_next_steps` | What to learn after completing topic |
| `find_best_video` | Find single best video for a topic |
| `get_learning_progress` | Track your learning journey |
| `update_learning_progress` | Mark topics as complete |
| `get_trending_in_tech` | Discover trending tech topics |

---

## 💬 18 Built-in Prompts for Learning

### 🎯 Quick Learning Prompts

| Prompt | What It Does |
|--------|--------------|
| `find-best-recent` | Find BEST and most RECENT videos on any topic |
| `learn-in-one-hour` | Learn any topic in 60 minutes |
| `learn-before-tomorrow` | Emergency crash course for deadlines |
| `weekend-deep-dive` | Master a topic over the weekend (6-10 hrs) |
| `daily-micro-learning` | 15-20 min daily learning habit |

### 📚 Structured Learning Prompts

| Prompt | What It Does |
|--------|--------------|
| `create-learning-journey` | Personalized multi-week learning path |
| `weekly-study-plan` | Detailed plan for one week |
| `skill-assessment` | Assess your current level |
| `continue-learning` | Pick up where you left off |
| `quick-refresh` | Quick refresher on known topics |

### 🔍 Research & Discovery Prompts

| Prompt | What It Does |
|--------|--------------|
| `deep-dive-topic` | Comprehensive research on a topic |
| `compare-technologies` | Compare frameworks/languages |
| `whats-new-in` | Latest updates in any technology |
| `explain-like-im-five` | Simple explanations for complex topics |

### 🛠️ Project & Career Prompts

| Prompt | What It Does |
|--------|--------------|
| `project-roadmap` | Learn by building real projects |
| `code-along-project` | Find best build-along tutorials |
| `interview-prep` | Prepare for technical interviews |
| `debug-learning` | Get help when stuck |

---

## 📖 How to Use LearnFlow AI

### Example 1: Learn React in One Hour

Just ask Claude:
```
Use the learn-in-one-hour prompt with topic="React hooks"
```

### Example 2: Weekend Python Mastery

```
Use the weekend-deep-dive prompt with topic="Python" total_hours="8" include_project="yes"
```

### Example 3: Find Best Recent Tutorials

```
Use find-best-recent prompt with topic="Next.js 14" recency="this-month"
```

### Example 4: Generate Full Learning Path

```
Use generate_learning_path tool with goal="Machine Learning" level="beginner"
```

### Example 5: Emergency Interview Prep

```
Use learn-before-tomorrow prompt with topic="System Design" purpose="interview" hours_available="4"
```

### Example 6: Daily Learning Habit

```
Use daily-micro-learning prompt with topic="TypeScript" daily_minutes="20" days="7"
```

---

## 🎯 Learning Paths for Any Topic!

LearnFlow AI can generate learning paths for **ANY topic**. The system is fully dynamic!

### Suggested Categories:
- 🌐 Web Development
- 📱 Mobile Development
- 🤖 Machine Learning
- 📊 Data Science
- ⚙️ DevOps
- ☁️ Cloud Computing
- 🔒 Cybersecurity
- 🎮 Game Development
- ⛓️ Blockchain
- 🎨 UI/UX Design

### Popular Technologies:
React, Vue, Angular, Next.js, Node.js, TypeScript, Flutter, React Native, Swift, Kotlin, Python, TensorFlow, PyTorch, Docker, Kubernetes, AWS, Azure, and **many more!**

### Three Skill Levels:
- 🌱 **Beginner** (6 weeks) - Start from zero
- 🌿 **Intermediate** (6 weeks) - Level up your skills
- 🌳 **Advanced** (8 weeks) - Become an expert

---

## 🏗️ Project Architecture

```
Yt-MCP/
├── src/
│   ├── server.js              # MCP server entry point
│   ├── config/
│   │   └── config.js          # Configuration management
│   ├── controllers/
│   │   ├── youtubeController.js
│   │   ├── learningPathController.js
│   │   └── smartLearningController.js
│   ├── models/
│   │   ├── TopicTree.js       # Dynamic topic suggestions
│   │   └── LearningPath.js    # Learning path structure
│   ├── services/
│   │   ├── youtubeService.js  # YouTube API integration
│   │   ├── learningPathService.js
│   │   └── smartLearningService.js
│   ├── prompts/
│   │   └── promptManager.js   # 18 built-in prompts
│   └── utils/
│       ├── videoFormatter.js
│       └── errorHandler.js
├── package.json
└── README.md
```

---

## 🔧 Configuration Options

### Environment Variables

| Variable | Description | Required |
|----------|-------------|----------|
| `YOUTUBE_API_KEY` | Your YouTube Data API key | Yes |

### Runtime Configuration

You can also set the API key through Claude:
```
Use set_youtube_api_key tool with apiKey="YOUR_KEY"
```

Check your API status:
```
Use get_api_key_status tool
```

---

## 🎮 Fun Ways to Use LearnFlow AI

### 🏆 Challenge Mode
"I want to learn Docker in one weekend. Create an intensive plan with a project!"

### 📅 Daily Streak
"Set up a 30-day JavaScript challenge with 20 minutes daily learning"

### 🆚 Tech Battle
"Compare React vs Vue vs Angular for a beginner who wants to get a job quickly"

### 🚀 Speed Run
"I have an interview tomorrow about Kubernetes. Emergency crash course please!"

### 🎯 Skill Tree
"Create a complete Full Stack Developer roadmap from zero to hero"

---

## 🔧 Development

### Run in Development Mode
```bash
npm run dev
```

### Run Tests
```bash
npm test
```

### Check Syntax
```bash
node --check src/server.js
```

### Test Individual Components
```bash
# Test transcript service
node test-transcript.mjs

# Test prompts
node -e "import('./src/prompts/promptManager.js').then(m => console.log(new m.PromptManager().listPrompts()))"
```

---

## 🌟 What Makes LearnFlow AI Special?

### ✨ Quality First
Only recommends videos with **80%+ positive comments**. No more wasting time on bad tutorials!

### 🎯 Personalized
Adapts to YOUR skill level, time availability, and learning style.

### 🆓 Completely Free
Uses free YouTube content + free YouTube API. No subscriptions, no hidden costs.

### 🤖 AI-Powered
Leverages Claude AI to understand your needs and create perfect learning plans.

### 📱 Any Topic
Not limited to pre-defined paths. Learn **literally anything** from Kubernetes to Origami!

### ⏱️ Time-Aware
Whether you have 15 minutes or a whole weekend, LearnFlow creates the perfect plan.

---

## 📊 API Quota Information

YouTube Data API has a free quota of **10,000 units/day**. Typical usage:

| Action | Cost |
|--------|------|
| Search | 100 units |
| Video details | 1 unit |
| Comments | 1 unit |

This means you can do approximately **100 searches per day** for free!

---

## 🐛 Troubleshooting

### "API Key not configured"
Make sure you've set `YOUTUBE_API_KEY` in your Claude Desktop config or use the `set_youtube_api_key` tool.

### "Claude doesn't show LearnFlow tools"
1. Check the config file path is correct
2. Restart Claude Desktop completely
3. Check the path to `server.js` is absolute

### "Quota exceeded"
You've hit the daily YouTube API limit. Wait 24 hours or create a new API key.

---

## 🗺️ Roadmap

- [ ] 📊 Learning analytics dashboard
- [ ] 🔄 Playlist support
- [ ] 📝 Note-taking integration
- [ ] 🎯 Quiz generation from videos
- [ ] 📱 Mobile companion app
- [ ] 🌍 Multi-language support

---

## 🤝 Contributing

We welcome contributions! Feel free to:
- 🐛 Report bugs
- 💡 Suggest features
- 🔧 Submit PRs
- ⭐ Star the repo

### How to Contribute
1. Fork the repository
2. Create your feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request

---

## 📄 License

MIT License - Use it, modify it, share it! 🎉

---

## 🙏 Acknowledgments

- **YouTube Data API** - For access to the world's largest video library
- **Anthropic Claude** - For the amazing MCP protocol
- **Open Source Community** - For inspiration and support

---

<p align="center">
  <b>🎓 Start Learning Today!</b><br><br>
  <i>"The best time to learn was yesterday. The second best time is now."</i>
</p>

<p align="center">
  <br>
  Made with ❤️ by <a href="https://github.com/Shalin-Shah-2002">Shalin Shah</a>
</p>

<p align="center">
  <br>
  <a href="https://github.com/Shalin-Shah-2002/Yt-MCP">⭐ Star this repo if it helps you learn something new!</a>
</p>

---

<p align="center">
  <b>🚀 Let's Learn Together! 🚀</b>
</p>