ekursy-mcp-py
Provides tools for accessing student profile information, course lists, course grades, page contents, and course materials (PDF/images) from the eKursy (Moodle-based) platform.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ekursy-mcp-pyshow my grades for this semester"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
eKursy Python MCP Server (ekursy-mcp-py)
A Model Context Protocol (MCP) server written in Python using FastMCP, which integrates with the ekursy-zero Rust scraper to expose student profile information, course lists, course grades, page contents, and course materials (PDF/images) from the eKursy platform to AI tools.
Prerequisites
Before running the server, ensure you have:
Git installed on your system.
Docker installed on your system
Python installed on your system
Installation & Setup
Method 1: Automatic Setup Script for Antigravity (Recommended)
If you dont use antigravity this won't work for you. See manual methods below or ask your AI agent
This repository includes a cross-platform setup script that automatically initializes git submodules, prompts you for credentials to create the .env file, and configures the Gemini / Antigravity integration file for you.
Windows: Run
scripts\setup.bat(Double-click or run in terminal:.\scripts\setup.bat)macOS / Linux: Run
./scripts/setup.sh(orbash scripts/setup.sh)
The script will configure MCP in Antigravity and start the server in docker. You only need to restart Antigravity and this MCP server should work
Alternative/Manual Methods
1. Initialize Submodule & Credentials Manually
If you prefer not to use the setup script:
git submodule update --init --recursiveAnd manually create a .env file in the root directory:
MOODLE_USERNAME="your.email@student.put.poznan.pl"
MOODLE_PASSWORD="your_moodle_password"How to Run
Option A: Run via Docker Compose
This runs both the ekursy-zero scraper backend and ekursy-mcp-py server together. The scraper remains private and isolated inside the container network (ports are not exposed to the host).
Run the following command:
docker compose up --buildThe MCP server will start on HTTP port 6969. You can verify it by reaching the MCP endpoint:
http://localhost:6969/mcp
Option B: Run Locally
To run the server locally (using stdio transport, which is standard for MCP desktop clients):
uv run src/main.pyManual Integration with Antigravity / Gemini MCP
To manually connect this Python MCP server to your Antigravity environment:
Locate the configuration file on your system (e.g.,
C:\Users\Marcin\.gemini\config\mcp_config.jsonorconfig.json).Add a new server entry inside the
mcpServersobject.
Recommended Config (Docker / Streamable HTTP Server)
Add the following snippet to your configuration block:
{
"mcpServers": {
"ekursy-mcp-py": {
"serverUrl": "http://localhost:6969/mcp"
}
}
}Note: Ensure the MOODLE_API_BASE env variable points to the scraper service instance (e.g. http://localhost:8080 if running ekursy-zero locally/standalone).
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/markrz-0/ekursy-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server