The eClass MCP Server enables AI agents to interact with Open eClass platforms, specifically tailored for UoA's SSO authentication system.
Capabilities include:
Authentication: Log in to eClass via UoA's CAS SSO system using configured credentials
Course Management: Retrieve a list of enrolled courses on eClass
Session Management: Maintain authenticated sessions for continuous interaction across tool calls
Status Checking: Verify the current authentication status with eClass
Logout: End the eClass session when needed
Security: Handle sensitive credentials securely, maintaining session cookies in memory
Integration: Designed to work with AI agents supporting the Model Context Protocol for accessing course materials and announcements
Uses .env files to store sensitive authentication credentials for eClass, maintaining them securely outside of version control
Hosts the project repository for version control and distribution of the eClass MCP server code
Built with Python, providing a foundation for the MCP server implementation that handles authentication and interactions with eClass
Implements session management to maintain authenticated state between interactions with the eClass platform
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
Related MCP server: Google Classroom MCP Server
Quick Start
Prerequisites
Python 3.10+
uv (recommended) or pip
Installation
Configuration
Create a .env file (or copy example.env):
Optional settings:
Running
MCP Client Configuration
To use this MCP server with Claude Desktop, VS Code, Cursor, or any MCP-compatible client, configure your client to run:
Set the following environment variables in your client's MCP configuration:
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 |
| Authenticate using credentials from
|
| Retrieve enrolled courses (requires login) |
| End the current session |
| 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:
This 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
Security
Credentials are stored locally in
.envonlyNever 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