google-classroom-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GOOGLE_CLASSROOM_CLIENT_SECRET | No | Path to client secret. Default: <config>/client_secret.json | |
| GOOGLE_CLASSROOM_MCP_CONFIG_DIR | No | Folder for configuration. Default: ~/.config/google-classroom-mcp |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_accountsA | Cuentas de Google configuradas (alias y correo). Sin conexión a la API. |
| get_profileB | Verifica la conexión y devuelve el usuario autenticado de cada cuenta (o de la indicada). |
| list_coursesA | Cursos de Classroom en los que estás inscrito como alumno. Sin account recorre todas las cuentas configuradas. |
| list_pending_assignmentsA | Tareas que aún no has entregado (estado NEW, CREATED o RECLAIMED_BY_STUDENT), agrupadas por cuenta y curso y ordenadas por fecha límite. Sin account ni course_id revisa todos los cursos activos de todas las cuentas. Incluye si ya venció. |
| get_course_contentsA | Trabajo de clase de un curso agrupado por tema: tareas (con el estado de tu entrega y calificación), preguntas y materiales. Acepta el id o la URL del curso. |
| get_assignmentA | Detalle de una tarea o pregunta: instrucciones, fecha límite, puntos, materiales adjuntos y el estado de tu entrega (archivos, calificación). Acepta la URL completa (https://classroom.google.com/c/XXX/a/YYY/details) o el id de la tarea junto con course_id. |
| list_announcementsC | Anuncios del tablón de un curso, del más reciente al más antiguo. |
| submit_assignmentA | Adjunta archivos de Drive (ids o URLs de Drive) y/o enlaces a tu entrega de una tarea y, si turn_in=True, la entrega. Para subir un archivo local a Drive primero usa el servidor MCP de Google Drive y pasa aquí su id. Úsala solo cuando el usuario lo pida explícitamente. |
| reclaim_submissionB | Retira una entrega ya enviada (equivale a "Anular entrega") para poder modificarla. Misma restricción de Google que submit_assignment. Úsala solo si el usuario lo pide. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 9 tools
Each tool targets a distinct resource and action: accounts, profile, courses, pending assignments, course contents, single assignment, announcements, submission, and reclaim. Even account-related tools differ clearly in purpose: one lists local configuration, the other verifies authentication.
All tool names follow a consistent lowercase verb_noun pattern (list_, get_, submit_, reclaim_). No mixed conventions or vague verbs appear.
Nine tools is well-scoped for a student-facing Google Classroom server, covering viewing, retrieving, submitting, and un-submitting without unnecessary bloat.
Core student workflows are covered: list courses, see pending work, inspect assignments, view announcements, and submit/reclaim. A minor gap is that there is no aggregate list of all assignments including completed/graded ones across courses; get_course_contents fills this per course but requires a course id.