Classroom Suite MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GOOGLE_TOKEN_PATH | No | Path to store auth token | token.json |
| GOOGLE_CREDENTIALS_PATH | No | Path to OAuth credentials file | credentials.json |
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": true
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {
"tasks": {
"list": {},
"cancel": {},
"requests": {
"tools": {
"call": {}
},
"prompts": {
"get": {}
},
"resources": {
"read": {}
}
}
}
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_coursesA | List all courses the authenticated user is enrolled in. Args: page_size: Maximum number of courses to return (default: 20) course_states: Comma-separated states: ACTIVE, ARCHIVED, PROVISIONED, DECLINED, SUSPENDED Returns: List of courses with id, name, section, and state |
| get_courseA | Get detailed information about a specific course. Args: course_id: The ID of the course to retrieve Returns: Course details including name, description, and links |
| list_assignmentsA | List all assignments for a specific course. Args: course_id: The ID of the course page_size: Maximum number of assignments to return Returns: List of assignments with id, title, due date, and points |
| get_assignmentA | Get detailed information about a specific assignment. Args: course_id: The ID of the course assignment_id: The ID of the assignment Returns: Assignment details including description, materials, and due date |
| list_submissionsA | List all submissions for an assignment. Args: course_id: The ID of the course assignment_id: The ID of the assignment page_size: Maximum number of submissions to return states: Comma-separated states: NEW, CREATED, TURNED_IN, RETURNED Returns: List of submissions with state, grade, and links |
| submit_assignmentA | Submit work to an assignment. Args:
course_id: The ID of the course
assignment_id: The ID of the assignment Returns: Updated submission with state and timestamp |
| list_filesB | List files and folders in Google Drive. Args: folder_id: ID of folder to list (None for all files) page_size: Maximum number of files to return file_type: Filter by MIME type (e.g., "application/pdf") Returns: List of files with id, name, type, and links |
| search_filesC | Search for files by name or content. Args: query: Search query string page_size: Maximum number of results Returns: List of matching files |
| create_folderA | Create a new folder in Google Drive. Args: name: Name of the folder parent_id: ID of parent folder (None for root) Returns: Created folder with id and link |
| upload_fileA | Upload a file to Google Drive. Args: name: Filename content: File content (text or base64 for binary) mime_type: MIME type of the file parent_id: Parent folder ID is_base64: True if content is base64-encoded Returns: Uploaded file with id and link |
| download_fileA | Download a file from Google Drive. Args: file_id: ID of the file as_base64: Return content as base64 (for binary) Returns: File with id, name, and content |
| share_fileA | Share a file with users or make it public. Args: file_id: ID of the file to share email: Email address to share with role: Permission level (reader, writer, commenter) anyone: Make accessible to anyone with link Returns: File link after sharing |
| delete_fileA | Delete a file (move to trash or permanent). Args: file_id: ID of the file permanent: Permanently delete if True Returns: Deletion confirmation |
| create_docA | Create a new Google Doc. Args: title: Document title content: Optional initial text content folder_id: Folder to create the doc in Returns: Document with id, title, and link |
| read_docA | Read the content of a Google Doc. Args: document_id: ID of the document Returns: Document with id, title, and text content |
| update_docA | Update content in a Google Doc. Args: document_id: ID of the document text: Text to add mode: "append" (end), "prepend" (start), or "replace" Returns: Update confirmation |
| export_pdfA | Export a Google Doc as PDF. Args: document_id: ID of the document Returns: PDF as base64 with filename and size |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/anasdevai/classroom-suite-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server