Skip to main content
Glama
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).

Maintenance

ActivityMaintained
ResponsivenessSyncing