ClassroomScribe
README.md
# 🎓 ClassroomScribe: Google Classroom MCP Server
Google Classroom integration for LLMs and AI agents (MCP). Pulls course lists, active coursework, announcements, and organizes upcoming assignments into prioritized TODO summaries.
---
## 🛠️ MCP Tools Exposed
1. **`list_courses`**: Lists all active classes you are enrolled in (returns Course names and IDs).
2. **`list_assignments`**: Shows upcoming and past assignments across all classes or for a specific course ID.
3. **`get_announcements`**: Fetches the latest stream posts and announcements for a specific class.
4. **`summarize_todo`**: Gathers all pending assignments, calculates the time left, and structures them into a prioritized list.
---
## 🚀 Setup & Launch
1. **Enable the Classroom API:**
Ensure Google Classroom API is enabled on your credentials project in the Google Cloud Console.
2. **Authenticate Scopes:**
Run the local OAuth flow script:
```bash
./auth.py
```
*Follow the browser prompts to authenticate the Classroom read-only scopes. This creates your local `token.json`.*
3. **Run the MCP Server:**
```bash
python3 classroom_server.py
```
---
## 📂 File Layout
* `auth.py`: Initial OAuth 2.0 flow handler.
* `classroom_server.py`: FastMCP server exposing Google Classroom tools.
* `credentials.json`: OAuth Client ID secrets (git-ignored).
* `token.json`: Generated authorization tokens (git-ignored).
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessSyncing