iClass MCP Server
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
iclass-mcp
An MCP (Model Context Protocol) server for the Tamkang University (TKU) iClass (TronClass) learning platform.
Connect AI assistants (Antigravity, Claude Desktop, OpenAI Codex / ChatGPT Desktop, Cursor, and other MCP clients) directly to your iClass account to check pending assignments, track deadlines, browse courses and announcements, interact with forum discussions, manage files, and submit homework.
Features
📅 Todos & Deadlines: Fetch upcoming and pending homework, quizzes, and exams with due dates.
📚 Courses & Syllabi: View ongoing enrolled courses, syllabus structures, and detailed learning activities.
📢 Announcements: Read course-level and campus-wide bulletins and notices.
💬 Discussion Forums: Browse categories, search/list category topics, read topics/replies, create new discussion threads, post replies, and like topics.
📁 Cloud Files: Access your personal iClass cloud storage, upload local files, and download course materials.
📝 Assignments & Progress: Mark learning materials as read and submit homework directly.
Related MCP server: seoultech_c4t
Installation & Setup
Prerequisites
Python 3.10 – 3.13
A valid TKU SSO account (Student ID and SSO password)
1. Clone the repository
git clone --recurse-submodules https://github.com/GGQQmax/iclass-mcp.git
cd iclass-mcp2. Quick Install (Automated)
Run the installer for your operating system to automatically initialize git submodules, set up .venv, install requirements, configure .env, and generate client settings:
Linux & macOS:
chmod +x install.sh ./install.shWindows (PowerShell):
.\install.ps1Windows (Command Prompt / Double Click):
install.bat
Step A: Configure Environment Variables
Copy the template file to .env:
cp .env.template .envEdit .env with your student credentials:
USERNAMEID="YOUR_STUDENT_ID"
PASSWORD="YOUR_SSO_PASSWORD"Step B: Initialize Submodules, Create Virtual Environment & Install Dependencies
git submodule update --init --recursive
python3 -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
pip install -r requirements.txtClient Configuration
Antigravity
Add the server definition to ~/.gemini/config/mcp_config.json:
{
"mcpServers": {
"iclass": {
"command": "/absolute/path/to/iclass-mcp/.venv/bin/python",
"args": ["/absolute/path/to/iclass-mcp/iclass_mcp_server.py"],
"cwd": "/absolute/path/to/iclass-mcp"
}
}
}You can also inspect and manage active MCP servers in the Antigravity UI under Additional Options (...) > MCP Servers.
Codex / ChatGPT Desktop
The repository includes a project-scoped Codex configuration at .codex/config.toml. Update the absolute path to your environment:
[mcp_servers.iclass]
command = "/absolute/path/to/iclass-mcp/.venv/bin/python"
args = ["iclass_mcp_server.py"]
cwd = "/absolute/path/to/iclass-mcp"
default_tools_approval_mode = "prompt"Open the repository folder in ChatGPT Desktop / Codex and trust the project when prompted.
Alternatively, register the server via the Codex CLI:
codex mcp add iclass -- /absolute/path/to/iclass-mcp/.venv/bin/python /absolute/path/to/iclass-mcp/iclass_mcp_server.pyClaude Desktop
Add the server to your claude_desktop_config.json (located at ~/.config/Claude/claude_desktop_config.json on Linux, or ~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"iclass": {
"command": "/absolute/path/to/iclass-mcp/.venv/bin/python",
"args": ["/absolute/path/to/iclass-mcp/iclass_mcp_server.py"],
"cwd": "/absolute/path/to/iclass-mcp"
}
}
}Cursor & Other MCP Clients (stdio)
Command:
/absolute/path/to/iclass-mcp/.venv/bin/pythonArgs:
["/absolute/path/to/iclass-mcp/iclass_mcp_server.py"]Working Directory:
/absolute/path/to/iclass-mcp
Available MCP Tools
Tool | Description | Key Parameters |
| Fetch pending homework, quizzes, and exams | None |
| Get list of ongoing enrolled courses | None |
| Fetch course or campus bulletins / announcements |
|
| Fetch learning activities and syllabus structure |
|
| Fetch details for a specific activity |
|
| Mark an activity or resource upload as read |
|
| List enrolled members/students for a course |
|
| Get discussion forum categories for a course |
|
| Get and search discussion topics in a forum category |
|
| Get details and replies for a discussion topic |
|
| Post a reply to a discussion topic |
|
| Create a new discussion thread |
|
| Like a discussion topic |
|
| List personal cloud drive / uploaded resources |
|
| Upload a local file to iClass personal drive |
|
| Download a file by reference ID to |
|
| Submit homework assignment with uploaded file IDs |
|
License
This project is licensed under the Beerware License.
This server cannot be deployed
Maintenance
Related MCP Connectors
Connects AI assistants to TrackingTime for querying time entries, projects, tasks, customers, and team data using natural language.
Connect AI assistants to Edusign attendance, courses, learners, documents, and API docs via OAuth.
Connects an AI assistant to your Lingard account (lingard.app), an app for learning languages with books, news and flashcards. Create topic word collections and add complete cards: translation, part of speech, pronunciation, synonyms, example sentences with translations, and images. Fill in missing fields on existing cards, rewrite example translations, and pause or resume collections, books and news in your daily study sessions. Every change can be previewed before it is saved, and saved words appear in the Lingard apps on iOS, Android and the web. Requires a Lingard account; sign-in uses OAuth.
Connect Apple iCloud and Microsoft 365 mail, calendars, contacts and tasks to AI.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceConnects Claude AI to your Canvas LMS account, enabling natural language interaction with coursework including assignments, grades, announcements, and calendar.-
- AlicenseAqualityAmaintenanceEnables AI assistants to query SeoulTech e-Class course announcements and assignments, search full notice text, track pending work, and refresh login sessions securely through natural language.71MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to read courses, upcoming deadlines, assignment details, grades, announcements, modules, files, inbox, and timetable from U of T Quercus and ACORN through read-only tools.1MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI applications supporting MCP to log into a university academic affairs system and query schedules, absences, grades, and leave records through natural-language conversation. It also lets users submit or withdraw leave requests and plan and save monthly work-study attendance, with built-in confirmation cues for destructive actions.1MIT