# Google Classroom — MCP server on mcp.ai > Google Classroom is a free web service developed by Google for schools that aims to simplify creating, distributing, and grading assignments By: mcp.ai · official Page: https://mcp.ai/google_classroom ## Connect (MCP protocol) Remote MCP endpoint (HTTP, streamable): https://api.mcp.ai/p_google_classroom?ms=1781542320000 Add it as a custom/remote MCP connector, then authenticate when prompted. ## REST API (no MCP client required) Every tool is also a REST endpoint, authed with a workspace API key. Discover: GET https://api.mcp.ai/api/google_classroom/_endpoints # public; lists every endpoint Call: POST https://api.mcp.ai/api/google_classroom/ Authorization: Bearer sk_live_… # create one at https://mcp.ai/settings/api-keys Content-Type: application/json Body: { …args } → { "ok": true, "tool": "", "result": { … } } ## Developer docs How to use (MCP or REST), markdown: https://mcp.ai/google_classroom/skill.md Postman collection (v2.1): https://mcp.ai/google_classroom/postman.json ## Tools - google_classroom_classrooms_course_work_materials_list(orderBy?: string, courseId: string, pageSize?: integer, pageToken?: string) — Tool to list courseworkmaterials in a course. use after confirming a valid courseid; supports pagination and ordering. - google_classroom_course_work_create(state?: string, title: string, dueDate?: object, dueTime?: object, topicId?: string, courseId: string, workType: string, materials?: object[], maxPoints?: number, assignment?: object, description?: string, scheduledTime?: string, shortAnswerQuestion?: object, multipleChoiceQuestion?: object, submissionModificationMode?: string) — Tool to create a coursework item in a course. use when you need to assign an assignment or question to students immediately or on a schedule. - google_classroom_course_work_delete(id: string, courseId: string) — Tool to delete a specific coursework. use when you need to remove a coursework item from a course after confirming the ids. - google_classroom_course_work_get(id: string, courseId: string) — Tool to get details of a specific coursework. use when detailed information about a particular assignment is needed. - google_classroom_course_work_list(orderBy?: string, courseId: string, pageSize?: integer, pageToken?: string, previewVersion?: string, courseWorkStates?: string[]) — Tool to list coursework in a course. use after verifying courseid. - google_classroom_course_work_materials_create(state: string, title?: string, topicId?: string, courseId: string, materials?: object[], description?: string, assigneeMode?: string, scheduledTime?: string, associatedWithDeveloper?: boolean, individualStudentsOptions?: object) — Tool to create course work material. use when adding resources or notes to a course. - google_classroom_course_work_materials_get(id: string, courseId: string) — Tool to get a coursework material. use when you need to retrieve details of a specific coursework material by course and material id. - google_classroom_course_work_materials_list(orderBy?: string, courseId: string, pageSize?: integer, pageToken?: string) — Tool to list course work materials in a course. use when you need to retrieve and paginate materials for a given courseid. - google_classroom_course_work_patch(id: string, title?: string, dueDate?: object, dueTime?: object, topicId?: string, courseId: string, workType?: string, maxPoints?: number, updateMask: string, description?: string, scheduledTime?: string) — Tool to update fields of a coursework. use when you need to modify specific details of an existing coursework after confirming which fields to update. - google_classroom_course_work_student_submissions_list(late?: string, states?: string[], userId?: string, courseId: string, pageSize?: integer, pageToken?: string, courseWorkId: string) — Tool to list student submissions for a specific coursework. use when you need to fetch or paginate student submissions by course and coursework, optionally filtering by user, state, or timeliness. - google_classroom_course_work_student_submissions_reclaim(id: string, courseId: string, courseWorkId: string) — Tool to reclaim a student submission for editing. use after a student requests to edit their turned-in submission, resetting its state to created. - google_classroom_courses_announcements_create(text?: string, state?: string, courseId: string, materials?: object[], assigneeMode?: string, scheduledTime?: string, individualStudentsOptions?: object) — Tool to create an announcement in a course. use after confirming the course id is valid. - google_classroom_courses_announcements_delete(id: string, courseId: string) — Tool to delete an announcement. use after confirming the announcement id. - google_classroom_courses_announcements_get(id: string, courseId: string) — Tool to get an announcement. use when you need to fetch an announcement by course and announcement id. - google_classroom_courses_announcements_list(orderBy?: string, courseId: string, pageSize?: integer, pageToken?: string) — Tool to list announcements in a course. use after you have the course id to page through announcements. - google_classroom_courses_announcements_patch(id: string, text?: string, state?: string, courseId: string, materials?: object[], updateMask: string, assigneeMode?: string, scheduledTime?: string, individualStudentsOptions?: object) — Tool to update fields of an announcement. use when you need to modify specific details of an existing announcement after confirming which fields to update. - google_classroom_courses_create(name: string, room?: string, ownerId: string, section?: string, courseState?: string, description?: string, descriptionHeading?: string) — Tool to create a new course. use when a teacher needs to establish a classroom course before enrollment. - google_classroom_courses_delete(id: string) — Tool to delete a course. use when you need to remove a course after confirming the course id. - google_classroom_courses_get(id: string) — Tool to get details for a specific course. use when you need full course information by id. - google_classroom_courses_list(pageSize?: integer, pageToken?: string, studentId?: string, teacherId?: string, courseStates?: string[]) — Tool to list all courses accessible to the authenticated user. use when you need a paginated list of courses. - google_classroom_courses_patch(id: string, name?: string, room?: string, ownerId?: string, section?: string, updateMask: string, courseState?: string, description?: string, descriptionHeading?: string) — Tool to update one or more fields of a classroom course. use after retrieving course details and confirming fields to update. - google_classroom_courses_students_guardians_list(courseId: string, pageSize?: integer, pageToken?: string, studentId: string) — Tool to list guardians of a student in a course. use when you need to retrieve and paginate guardians for a given student in a course. - google_classroom_courses_students_list(courseId: string, pageSize?: integer, pageToken?: string) — Tool to list students in a course. use after you have the course id to page through enrolled students. - google_classroom_courses_teachers_get(fields?: string, userId: string, courseId: string, quotaUser?: string) — Tool to get teacher enrollment. use when you need to retrieve a specific teacher in a course by courseid and userid. - google_classroom_courses_teachers_list(courseId: string, pageSize?: integer, pageToken?: string) — Tool to list teachers in a course. use after you have the course id to page through enrolled teachers. - google_classroom_courses_topics_create(name: string, courseId: string) — Tool to create a course topic. use when you need to organize course content into named sections. - google_classroom_courses_topics_delete(id: string, courseId: string) — Tool to delete a course topic. use when you need to remove a topic from a course after confirming the course and topic ids. - google_classroom_courses_topics_get(id: string, courseId: string) — Tool to get a course topic. use when you need to retrieve details of a specific course topic by id after confirming the course and topic ids. - google_classroom_courses_topics_list(courseId: string, pageSize?: integer, pageToken?: string) — Tool to list topics in a course. use when you have confirmed the courseid and need to retrieve its topics. - google_classroom_courses_topics_patch(id: string, name?: string, courseId: string, updateMask?: string) — Tool to update fields of a course topic. use when you need to rename a topic after confirming its current details. - google_classroom_invitations_create(role: string, userId: string, courseId: string) — Tool to create an invitation for a user to a course. use after confirming the course id is valid. ## Links Docs: https://mcp.ai/docs/mcps/google_classroom Website: https://mcp.ai/mcps/google_classroom