eclass-mcp-server
A Model Context Protocol (MCP) server for the Open eClass platform.
Documentation
eClass MCP Server
An MCP server for interacting with the Open eClass platform, with support for UoA's SSO authentication.
Features
- SSO Authentication: Log in through UoA's CAS SSO system
- Course Retrieval: Get list of enrolled courses
- Session Management: Persistent sessions between tool calls
- Status Checking: Verify authentication status
Quick Start
Prerequisites
- Python 3.10+
- uv (recommended) or pip
Installation
git clone https://github.com/sdi2200262/eclass-mcp-server.git
cd eclass-mcp-server
uv sync --dev --all-extrasConfiguration
Create a `.env` file (or copy `example.env`):
ECLASS_USERNAME=your_username
ECLASS_PASSWORD=your_passwordOptional settings:
ECLASS_URL=https://eclass.uoa.gr # Default
ECLASS_SSO_DOMAIN=sso.uoa.gr # Default
ECLASS_SSO_PROTOCOL=https # DefaultRunning
# Using the entry point script
python run_server.py
# Or as a module
python -m src.eclass_mcp_server.serverMCP Client Configuration
To use this MCP server with Claude Desktop, VS Code, Cursor, or any MCP-compatible client, configure your client to run:
python3 /absolute/path/to/eclass-mcp-server/run_server.pySet the following environment variables in your client's MCP configuration:
{
"env": {
"ECLASS_USERNAME": "your_username",
"ECLASS_PASSWORD": "your_password"
}
}Optional environment variables:
- `ECLASS_URL` - OpenEclass instance URL (default: `https://eclass.uoa.gr`)
- `ECLASS_SSO_DOMAIN` - SSO domain (default: `sso.uoa.gr`)
- `ECLASS_SSO_PROTOCOL` - SSO protocol (default: `https`)
Refer to your specific client's documentation for how to add MCP servers to your configuration.
Available Tools
| Tool | Description |
|---|---|
| `login` | Authenticate using credentials from `.env` |
| `get_courses` | Retrieve enrolled courses (requires login) |
| `logout` | End the current session |
| `authstatus` | Check authentication status |
All tools use a dummy `random_string` parameter (MCP protocol requirement).
Standalone Client
For non-MCP usage, a standalone client is included:
python eclass_client.pyThis demonstrates the core functionality without MCP integration. See docs/architecture.md for details.
Documentation
- Architecture - System design and authentication flow
- Wire Protocol - JSON-RPC message formats
- Tools Reference - Detailed tool documentation
Project Structure
eclass-mcp-server/
├── run_server.py # Entry point
├── eclass_client.py # Standalone client (non-MCP)
├── src/eclass_mcp_server/ # Main package
│ ├── server.py # MCP server and tool handlers
│ ├── authentication.py # SSO authentication
│ ├── course_management.py # Course operations
│ └── html_parsing.py # HTML parsing utilities
└── docs/ # DocumentationSecurity
- Credentials are stored locally in `.env` only
- Never passed as tool parameters (preventing AI provider exposure)
- Sessions maintained in-memory only
- No cloud services or remote storage
License
GNU GPL v3.0 - This ensures transparency in credential handling.
Acknowledgments
- GUnet for the Open eClass platform
- This project is an independent interface, not affiliated with GUnet
Frequently asked questions
What is eclass-mcp-server?
eclass-mcp-server is A Model Context Protocol (MCP) server for the Open eClass platform.
How do I install eclass-mcp-server?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is eclass-mcp-server open source?
Yes — it is hosted on GitHub at https://github.com/sdi2200262/eclass-mcp-server and has 6 stars.
Related MCP tools
🙌 OpenHands: Code Less, Make More for the Model Context Protocol. Enhance AI assistants with powerful integrations. Python-based implementation.
Universal memory layer for AI Agents; Announcing OpenMemory MCP - local and secure memory management. Python-based implementation.
基于大模型搭建的聊天机器人,同时支持 微信公众号、企业微信应用、飞书、钉钉 等接入,可选择ChatGPT/Claude/DeepSeek/文心一言/讯飞星火/通义千问/ Gemini/GLM-4/Kimi/LinkAI,能处理文本、语音和图片,访问操作系统和互联网,支持基于自有知识库进行定制企业智能客服。
An LLM agent that conducts deep research (local and web) on any given topic and generates a long report with citations. Built for the Model Context Protocol to
🚀 The fast, Pythonic way to build MCP servers and clients Trusted by 19900+ developers. Trusted by 19900+ developers. Trusted by 19900+ developers.
🔥 MaxKB is an open-source platform for building enterprise-grade agents. MaxKB 是强大易用的开源企业级智能体平台。 for the Model Context Protocol. Enhance AI assistants with po
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP