Skip to main content
Glama

Moodle MCP-Server

Ein Model Context Protocol (MCP)-Server + REST-API, der Claude, ChatGPT, Google Gemini und jedes beliebige KI-Modell mit einer beliebigen Moodle-LMS-Instanz verbindet. Erstellt in Go.

Studierende können über ihre bevorzugte KI mit ihrem Moodle-Konto interagieren – Kurse ansehen, Noten prüfen, Fristen verfolgen, Aufgaben einreichen und Benachrichtigungen lesen.

Funktioniert mit:

  • Claude (Desktop, Code) – via MCP (am einfachsten!)

  • ChatGPT (Plus) – via REST-API + Actions

  • Google Gemini – via REST-API + Apps Script

  • Jeder KI – via REST-API (HTTP-Endpunkte)

Funktionen

Tool

Beschreibung

login

Interaktive Authentifizierung mit Ihrer Moodle-Seite

get_site_info

Moodle-Seiten- und Benutzerinformationen anzeigen

get_user_profile

Profildetails anzeigen

list_courses

Alle eingeschriebenen Kurse auflisten

get_course_contents

Abschnitte, Ressourcen und Aktivitäten anzeigen

get_course_details

Kurs-Metadaten anzeigen

get_grades

Noten für einen bestimmten Kurs anzeigen

get_grades_overview

Notenübersicht über alle Kurse hinweg anzeigen

get_assignments

Aufgaben für einen Kurs anzeigen

get_upcoming_assignments

Anstehende Aufgaben über alle Kurse hinweg anzeigen

submit_assignment

Textinhalt für eine Aufgabe einreichen

get_calendar_events

Anstehende Kalenderereignisse anzeigen

get_upcoming_deadlines

Konsolidierte Fristen, sortiert nach Dringlichkeit, anzeigen

get_notifications

Nachrichten und Benachrichtigungen anzeigen

Anforderungen

  • Claude Desktop (macOS, Windows oder Linux)

  • Ein Moodle-Konto an einer beliebigen Institution

Schnellstart

Wählen Sie Ihre KI-Plattform:

Ihre KI

Anleitung

Zeit

🤖 Claude (Empfohlen)

Windows / macOS

2 Min

💬 ChatGPT

ChatGPT-Einrichtung

15 Min

🔍 Google Gemini

Gemini-Einrichtung / Gemini Windows

20 Min

🌐 Mehrere KIs

Anleitung für alle Modelle

1 Stunde

Hier starten: Wenn Sie Claude verwenden, folgen Sie der Windows/macOS-Anleitung oben (2 Minuten!)

Kein Programmierer? Alle Anleitungen enthalten Schritt-für-Schritt-Anweisungen, für die keine technischen Vorkenntnisse erforderlich sind.


Installation (Am einfachsten)

Für Windows (PowerShell)

Öffnen Sie PowerShell und führen Sie aus:

irm https://raw.githubusercontent.com/Jawadh-Salih/moodle-mcp-server/main/install.ps1 | iex

Dies lädt die Binärdatei automatisch herunter und installiert sie unter C:\Users\IhrName\moodle-mcp\moodle-mcp.exe

Für macOS / Linux (Bash)

Öffnen Sie das Terminal und führen Sie aus:

curl -fsSL https://raw.githubusercontent.com/Jawadh-Salih/moodle-mcp-server/main/install.sh | bash

Dies lädt die Binärdatei automatisch herunter und installiert sie unter ~/.moodle-mcp/moodle-mcp

Manuelle Installation (Für Entwickler)

Wenn Sie aus dem Quellcode bauen möchten:

# Clone the repository
git clone https://github.com/Jawadh-Salih/moodle-mcp-server.git
cd moodle-mcp-server

# Build the binary
go mod tidy
go build -o moodle-mcp ./cmd/moodle-mcp/

Verwendung

Option 1: Interaktive Anmeldung (Empfohlen)

Starten Sie den Server einfach ohne Konfiguration. Wenn Sie mit Claude chatten, verwenden Sie das login-Tool zur Authentifizierung:

"Log in to my Moodle at https://online.uom.lk with username student@uom.lk"

Claude wird Sie nach Ihrem Passwort fragen und Sie authentifizieren.

Option 2: Umgebungsvariablen

Legen Sie Anmeldedaten als Umgebungsvariablen für die automatische Anmeldung fest:

export MOODLE_URL=https://online.uom.lk
export MOODLE_USERNAME=your-username
export MOODLE_PASSWORD=your-password

Oder wenn Sie ein Moodle-API-Token haben:

