S
Study Assistant MCP
by @MukileshT
MCP server by MukileshT
Created 1/7/2026
Updated 1 day ago
README
Repository documentation and setup instructions
AI Study Assistant with MCP
An intelligent agent system that automatically processes handwritten class notes, organizes them in Notion, and generates personalized daily study plans based on your learning style.
Features
- Automated Note Digitization - Upload photos of handwritten notes
- AI-Powered Analysis - Extract key concepts, summaries, and structure
- Notion Integration - Organized storage with rich formatting
- Personalized Planning - Daily study plans adapted to your learning style
- Smart Prioritization - Focus on what matters most
- 100% Free - Uses free-tier APIs (Gemini, Groq)
Architecture
Photo → Image Processing → OCR (Gemini Vision) → Text Analysis (Groq) → Formatting → Notion Storage → Study Analysis → Daily Plan Generation (Gemini Pro) → Notion
Quick Start
Prerequisites
- Python 3.11 or higher
- Notion account
- API keys (all free):
- Google AI Studio (Gemini)
- Groq Cloud
- Notion Integration
Installation
- Clone the repository
git clone https://github.com/MukileshT/study-assistant-mcp.git
cd study-assistant-mcp
- Create virtual environment
python -m venv .venv
.venv\Scripts\activate
- Install dependencies
pip install -r requirements.txt
- Set up environment variables
cp .env.example .env
# Edit .env with your API keys
-
Get API Keys
Gemini (Google AI Studio):
- Visit: https://ai.google.dev
- Click "Get API Key"
- Copy to
.envasGOOGLE_API_KEY
Groq:
- Visit: https://console.groq.com
- Sign up and get API key
- Copy to
.envasGROQ_API_KEY
Notion:
- Visit: https://www.notion.so/my-integrations
- Create new integration
- Copy token to
.envasNOTION_API_KEY - Create a database in Notion and share it with your integration
- Copy database ID to
.envasNOTION_DATABASE_ID
-
Initialize Notion workspace
python scripts/setup_notion.py
Usage
Upload and Process Notes
# Process a single image
python -m src.main process image.jpg
# Process multiple images
python -m src.main process note1.jpg note2.jpg note3.jpg
# Process all images in a folder
python -m src.main process ./my-notes/
Generate Daily Study Plan
# Generate plan for tomorrow
python -m src.main plan
# Generate plan for specific date
python -m src.main plan --date 2024-01-15
Configure Preferences
# Set learning style
python -m src.main config --learning-style visual
# Set note detail level
python -m src.main config --detail-level detailed
# View current settings
python -m src.main config --show
🎨 Customization
Learning Styles
Choose your learning style in config/user_preferences.json:
- Visual - Emphasis on diagrams, charts, mind maps
- Auditory - Focus on verbal explanations, summaries
- Kinesthetic - Practice problems, hands-on examples
- Reading/Writing - Detailed text, lists, definitions
Note Templates
Customize Notion templates in config/notion_templates.py:
- Header styles
- Metadata fields
- Color schemes
- Organization structure
Development
Project Structure
study-assistant-mcp/
├── config/ # Configuration files
├── src/
│ ├── core/ # Main agent & orchestration
│ ├── models/ # AI model clients
│ ├── processors/ # Image & text processing
│ ├── storage/ # Notion & database
│ ├── planning/ # Study planning logic
│ └── utils/ # Utilities
├── scripts/ # Setup & automation scripts
├── tests/ # Unit tests
└── data/ # Local cache & uploads
Running Tests
# Run all tests
pytest
# Run with coverage
pytest --cov=src tests/
# Run specific test file
pytest tests/test_image_processing.py
Code Quality
# Format code
black src/
# Lint
flake8 src/
# Type checking
mypy src/
Performance
- Note Processing: ~5-10 seconds per image
- Daily Plan Generation: ~3-5 seconds
- API Costs: $0.00 (free tier)
- Daily Limits: ~50 notes, 1 plan (well within free quotas)
Contributing
Contributions welcome! Please:
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Submit a pull request
📄 License
MIT License - see LICENSE file for details
Acknowledgments
- Gemini API by Google
- Groq for fast inference
- Notion for amazing organization tools
- MCP (Model Context Protocol) by Anthropic
upcomming
- [ ] Mobile app support
- [ ] Voice note processing
- [ ] Collaborative study groups
- [ ] Flashcard generation
- [ ] Quiz creation
- [ ] Progress tracking dashboard
Made with 💖 for students who want to study smarter, not harder
Quick Setup
Installation guide for this server
Install Package (if required)
uvx study-assistant-mcp
Cursor configuration (mcp.json)
{
"mcpServers": {
"mukilesht-study-assistant-mcp": {
"command": "uvx",
"args": [
"study-assistant-mcp"
]
}
}
}