eClass

A Model Context Protocol (MCP) server for the Open eClass platform.
  • python

8

GitHub Stars

python

Language

6 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "sdi2200262-eclass-mcp-server": {
      "command": "python",
      "args": [
        "run_server.py"
      ],
      "env": {
        "ECLASS_URL": "https://eclass.uoa.gr",
        "ECLASS_PASSWORD": "your_password",
        "ECLASS_USERNAME": "your_username",
        "ECLASS_SSO_DOMAIN": "sso.uoa.gr",
        "ECLASS_SSO_PROTOCOL": "https"
      }
    }
  }
}

You have an MCP Server that connects to the Open eClass platform, enabling AI agents to authenticate with the UoA SSO, fetch enrolled courses, manage sessions, and check authentication status locally on your machine. It provides a secure, in-memory session flow and is designed for seamless integration with MCP clients and AI assistants.

How to use

You will use an MCP client to interact with the eClass MCP Server. Start by running the server locally to establish an authenticated session. Use the available tools to log in via the university’s SSO, retrieve your course list, and manage your session state. The server maintains session data in memory, so you can perform a sequence of actions in one working session: authenticate, request information, and log out when you’re done.

How to install

Prerequisites you need before installation are Python 3.10 or higher and a local environment where you can run commands. The MCP Server requires Python 3.10+ to operate correctly.

Install dependencies and run the server using the recommended environment manager UV. Follow these steps exactly to set up and start the server.

# Clone the repository
git clone https://github.com/yourusername/eClass-MCP-server.git
cd eClass-MCP-server

# Install dependencies with UV (recommended)
uv sync --dev --all-extras

If you prefer to install with pip, use the editable install approach suitable for Python 3.10+ environments.

# Using Python 3.10+ compatible environment
python3.11 -m pip install -e .
# Or if python3 points to 3.10
pip install -e .

Configuration

Prepare your environment by creating a .env file in the project root with the required credentials for eClass access. The server expects these credentials to be supplied securely on your machine.

ECLASS_URL=https://eclass.uoa.gr
ECLASS_USERNAME=your_username
ECLASS_PASSWORD=your_password

Starting and using the server with an MCP client

To run the server from your terminal, execute the entry point script directly or run it as a module. This starts the local MCP server process that your MCP clients can connect to.

# Run the server directly
python run_server.py

# Or run as a module
python -m src.eclass_mcp_server.server

Notes for Cursor and Claude Desktop users

If you are integrating with Cursor, add a new global MCP server with the full absolute path to your Python interpreter and the absolute path to the run_server.py script. Ensure you point to Python 3.10+ and provide the exact path to the script.

For Claude Desktop, configure a server entry pointing to the run_server.py script so Claude can communicate with the MCP server during chats.

Testing and verification

Run the test suite to verify authentication flow and course retrieval works as expected in your environment.

# Run all tests
python -m src.eclass_mcp_server.test.run_all_tests

# Run specific tests
python -m src.eclass_mcp_server.test.test_login
python -m src.eclass_mcp_server.test.test_courses

Security and best practices

This server is designed to run locally with in-memory sessions and environment-based credentials. Do not expose credentials or run the server on untrusted machines. Store credentials in the local .env file and avoid passing real credentials through tools or AI clients.

Available tools

login

Authenticate using credentials from the local environment or configuration file to establish a session.

get_courses

Retrieve the list of courses the authenticated user is enrolled in.

logout

End the current MCP session and clear the in-memory state.

authstatus

Check whether a user is currently authenticated and active in the session.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational
eClass MCP Server - sdi2200262/eclass-mcp-server | VeilStrat