gogcli-mcp-classroom 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,78 @@
1
+ # gogcli-mcp-classroom
2
+
3
+ > [!WARNING]
4
+ > **AI-developed project.** This codebase was built and is actively maintained by [Claude Code](https://www.anthropic.com/claude). Review all code and tool permissions before use.
5
+
6
+ Extended Google Classroom [MCP](https://modelcontextprotocol.io) server via [gogcli](https://github.com/steipete/gogcli). Includes auth tools plus dedicated Classroom tools covering courses, rosters, coursework, submissions (grading), announcements, topics, invitations, and profiles.
7
+
8
+ ## Requirements
9
+
10
+ - [gogcli](https://github.com/steipete/gogcli) installed and authenticated
11
+ - Node.js 18+
12
+
13
+ ```bash
14
+ brew install gogcli
15
+ gog auth add your@gmail.com --services classroom
16
+ ```
17
+
18
+ ## Installation
19
+
20
+ ```bash
21
+ npm install -g gogcli-mcp-classroom
22
+ ```
23
+
24
+ ### Claude Desktop
25
+
26
+ Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
27
+
28
+ ```json
29
+ {
30
+ "mcpServers": {
31
+ "gogcli-classroom": {
32
+ "command": "gogcli-mcp-classroom",
33
+ "env": {
34
+ "GOG_ACCOUNT": "you@gmail.com"
35
+ }
36
+ }
37
+ }
38
+ }
39
+ ```
40
+
41
+ ### Claude Code
42
+
43
+ ```bash
44
+ claude mcp add gogcli-classroom -- gogcli-mcp-classroom
45
+ ```
46
+
47
+ ## Dedicated Classroom Tools (44)
48
+
49
+ Plus 5 auth tools. Dedicated tools cover the common Classroom operations; anything not listed runs via the escape hatch.
50
+
51
+ | Namespace | Tools |
52
+ |-----------|-------|
53
+ | Courses | `gog_classroom_courses_list`, `_get`, `_create`, `_update`, `_delete`, `_archive`, `_unarchive` |
54
+ | Students | `gog_classroom_students_list`, `_get`, `_add`, `_remove` |
55
+ | Teachers | `gog_classroom_teachers_list`, `_get`, `_add`, `_remove` |
56
+ | Roster | `gog_classroom_roster` (combined students + teachers) |
57
+ | Coursework | `gog_classroom_coursework_list`, `_get`, `_create`, `_update`, `_delete` |
58
+ | Submissions | `gog_classroom_submissions_list`, `_get`, `_grade`, `_return`, `_turn_in`, `_reclaim` |
59
+ | Announcements | `gog_classroom_announcements_list`, `_get`, `_create`, `_update`, `_delete` |
60
+ | Topics | `gog_classroom_topics_list`, `_get`, `_create`, `_update`, `_delete` |
61
+ | Invitations | `gog_classroom_invitations_list`, `_get`, `_create`, `_accept`, `_delete` |
62
+ | Profile | `gog_classroom_profile_get` |
63
+
64
+ ### Escape hatch
65
+
66
+ `gog_classroom_run` runs any Classroom subcommand not covered above, including:
67
+
68
+ - `guardians` (list/get/delete)
69
+ - `guardian-invitations` (create/list/cancel)
70
+ - `materials` (course materials)
71
+ - `coursework assignees` (individualized assignment targeting)
72
+ - `announcement assignees` (individualized announcement targeting)
73
+
74
+ Example: `{ "subcommand": "guardians", "args": ["list", "<studentUserId>"] }`.
75
+
76
+ ## License
77
+
78
+ MIT
package/SKILL.md ADDED
@@ -0,0 +1,48 @@
1
+ ---
2
+ name: gogcli-mcp-classroom
3
+ description: Use when the user asks to manage Google Classroom — create or update courses, enroll students and teachers, post announcements, create assignments, view submissions, grade work, manage topics, or send/accept invitations. Triggers for requests involving classrooms, courses, assignments, coursework, homework, student rosters, gradebook, or classroom management. Includes auth and Classroom tools only.
4
+ ---
5
+
6
+ # gogcli-mcp-classroom
7
+
8
+ Extended Google Classroom MCP server via [gogcli](https://github.com/steipete/gogcli) — 49 tools: auth (5) + 44 dedicated Classroom tools spanning courses, students, teachers, coursework, submissions, announcements, topics, invitations, and profiles.
9
+
10
+ - **Source:** [github.com/chrischall/gogcli-mcp](https://github.com/chrischall/gogcli-mcp)
11
+
12
+ ## Requirements
13
+
14
+ - [gogcli](https://github.com/steipete/gogcli) installed and authenticated
15
+ - Node.js 18 or later
16
+
17
+ ## Setup
18
+
19
+ ```json
20
+ {
21
+ "mcpServers": {
22
+ "gogcli-classroom": {
23
+ "command": "npx",
24
+ "args": ["-y", "gogcli-mcp-classroom"],
25
+ "env": {
26
+ "GOG_ACCOUNT": "you@gmail.com"
27
+ }
28
+ }
29
+ }
30
+ }
31
+ ```
32
+
33
+ ## Classroom Tools
34
+
35
+ | Area | Tools |
36
+ |------|-------|
37
+ | Courses | list / get / create / update / delete / archive / unarchive |
38
+ | Students | list / get / add / remove |
39
+ | Teachers | list / get / add / remove |
40
+ | Roster | combined students+teachers list |
41
+ | Coursework | list / get / create / update / delete |
42
+ | Submissions | list / get / grade / return / turn-in / reclaim |
43
+ | Announcements | list / get / create / update / delete |
44
+ | Topics | list / get / create / update / delete |
45
+ | Invitations | list / get / create / accept / delete |
46
+ | Profile | get (self or by userId) |
47
+
48
+ For guardians, guardian-invitations, materials, and assignee management, use `gog_classroom_run` (the escape hatch).