Google Classroom MCP
Provides comprehensive tools for managing Google Classroom environments, including the lifecycle management of courses, teacher and student rosters, invitations, topics, announcements, coursework, and student submissions.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Google Classroom MCPlist all assignments and due dates for my History 101 course"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Google Classroom MCP (local)
This MCP server exposes multiple tools for read + write:
classroom_get_user_enrollmentsclassroom_get_courseclassroom_list_coursesclassroom_create_courseclassroom_update_courseclassroom_set_course_stateclassroom_archive_courseclassroom_activate_courseclassroom_delete_courseclassroom_list_course_studentsclassroom_list_course_teachersclassroom_add_teacher_to_courseclassroom_remove_teacher_from_courseclassroom_add_student_to_courseclassroom_remove_student_from_courseclassroom_list_invitationsclassroom_get_invitationclassroom_create_invitationclassroom_delete_invitationclassroom_accept_invitationclassroom_list_course_topicsclassroom_create_topicclassroom_create_announcementclassroom_list_coursework_materialsclassroom_create_coursework_materialclassroom_list_courseworkclassroom_create_assignmentclassroom_clone_courseclassroom_list_student_submissionsclassroom_set_draft_gradeclassroom_set_assigned_gradeclassroom_turn_in_submissionclassroom_reclaim_submissionclassroom_return_submission
1) Google Workspace setup
Create (or choose) a Google Cloud project.
Enable Google Classroom API.
Create a Service Account and download its JSON key.
Enable Domain-wide delegation on that service account.
In Google Admin Console, go to
Security > API controls > Domain-wide delegationand add:Client ID: service account client ID
OAuth scopes (comma-separated):
https://www.googleapis.com/auth/classroom.courses.readonlyhttps://www.googleapis.com/auth/classroom.courseshttps://www.googleapis.com/auth/classroom.rosters.readonlyhttps://www.googleapis.com/auth/classroom.rostershttps://www.googleapis.com/auth/classroom.profile.emailshttps://www.googleapis.com/auth/classroom.topics.readonlyhttps://www.googleapis.com/auth/classroom.topicshttps://www.googleapis.com/auth/classroom.announcementshttps://www.googleapis.com/auth/classroom.coursework.students.readonlyhttps://www.googleapis.com/auth/classroom.coursework.studentshttps://www.googleapis.com/auth/classroom.coursework.mehttps://www.googleapis.com/auth/classroom.courseworkmaterials.readonlyhttps://www.googleapis.com/auth/classroom.courseworkmaterials
Ensure the delegated admin user can read Classroom data in your domain.
Related MCP server: gsuite
2) Local install
cd /home/carlos/classroom-mcp
bash setup.sh
cp .env.example .env
# edit .envOptional policy in .env:
CLASSROOM_REQUIRED_TEACHERS=osvalin15@certificacionmontessori.com,online@asociacionmontessori.mx
CLASSROOM_OBSOLETE_TEACHERS=presidencia@asociacionmontessori.mxWhen set, these teachers are auto-added for:
classroom_create_courseclassroom_clone_course
Obsolete filter behavior:
classroom_list_coursesandclassroom_get_user_enrollmentsexclude courses that include any teacher fromCLASSROOM_OBSOLETE_TEACHERS.If
CLASSROOM_OBSOLETE_TEACHERSis not set, default exclusion ispresidencia@asociacionmontessori.mx.Set
CLASSROOM_OBSOLETE_TEACHERS=(empty) to disable this filter.
3) Register in Codex
codex mcp add classroom -- /home/carlos/classroom-mcp/run.sh
codex mcp list4) Example prompt in Codex
En qué materias está registrado el usuario guiarodrigo@asociacionmontessori.mx?5) Smoke test (portable)
Run the full write-path smoke test with automatic cleanup:
cd /home/carlos/classroom-mcp
./smoke_test.shYou can override inputs with flags:
./smoke_test.sh \
--teacher-email carlos@certificacionmontessori.com \
--student-email carlos@asociacionmontessori.com.mx \
--course-id 765463029199Or set defaults in .env:
SMOKE_TEST_TEACHER_EMAILSMOKE_TEST_STUDENT_EMAILSMOKE_TEST_COURSE_ID
Keep generated artifacts (no cleanup) only when debugging:
./smoke_test.sh --keep-artifacts6) Admin smoke test (course lifecycle + invitations)
This covers the newer admin tools:
create/update/archive/activate/delete course
add/remove teacher
create/get/list/accept/delete invitation
cd /home/carlos/classroom-mcp
./admin_smoke_test.shWith explicit inputs:
./admin_smoke_test.sh \
--admin-email admin@asociacionmontessori.com.mx \
--teacher-email carlos@certificacionmontessori.com \
--student-email carlos@asociacionmontessori.com.mxDefaults can live in .env:
ADMIN_SMOKE_ADMIN_EMAILADMIN_SMOKE_TEACHER_EMAILADMIN_SMOKE_STUDENT_EMAIL
7) Clone course example (MCP)
Use the new tool to clone structure + content safely as drafts:
classroom_clone_course(
source_course_id="844288618274",
new_course_name="Copia de F12 - Lenguaje",
teacher_emails=["carlos@certificacionmontessori.com"],
student_emails=["carlos@asociacionmontessori.com.mx"],
copy_topics=true,
copy_coursework=true,
copy_coursework_materials=true,
force_draft_for_created_work=true
)Notes
If the user exists outside your Workspace domain, Google may return 403/404.
If you need archived courses too, ask with
course_state="ARCHIVED".acting_user_emaillets you impersonate a teacher/admin for operations that require role-specific permissions.classroom_create_announcementdoes not support real Classroom topic binding; iftopic_idis sent, it is appended as text marker.classroom_create_coursedefaults toPROVISIONEDfor safer setup before going live.classroom_create_coursedefaultsownerIdtoacting_user_email(orGOOGLE_WORKSPACE_ADMIN_EMAIL) when not provided.classroom_delete_coursepermanently deletes the course; preferclassroom_archive_coursewhen in doubt.classroom_clone_coursecreates a new course and can copy topics, coursework, and course work materials with optional teacher/student enrollment.classroom_clone_coursedefaultsforce_draft_for_created_work=trueto avoid publishing cloned content unexpectedly.
This server cannot be deployed
Maintenance
Related MCP Connectors
The Google Compute Engine MCP server is a fully-managed Model Context Protocol server that provides tools to manage Google Compute Engine resources through AI agents. It enables capabilities including instance management (creating, starting, stopping, resetting, listing), disk management, handling instance templates and group managers, viewing machine and accelerator types, managing images, and accessing reservation and commitment information. The server operates as a zero-deployment, enterprise-grade endpoint at https://compute.googleapis.com/mcp with built-in IAM-based security.
Read-only MCP server for ClassQuill, a tutoring-business-management platform.
The Google GKE MCP server is a managed Model Context Protocol server that provides AI applications with tools to manage Google Kubernetes Engine (GKE) clusters and Kubernetes resources. It exposes a structured, discoverable interface that allows AI agents to interact with GKE and Kubernetes APIs, enabling them to inspect cluster configurations, retrieve Kubernetes resource YAMLs, monitor operations like cluster upgrades, diagnose issues, and optimize costs—all without needing to parse text output or use complex kubectl commands.
Your whole business as one MCP server: analytics, CRM, SEO, ads, revenue. Scoped per data class.
Related MCP Servers
- FlicenseBqualityDmaintenanceMCP server providing full access to Google Workspace services (Gmail, Drive, Calendar, Docs, Sheets, Slides, Forms, Tasks, Contacts) using OAuth authentication.1001-
- AlicenseBqualityCmaintenanceComprehensive Google Workspace MCP server with Gmail, Drive, Calendar, and Contacts integration.266 npmMIT
- FlicenseNot gradedqualityDmaintenanceMCP server for Google Classroom enabling reading assignments, checking submission states, uploading files to Drive, and viewing attachments, with optional Playwright automation for write operations restricted by Workspace admins.-
- AlicenseAqualityDmaintenanceUnified MCP server for Google Classroom, Drive, and Docs, enabling AI assistants to manage courses, assignments, files, and documents.17MIT