export MOODLE_URL=https://online.uom.lk
export MOODLE_TOKEN=your-api-token

Claude Desktop-Konfiguration

Wenn Sie den Auto-Installer verwendet haben:

Der Installer zeigt Ihnen den genauen Pfad an. Kopieren Sie ihn einfach!

Manuelle Konfiguration

Suchen Sie Ihre Claude Desktop-Konfigurationsdatei:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json Linux: ~/.config/Claude/claude_desktop_config.json

Option A: Interaktive Anmeldung (Empfohlen – keine Anmeldedaten in der Konfiguration)

{
  "mcpServers": {
    "moodle": {
      "command": "/path/to/moodle-mcp"
    }
  }
}

Verwenden Sie dann in Claude das login-Tool, um sich interaktiv zu authentifizieren.

Option B: Mit gespeicherten Anmeldedaten

{
  "mcpServers": {
    "moodle": {
      "command": "/path/to/moodle-mcp",
      "env": {
        "MOODLE_URL": "https://online.uom.lk",
        "MOODLE_USERNAME": "your-username",
        "MOODLE_PASSWORD": "your-password"
      }
    }
  }
}

Beispielpfade für Windows:

  • Auto-Installer: C:\Users\IhrName\moodle-mcp\moodle-mcp.exe

  • Manueller Build: C:\Users\IhrName\Go\bin\moodle-mcp.exe

Beispielpfade für macOS:

  • Auto-Installer: /Users/ihrname/.moodle-mcp/moodle-mcp

  • Manueller Build: /Users/ihrname/moodle-mcp-server/moodle-mcp

Unterstützt mehrere KI-Plattformen

Via MCP (Nur Claude)

  • ✅ Claude Desktop (macOS, Windows, Linux)

  • ✅ Claude Code (VSCode, Terminal)

Via REST-API (ChatGPT, Gemini, jede KI)

  • ✅ ChatGPT (mit benutzerdefinierten GPT-Actions)

  • ✅ Google Gemini (mit Apps Script)

  • ✅ Jede KI mit HTTP-Client-Zugriff

  • ✅ Benutzerdefinierte Skripte und Integrationen

Siehe Anleitung für alle Modelle für detaillierte Anweisungen für jede Plattform.

Ausführen des REST-API-Servers

Für ChatGPT, Gemini oder andere KI-Modelle führen Sie den REST-API-Modus aus:

# Start REST API server
go run ./cmd/moodle-mcp/ -mode rest -port 8080

# Or if you built the binary:
./moodle-mcp -mode rest -port 8080

# View API docs
curl http://localhost:8080/api/docs

Der Server lauscht auf http://localhost:8080 und stellt REST-Endpunkte bereit:

  • POST /api/login – Authentifizieren

  • GET /api/courses – Kurse auflisten

  • GET /api/grades?course_id=123 – Noten abrufen

  • GET /api/assignments/upcoming – Anstehende Aufgaben

  • Und mehr!

Für die Produktion (ChatGPT/Gemini), in der Cloud bereitstellen:


Beispielkonversationen

Sobald Sie verbunden sind, können Sie Claude Dinge fragen wie:

  • "Zeige mir meine eingeschriebenen Kurse"

  • "Wie sind meine Noten in CS101?"

  • "Welche Aufgaben sind diese Woche fällig?"

  • "Zeige mir die Inhalte meines Kurses Datenstrukturen"

  • "Habe ich ungelesene Benachrichtigungen?"

  • "Welche Fristen stehen in den nächsten 7 Tagen an?"

Funktionsweise

Dieser Server verwendet Moodles Web Services REST API mit dem moodle_mobile_app-Service-Token. Dieser Dienst ist bei den meisten Moodle-Installationen standardmäßig aktiviert, daher ist keine Admin-Einrichtung erforderlich.

Fehlerbehebung

Fehler "Invalid login": Überprüfen Sie Ihren Benutzernamen und Ihr Passwort. Einige Institutionen verwenden die E-Mail als Benutzernamen, andere eine separate ID.

Fehler "Web service not available": Ihr Moodle-Administrator hat möglicherweise den mobilen Webdienst deaktiviert. Bitten Sie ihn, diesen unter Website-Administration > Plugins > Webdienste > Mobile zu aktivieren.

Noten werden nicht angezeigt: Die Notenbericht-API erfordert die Berechtigung gradereport/user:view, die für Studierende Standard ist, aber auf einigen Seiten eingeschränkt sein kann.

Lizenz

MIT

-
security - not tested
A
license - permissive license
-
quality - not tested

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/Jawadh-Salih/moodle-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server