🎓 Classroom Suite MCP
A unified MCP (Model Context Protocol) server for Google Workspace education tools - seamlessly integrate Google Classroom, Google Drive, and Google Docs with AI assistants like Claude.
✨ Features
| Service | Tools | Description |
|---|---|---|
| 📚 Classroom | 6 | Manage courses, assignments, and submissions |
| 📁 Drive | 7 | Create, upload, download, and share files |
| 📝 Docs | 4 | Create, read, edit documents and export to PDF |
17 tools total - Everything you need for education automation!
🚀 Installation
Using uvx (Recommended)
uvx classroom-suite-mcp
Using pip
pip install classroom-suite-mcp
From Source
git clone https://github.com/YOUR_USERNAME/classroom-suite-mcp.git
cd classroom-suite-mcp
pip install -e .
🔐 Google Cloud Setup
Before using this server, you need to set up Google Cloud credentials:
1. Create a Google Cloud Project
- Go to Google Cloud Console
- Create a new project or select an existing one
- Enable the following APIs:
- Google Classroom API
- Google Drive API
- Google Docs API
2. Create OAuth Credentials
- Go to APIs & Services > Credentials
- Click Create Credentials > OAuth client ID
- Select Desktop app as the application type
- Download the credentials as
credentials.json
3. Configure the Server
Place credentials.json in your working directory, or set the path:
export GOOGLE_CREDENTIALS_PATH=/path/to/credentials.json
On first run, a browser window will open for OAuth authentication.
⚙️ Configuration
Environment Variables
| Variable | Default | Description |
|---|---|---|
GOOGLE_CREDENTIALS_PATH |
credentials.json |
Path to OAuth credentials file |
GOOGLE_TOKEN_PATH |
token.json |
Path to store auth token |
Claude Desktop Configuration
Add to your claude_desktop_config.json:
{
"mcpServers": {
"classroom-suite": {
"command": "uvx",
"args": ["classroom-suite-mcp"]
}
}
}
Or with pip installation:
{
"mcpServers": {
"classroom-suite": {
"command": "classroom-suite-mcp"
}
}
}
🛠️ Available Tools
Google Classroom (6 tools)
| Tool | Description |
|---|---|
list_courses |
List all enrolled courses |
get_course |
Get course details |
list_assignments |
List course assignments |
get_assignment |
Get assignment details |
list_submissions |
List assignment submissions |
submit_assignment |
Submit work with attachments |
Google Drive (7 tools)
| Tool | Description |
|---|---|
list_files |
List files and folders |
search_files |
Search by name or content |
create_folder |
Create a new folder |
upload_file |
Upload a file |
download_file |
Download a file |
share_file |
Share with users or publicly |
delete_file |
Move to trash or delete |
Google Docs (4 tools)
| Tool | Description |
|---|---|
create_doc |
Create a new document |
read_doc |
Read document content |
update_doc |
Append, prepend, or replace text |
export_pdf |
Export as PDF |
📖 Usage Examples
With Claude
You: List my Google Classroom courses
Claude: I'll list your courses using the classroom-suite-mcp tools.
[Uses list_courses tool]
Here are your courses:
1. Introduction to Computer Science (ACTIVE)
2. Data Structures and Algorithms (ACTIVE)
...
Common Workflows
Check assignments and submit:
1. list_courses → Get course ID
2. list_assignments → Find pending assignment
3. create_doc → Create solution document
4. submit_assignment → Submit with Drive file
Organize course materials:
1. create_folder → Create organized folder
2. upload_file → Upload materials
3. share_file → Share with classmates
🧪 Development
Running Locally
# Clone the repository
git clone https://github.com/YOUR_USERNAME/classroom-suite-mcp.git
cd classroom-suite-mcp
# Install dependencies
pip install -e .
# Run with stdio transport (for MCP clients)
classroom-suite-mcp
# Run with HTTP transport (for testing)
classroom-suite-mcp --transport http --port 8000
Testing with MCP Inspector
npx @anthropic-ai/mcp-inspector classroom-suite-mcp
📄 License
MIT License - see LICENSE for details.
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
📬 Support
- Issues: GitHub Issues
- Discussions: GitHub Discussions
Made with ❤️ for educators and students
Release files for classroom-suite-mcp 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| classroom_suite_mcp-1.0.0.tar.gz | 102.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| classroom_suite_mcp-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 118.7 kB
Release files / classroom_suite_mcp-1.0.0.tar.gz
| Download URL | classroom_suite_mcp-1.0.0.tar.gz |
|---|---|
| Size | 102.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c5a34da9f6e9dfcbf1f50c70731b9962fc812ec6f3cac01d041a8b87176c6eab
|
|
BLAKE2b-256 checksum How to use checksums |
3debff533d358e0a97c45fd6e6a7d1cb560cae3019a3f4a45f38fac342b5f4d6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.6.14
|
Release files / classroom_suite_mcp-1.0.0-py3-none-any.whl
| Download URL | classroom_suite_mcp-1.0.0-py3-none-any.whl |
|---|---|
| Size | 15.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
69b630432c870fc7418b9dc84910002a0b5dc5fca1b40eb5c081cc861aaf9826
|
|
BLAKE2b-256 checksum How to use checksums |
c12870c1406393d981c0c0af878d64bb3b43d70eaea513cfec1189491c0a101b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.6.14
|