Unified MCP server for Google Classroom, Drive, and Docs - seamlessly integrate education tools with AI assistants
Project description
🎓 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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file classroom_suite_mcp-1.0.0.tar.gz.
File metadata
- Download URL: classroom_suite_mcp-1.0.0.tar.gz
- Upload date:
- Size: 102.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c5a34da9f6e9dfcbf1f50c70731b9962fc812ec6f3cac01d041a8b87176c6eab
|
|
| MD5 |
f669ee2ae214f42ae32fcee8a68d16d1
|
|
| BLAKE2b-256 |
3debff533d358e0a97c45fd6e6a7d1cb560cae3019a3f4a45f38fac342b5f4d6
|
File details
Details for the file classroom_suite_mcp-1.0.0-py3-none-any.whl.
File metadata
- Download URL: classroom_suite_mcp-1.0.0-py3-none-any.whl
- Upload date:
- Size: 15.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
69b630432c870fc7418b9dc84910002a0b5dc5fca1b40eb5c081cc861aaf9826
|
|
| MD5 |
736aabafcad99ee48224e45b87f94156
|
|
| BLAKE2b-256 |
c12870c1406393d981c0c0af878d64bb3b43d70eaea513cfec1189491c0a101b
|