Google Classroom

by faizan45640

1 stars
324 downloads
Not rated
GitHub

About

Integrates with Google Classroom to retrieve courses, announcements, and assignments using OAuth2 authentication, enabling students and educators to access classroom information without switching contexts.

Details

Author
faizan45640
Repository
faizan45640/google-classroom-mcp-server
GitHub stars
1
Downloads
324
License
MIT License
Categories
Developer Tools, AI, Security, Infrastructure, API, Other
Tags
#integration

- List all your Google Classroom courses
- Get detailed course information and announcements
- Retrieve assignments and submissions for a course
- Automatic token refresh for Google OAuth
- Read-only access to classroom data
- Compatible with Claude and other MCP-based assistants

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Google Classroom
    Command (node, npx, python, etc.) node
    Arguments
    • Argument 1 PATH_TO_YOUR_DIRECTORY/index.js

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

To install Google Classroom MCP Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @faizan45640/google-classroom-mcp-server --client claude

1. Clone this repository
2. Install dependencies:

npm install

3. Place your Google OAuth client credentials in a file named credentials.json in the project root:

{
  "web": {
    "client_id": "YOUR_CLIENT_ID",
    "project_id": "YOUR_PROJECT_ID",
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://oauth2.googleapis.com/token",
    "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
    "client_secret": "YOUR_CLIENT_SECRET",
    "redirect_uris": ["http://localhost:3000/auth/google/callback"]
  }
}

4. Authenticate with Google:

node index.js auth

This will launch a browser window to complete the OAuth flow and save your credentials to tokens.json.

5. Configure Claude to use this server by updating claude_desktop_config.json (typically in %APPDATA%\Claude\):

{
  "mcpServers": {
    "class": {
      "command": "node",
      "args": [
        "PATH_TO_YOUR_DIRECTORY\\index.js"
      ]
    }
  }
}

courses

List all your Google Classroom courses

course-details

Get detailed information about a specific course. Parameters: courseId (the ID of the course)

assignments

Get assignments for a specific course. Parameters: courseId (the ID of the course)

The server provides several tools for interacting with Google Classroom:

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "google classroom": {
            "cwd": "string",
            "env": {},
            "args": [
                "PATH_TO_YOUR_DIRECTORY/index.js"
            ],
            "shell": false,
            "command": "node"
        }
    }
}

Linux

{
    "cwd": "string",
    "env": [],
    "args": [
        "PATH_TO_YOUR_DIRECTORY/index.js"
    ],
    "shell": false,
    "command": "node"
}

Macos

{
    "cwd": "string",
    "env": [],
    "args": [
        "PATH_TO_YOUR_DIRECTORY/index.js"
    ],
    "shell": false,
    "command": "node"
}

Windows

{
    "cwd": "string",
    "env": [],
    "args": [
        "PATH_TO_YOUR_DIRECTORY\\index.js"
    ],
    "shell": false,
    "command": "node"
}

Google Classroom MCP Server

smithery badge

An MCP (Model Context Protocol) server that provides access to Google Classroom data through Claude and other AI assistants that support the MCP protocol.

Setup

Prerequisites

- Node.js (v16 or higher)
- A Google Cloud Platform project with the Google Classroom API enabled
- OAuth 2.0 client credentials for the Google Classroom API

Installation

Installing via Smithery

To install Google Classroom MCP Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @faizan45640/google-classroom-mcp-server --client claude

Installing Manually

1. Clone this repository 2. Install dependencies:
npm install

3. Place your Google OAuth client credentials in a file named credentials.json in the project root:

{
  "web": {
    "client_id": "YOUR_CLIENT_ID",
    "project_id": "YOUR_PROJECT_ID",
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://oauth2.googleapis.com/token",
    "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
    "client_secret": "YOUR_CLIENT_SECRET",
    "redirect_uris": ["http://localhost:3000/auth/google/callback"]
  }
}

4. Authenticate with Google:

node index.js auth

This will launch a browser window to complete the OAuth flow and save your credentials to tokens.json.

5. Configure Claude to use this server by updating claude_desktop_config.json (typically in %APPDATA%\Claude\):

{
  "mcpServers": {
    "class": {
      "command": "node",
      "args": [
        "PATH_TO_YOUR_DIRECTORY\\index.js"
      ]
    }
  }
}

Usage

Available Tools

The server provides several tools for interacting with Google Classroom:

1. courses - List all your Google Classroom courses

Use the 'courses' tool to get a list of all your Google Classroom courses

2. course-details - Get detailed information about a specific course

Use the 'course-details' tool with the courseId parameter to get details and announcements for a specific course
No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.