Google Classroom for AI agents

Google Classroom is Google's tool for teachers to create, distribute, and grade assignments in schools. Educators use it to manage coursework and enrollment without manual paperwork. Connect it once through Arc0, and your agent, or Claude, ChatGPT and Cursor, can use it through one MCP endpoint, limited to what each user approved.

EducationOAuth 2.0MCP + RESTclassroom.google.com
AUDIT LOG · GOOGLE CLASSROOMPOLICY: acme-support
09:41:07 · claude · u_8f2read
google_classroom.list_courses_student_groups
List Course Student Groups✓ allowed · 212ms
09:41:08 · claude · u_8f2read
google_classroom.get_coursework_addon_attachment
Get CourseWork Add-on Attachment✓ allowed · 164ms
09:41:09 · claude · u_8f2write
google_classroom.courses_get
Get Course✓ approved · approved by user
09:41:12 · claude · u_8f2destructive
google_classroom.courses_delete
Delete Course✕ blocked · policy: deny
EVERY GOOGLE CLASSROOM CALL, ON THE RECORD
01 · USE CASES

What agents do in Google Classroom.

01

Post a new announcement

Post an announcement to a course stream to remind students of an upcoming deadline.

02

List a course's assignments

List the course work items for a class to check what has already been assigned.

03

Remove a student with confirmation

Remove a student from a course roster only after a teacher confirms the enrollment change.

02 · ACTIONS

62 Google Classroom actions, graded by risk.

Every Google Classroom action is tagged read, write or destructive, so one policy covers the whole app and new actions inherit the right default.

read

4

Look things up. Allowed by default.

  • google_classroom.list_courses_student_groups
    List Course Student Groups
  • google_classroom.get_coursework_addon_attachment
    Get CourseWork Add-on Attachment
  • google_classroom.list_coursework_addon_attachments
    List CourseWork Add-on Attachments
  • google_classroom.get_coursework_material_addon_context
    Get Add-on Context for Course Work Material

write

47

Create and change things. Allow, or ask the user first.

  • google_classroom.courses_get
    Get Course
  • google_classroom.courses_list
    List Courses
  • google_classroom.courses_patch
    Patch Course
  • google_classroom.courses_create
    Create Course
  • google_classroom.courses_update
    Update Course
  • google_classroom.course_work_get
    Get CourseWork
  • google_classroom.invitations_get
    Get Invitation
  • google_classroom.course_work_list
    List CourseWork
  • google_classroom.invitations_list
    List Invitations
  • google_classroom.user_profiles_get
    Get User Profile
  • google_classroom.courses_topics_get
    Get Course Topic
  • google_classroom.course_work_create
    Create CourseWork
  • google_classroom.invitations_create
    Create Invitation
  • google_classroom.courses_topics_list
    List Course Topics
  • google_classroom.courses_aliases_list
    List Course Aliases
  • google_classroom.courses_students_get
    Get Course Student
+ 31 MORE

destructive

11

Delete, cancel or archive. Ask first, or deny outright.

  • google_classroom.courses_delete
    Delete Course
  • google_classroom.course_work_delete
    Delete CourseWork
  • google_classroom.invitations_delete
    Delete Invitation
  • google_classroom.courses_topics_delete
    Delete Course Topic
  • google_classroom.courses_aliases_delete
    Delete Course Alias
  • google_classroom.courses_students_delete
    Delete Course Student
  • google_classroom.courses_teachers_delete
    Delete Course Teacher
  • google_classroom.courses_announcements_delete
    Delete Announcement
  • google_classroom.courses_course_work_materials_delete
    Delete Course Work Material
  • google_classroom.courses_announces_add_on_attachs_delete
    Delete Add-on Attachment
  • google_classroom.courses_course_work_add_on_attachs_delete
    Delete Add-on Attachment
03 · HOW IT WORKS

Google Classroom in three steps.

  1. 01Your users connect Google ClassroomThey sign in to Google Classroom on Arc0 Connect, under your brand, and approve the access you ask for.
  2. 02You set the rulesReads run, writes like “get Course” can wait for the user, and “delete Course” can be denied outright.
  3. 03Any agent can actYour agent calls Google Classroom through the Arc0 SDK or MCP, and so can Claude, ChatGPT and Cursor. Every call lands on the audit log.
POLICY.TS
await arc0.policies.set('google_classroom', {
  read: 'allow',
  write: 'ask',        // courses_get
  destructive: 'deny',  // courses_delete
})

# Claude Code: the same connection, one URL
$ claude mcp add --transport http arc0 \
    https://mcp.arc0.ai/u/u_8f2
04 · AUTH AND DATA

How Google Classroom connects.

Users sign in to Google Classroom on Arc0 Connect and approve the scopes you request. Build with Arc0’s Google Classroom OAuth app, or bring your own so the Google Classroom consent screen names you. Tokens refresh automatically, and you can export them whenever you want.

The same Google Classroom connection serves your agent over MCP and your own backend over REST and the proxy, so a user connects once. How Arc0 handles credentials →

AUTH
OAuth 2.0
CREDENTIALS
Per-tenant encrypted vault
MODEL SEES
Results only, never credentials
AUDIT LOG
Every call, on every plan
05 · WORKS WITH

Use Google Classroom from any agent.

Claude
ChatGPT
Cursor
Codex
VS Code
OpenAI Agents SDK
Claude Agent SDK
Vercel AI SDK
Mastra
LangGraph
07 · FAQ

Google Classroom and Arc0, answered.

Q01

Can I use Google Classroom with Claude, ChatGPT or Cursor?

Yes. Connect Google Classroom to Arc0 once, then add your Arc0 MCP URL to Claude, ChatGPT, Cursor, Claude Code or any other remote-MCP client. Each assistant only gets the Google Classroom actions you allow.

Q02

How do users connect Google Classroom?

Users sign in to Google Classroom on Arc0 Connect and approve the scopes you request. Build with Arc0’s Google Classroom OAuth app, or bring your own so the Google Classroom consent screen names you. Tokens refresh automatically, and you can export them whenever you want.

Q03

Which Google Classroom actions can my agent take?

62 in total: 4 read, 47 write and 11 destructive, such as “get Course”. Your policies decide which of them each agent may call.

Q04

Can I stop my agent from deleting things in Google Classroom?

Yes. Actions like “delete Course” are graded destructive. Set destructive actions to deny, or to ask so the user approves each one, and blocked calls still show up on the audit log.

Q05

Can my own backend call Google Classroom too?

Yes. The same Google Classroom connection is available over REST and through the Arc0 proxy, so your product and your agent share one connection per user.

Get started

Plug Google Classroom into your agent.

Your users connect Google Classroom once, under your brand. Your agent gets 62 actions behind your policies, with every call on the record.

Free to build · MCP + REST · Audit log on every plan