Shiori MCP Server
Enables scanning Gmail inbox for deadline emails and surfacing assignment-related emails.
Enables querying and syncing events from Google Calendar to display deadlines alongside assignments.
Enables fetching and managing assignments and courses from Google Classroom.
Uses Google Gemini AI to generate study plans, quiz questions, and flashcards from study data.
The open-source AI study companion students actually use
Shiori (ζ ) means bookmark in Japanese β because every deadline deserves to be remembered.
π Live Demo β no signup required β

15 pages Β· AI quiz generator Β· SRS flashcards Β· GPA predictor Β· Pomodoro Β· Leaderboard Β· PWA
β Star on GitHub Β Β·Β π Try Demo Β Β·Β π€ MCP Server Β Β·Β π§© Chrome Extension Β Β·Β π dev.to Article Β Β·Β π Get Pro Β Β·Β π Report Bug
π€ New: Shiori MCP Server β use your study data directly in Claude Code.
"What's due this week?""Show my grades""Add assignment: essay due Friday"
πΈ What is Shiori?
Shiori is what Google Classroom should have been.
It syncs your assignments from Google Classroom, hunts deadline emails in Gmail, and hands you an AI study plan powered by Gemini. Track grades with weighted categories, predict your final exam score, generate quizzes from your notes, import an entire semester from your syllabus in one paste, and share your GPA card in one click.
Zero accounts required. Try the full app in 10 seconds with demo mode.
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Google Classroom + Gmail + Google Calendar β
β β β β β
β Shiori AI (Gemini) β
β β β
β 16 pages Β· AI quiz Β· SRS flashcards Β· GPA predictor Β· PWA β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββAt a glance
Feature | What it does | |
π€ | AI Study Plans | Gemini builds a real day-by-day schedule from your deadlines |
π | Syllabus Import | Paste your syllabus β AI extracts every assignment instantly |
π§ | AI Quiz Generator | Open a note β MCQ quiz with explanations in one click |
π | SRS Flashcards | Anki-style spaced repetition, CSV/Quizlet import, AI card gen |
π | GPA Predictor | Weighted categories + "What score do I need on the final?" |
π | Markdown Notes | Per-course notes, AI summarizer, auto-save, export .md |
π | Leaderboard | Compare study streaks with friends via shareable codes |
β± | Focus Mode | Fullscreen Pomodoro with ambient orbs + motivational quotes |
π₯ | Habit Tracker | Daily grid, streak tracking, confetti on full completion |
π§© | Chrome Extension | Quick-add, Pomodoro, and Classroom import from any tab |
π± | PWA | Install on mobile, works offline |
π¨ | Dark / Light Mode | Midnight study room or clean light mode |
Your credentials stay local. No data harvesting. No mandatory subscriptions. MIT licensed.
β¨ Features
π Assignment & Schedule Intelligence
Feature | Description |
Google Classroom Sync | Pulls assignments and due dates the moment they're posted |
Gmail Intelligence | Scans your inbox and surfaces buried deadline emails |
Calendar Integration | Shows assignment deadlines as colored dots alongside your events |
iCal Export | Export your assignments as |
π€ AI-Powered Planning
Feature | Description |
AI Study Plans | Gemini generates a real day-by-day schedule from your actual deadlines |
AI Chat | Ask anything β Shiori knows your real assignments and schedule |
PDF Study Plan Export | Export your AI-generated schedule as a branded PDF |
Smart Prioritization | High/medium/low priority auto-assigned based on due date and estimated hours |
π Grade Tracking
Feature | Description |
Live GPA Dashboard | Per-course grades, letter grades, and cumulative GPA calculated live |
Weighted Categories | Set Homework 30% / Midterm 35% / Final 35% β GPA recalculates automatically |
Final Exam Predictor | "What score do I need on the final to get an A?" β answered instantly |
Shareable GPA Card | Generate a beautiful 900Γ520 PNG report card to share anywhere |
π Notes
Feature | Description |
Per-Course Notes | Color-coded notes linked to each course |
Markdown Editor |
|
Auto-Save | Notes save automatically 600ms after you stop typing |
Export as Markdown | Download any note as a |
Pin Notes | Keep important notes at the top of your list |
π Flashcards & Spaced Repetition
Feature | Description |
Flashcard Decks | Create decks per course, add unlimited Q&A cards |
3D Card Flip | Tap to reveal answer with a smooth 3D perspective animation |
Spaced Repetition (SRS) | Cards you miss come back sooner; mastered cards push to 1d β 2d β 5d intervals |
Streak Tracking | 3+ correct in a row = mastered π; session stats shown after each study session |
AI Card Generation | Click "AI CARDS" in Notes editor β Gemini reads your notes and creates Q&A flashcards instantly |
CSV Import | Paste any tab/comma-separated text β works with Quizlet export, Anki CSV, or plain text |
Due-Now Counter | Dashboard shows how many cards are ready for review |
π§ AI Quiz Generator
Feature | Description |
Generate from Notes | Open any note β click "Generate Quiz" β Gemini creates MCQ questions from your study material |
Paste Custom Text | Paste any text and get a quiz in seconds |
5 / 8 / 10 questions | Choose difficulty length |
MCQ with Explanations | 4 options per question + AI explains why each answer is right or wrong |
Keyboard-driven | Press 1β4 to select, Enter to confirm/advance |
Score History | Quiz results saved locally β track improvement over time |
Score Ring Animation | Animated circular progress ring on results screen |
π₯ Habit Tracker
Feature | Description |
Daily Habit Grid | 7-day completion grid for any habit you want to build |
Streak Counter | Per-habit fire emoji streak β don't break the chain |
Color-coded habits | Pick a color per habit, add/delete freely |
Confetti celebration | Complete all habits for the day β confetti burst π |
β±οΈ Focus & Productivity
Feature | Description |
Pomodoro Timer | Focus sessions tied to specific assignments, with session history |
Sound Notifications | Distinct tones for focusβbreak and breakβfocus transitions (Web Audio, no downloads) |
Progress Share Card | Canvas-rendered 900Γ500 PNG with your GPA, focus time, and completion rate β download and share |
Keyboard Shortcut Modal | Press |
Keyboard Shortcuts |
|
π¨ Design
Feature | Description |
Dark / Light Theme | Toggle between midnight study room and clean light mode |
Midnight Study Room | Dark glassmorphism with floating orbs β built for late-night sessions |
Framer Motion | Smooth, purposeful animations throughout |
Custom fonts | Space Grotesk headings Β· Manrope body Β· Press Start 2P retro accents |
Demo Mode β full app with 5 courses, 10 assignments, grades, events β zero setup
β‘ Try it in 10 seconds
1. Visit https://shiori-v1.vercel.app
2. Click "TRY DEMO"
3. You're in β no account, no API keys, no AppwriteDemo mode loads: 5 courses Β· 10 assignments Β· grades with GPA calc Β· upcoming events Β· AI-generated study plan
π Self-Host
Prerequisites
Node.js v18+
npm v9+
Google Cloud project with Classroom + Gmail + Calendar APIs enabled
Google Gemini API key (free)
Appwrite instance (free cloud tier works)
Setup
git clone https://github.com/kaorii-ako/Shiori-v1.git
cd Shiori-v1
npm install
cp .env.example .env
# Fill in your keys β see .env.example for the full guide
npm run dev
# Frontend: http://localhost:5173 | Backend: http://localhost:3001Required environment variables
GEMINI_API_KEY= # Google AI Studio (free)
GOOGLE_CLIENT_ID= # Google OAuth 2.0
GOOGLE_CLIENT_SECRET= # Google OAuth 2.0
APPWRITE_ENDPOINT= # Your Appwrite URL
APPWRITE_PROJECT_ID= # Your Appwrite project
SESSION_SECRET= # Any random stringπ Tech Stack
Layer | Technology |
Frontend | React 18, Vite, Framer Motion, Tailwind CSS |
State | Zustand + zustand/persist |
Backend | Express.js (Node.js) |
AI | Google Gemini 1.5 Flash |
Auth | Appwrite + Google OAuth 2.0 |
Google APIs | Classroom, Gmail, Calendar |
jsPDF (client-side, no server needed) | |
Icons | Lucide React |
π Project Structure
Shiori-v1/
βββ client/ # React frontend (Vite)
β βββ src/
β βββ components/ # GlassCard, Button, Sidebar, AIChat, PomodoroTimer...
β βββ pages/ # Landing, Home, Assignments, Calendar, Grades, StudyPlans, Notes
β βββ stores/ # Zustand (auth, assignments, grades, notes, pomodoro, ui)
β βββ hooks/ # useKeyboardShortcuts
β βββ utils/ # pdfExport, icalExport, demoData
βββ server/ # Express backend
β βββ routes/ # ai, auth, classroom, gmail, calendar, stripe
β βββ services/ # Google OAuth & API wrappers
βββ .env.example # Environment template
βββ package.json # npm workspaces rootπΊ Roadmap
v1.0 β Core app: Classroom sync, Gmail, Calendar, AI plans, Grade tracker
v1.1 β Demo mode Β· Public landing page Β· Pro pricing
v1.2 β Pomodoro timer Β· Study streak Β· Live GPA dashboard
v1.3 β Final exam predictor Β· Calendar assignment overlay
v1.4 β iCal export Β· PDF export (study plan + assignments) Β· Keyboard shortcuts
v1.5 β Weighted grade categories Β· Shareable GPA card Β· Notes with markdown
v1.6 β Flashcards with spaced repetition (SRS) Β· 3D card flip Β· AI card generation from notes
v1.7 β Habit tracker Β· Analytics dashboard Β· Progress share card Β· Dark/light theme toggle
v1.8 β Keyboard shortcut modal (?) Β· Pomodoro sounds Β· Client-side Gemini API key
v1.9 β Chrome extension: Pomodoro + quick-add + Google Classroom import
v2.0 β AI Quiz Generator Β· PWA service worker Β· Student testimonials Β· Email waitlist Β· Confetti on habit completion
v2.1 β Syllabus Import (paste syllabus β AI extracts all assignments) Β· AI Note Summarizer Β· SEO overhaul
v2.2 β Firefox extension Β· Chrome Web Store release Β· Shiori Cloud (fully hosted)
v2.3 β Mobile app (React Native / Expo)
Have an idea? Open a feature request β
π Shiori Pro
Want the hosted version β no setup, unlimited AI, and premium features?
Free (Self-hosted) | Pro (Cloud) | |
Google Classroom sync | β | β |
AI Study Plans | 5/month | Unlimited |
AI Chat | 10/day | Unlimited |
PDF Export | β | β |
GPA Share Card | β | β |
Notes (Markdown) | β | β |
Email Reminders | β | β |
Priority support | β | β |
Price | Free forever | ΰΈΏ199/month |
π€ Contributing
Contributions are very welcome!
# Fork, then:
git checkout -b feature/your-feature-name
git commit -m "feat: describe what you added"
git push origin feature/your-feature-name
# Open a PR!Open an issue first for big changes. See CONTRIBUTING.md for guidelines.
Good first issues: good first issue
π€ Author
Built by @kaorii-ako
ζ β bookmark the things that matter.
If Shiori saves you even one all-nighter, please give it a β
This server cannot be installed
Maintenance
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/kaorii-ako/Shiori-v1'
If you have feedback or need assistance with the MCP directory API, please join our Discord server