EduBase
offiziellInteragiere mit EduBase, einer umfassenden E-Learning-Plattform mit erweiterten Funktionen für Quiz, Prüfungsverwaltung und Inhaltsorganisation.
Was kann man mit EduBase MCP machen?
-
Bildungsinhalte verwalten — Bitten Sie Ihre KI, Fragen, Quizze, Prüfungen und deren Einstellungen über die Toolsets
questions,quizzesundexamszu erstellen, zu aktualisieren oder abzurufen. -
Ergebnisse und Benutzer analysieren — Lassen Sie Ihre KI Quiz-/Prüfungsergebnisse, Zertifikatsdownloads, Benutzerdetails und Klassenmitgliedschaften mithilfe der Toolsets
results,usersundclassesabrufen. -
Tool-Zugriff steuern — Konfigurieren Sie, welche Toolsets über
EDUBASE_TOOLSETSverfügbar gemacht werden, aktivieren Sie den Nur-Lese-Modus mitEDUBASE_READONLY, oder lassen Sie das Modell Toolsets bei Bedarf mitedubase_enable_toolsetsundedubase_list_toolsetsaktivieren. -
Dateien hochladen und verwalten — Verwenden Sie das Tool
edubase_filebin, um temporäre Dateien hochzuladen, mit SSRF-Schutz und optionaler Host-Whitelist überEDUBASE_FILEBIN_ALLOWED_HOSTS. -
Sicherer Fernzugriff — Verbinden Sie sich über OAuth 2.1 mit EduBase als Identitätsanbieter oder verwenden Sie die Bearer-Token-Authentifizierung mit dem
Authorization-Header für Produktionsbereitstellungen.
Dokumentation
EduBase MCP-Server
Dieses Repository enthält die Implementierung des Model Context Protocol (MCP)-Servers für die EduBase-Plattform. Er ermöglicht es MCP-Clients (z. B. Claude Desktop) und LLMs, mit Ihrem EduBase-Konto zu interagieren und Aufgaben in Ihrem Namen auszuführen. Er unterstützt die Transportprotokolle stdio, SSE und streamable HTTP.

Was ist EduBase?
EduBase ist eine innovative, modulare, Online-Bildungsplattform, die das Lernen angenehmer, einfacher und interaktiver gestaltet und sich für Bildungseinrichtungen oder Unternehmen eignet.
Warum EduBase wählen?
EduBase revolutioniert das digitale Lernen mit seiner einzigartigen Kombination von Funktionen:
- Fortschrittliches Quiz-System mit Parametrisierung, die unendliche Variationen derselben Frage ermöglicht, Echtzeit-Erkennung von Betrugsversuchen, schönem LaTeX-Satz, erweiterter STEM-Unterstützung und automatischer Bewertung
- Vereinheitlichte Lernumgebung, die alle Ihre Bildungsinhalte – Videos, Prüfungen, Dokumente und SCORM-Module – in einem intuitiven System zentralisiert
- Sicherheit auf Unternehmensniveau mit Funktionen wie SSO-Integration, feingranularen Zugriffskontrollen, umfassender Protokollierung und DSGVO-Konformität
- Integration in Ihre bestehenden Systeme über LTI, umfassende API und individuelle Integrationsoptionen
- KI-gestützte Werkzeuge, wie den EduBase Assistant, die Ihre vorhandenen Inhalte sofort in interaktive Quizze und Bewertungen umwandeln oder Ihre Materialien von einer Sprache in eine andere übersetzen können
Von Hochschuleinrichtungen bis zu Unternehmensschulungsabteilungen skaliert EduBase entsprechend Ihren spezifischen Anforderungen und bietet dabei eine intuitive Benutzererfahrung auf allen Geräten.
Demovideo
Gemeinsames Erstellen und Hochladen von Fragen, Planen von Prüfungen und Analysieren von Benutzerergebnissen mit Claude:
Abrufen Ihrer API-Anmeldeinformationen
Suchen Sie nach der Anmeldung auf Ihrem Dashboard im Menü „Integrationen", klicken Sie auf „Integration hinzufügen" und wählen Sie den Typ „EduBase API".
Wenn Sie diese Option nicht sehen, geben Sie den Aktivierungscode MCPGITHUB ein oder kontaktieren Sie uns gerne, um Zugriff anzufragen: info@edubase.net.
Werkzeuge
Jeder dokumentierte API-Endpunkt ist als Werkzeug verfügbar, benannt edubase_<method>_<endpoint>. Beispielsweise ist das Werkzeug für den Endpunkt GET /user:me mit edubase_get_user_me benannt. Die Tag-, Berechtigungs- und Übertragungs-Endpunkte funktionieren für jeden Inhaltstyp auf die gleiche Weise, daher teilen sie sich ein einzelnes Werkzeug pro Methode mit einem type-Argument (z. B. edubase_post_content_tag für POST /exam:tag, POST /quiz:tag usw.). Weitere Informationen finden Sie in unserer Entwicklerdokumentation.
Werkzeugsätze
Werkzeuge sind in Werkzeugsätzen gruppiert, sodass Sie nur die Werkzeuge freigeben können, die Sie benötigen. Weniger Werkzeuge verbrauchen weniger Kontext des Modells und erleichtern es dem Modell, das richtige auszuwählen. Jeder Werkzeugsatz ist standardmäßig aktiviert.
| Werkzeugsatz | Werkzeuge für |
|---|---|
files | Temporäre Datei-Uploads (immer aktiviert) |
questions | Fragen |
quizzes | Quiz-Sets, deren Fragen, Einstellungen und Bewertungsvorgaben |
exams | Prüfungen, deren Einstellungen, Benutzer, Zertifikate und Branding |
results | Quiz- und Prüfungsergebnisse, Zertifikats-Downloads |
users | Benutzer, deren Namen, Gruppen und Anmelde-Links |
classes | Klassen und Klassenmitgliedschaften |
organizations | Organisationen, Mitglieder, Abteilungen, Kompetenzen und Webhooks |
integrations | Integrationen und deren Schlüssel |
tags | Tags und Tag-Anhänge von Inhalten |
permissions | Benutzerberechtigungen für Inhalte und Eigentumsübertragungen |
metrics | Benutzerdefinierte Metriken |
Wählen Sie Werkzeugsätze mit einer durch Kommas getrennten Liste in EDUBASE_TOOLSETS aus (z. B. questions,quizzes,exams). Setzen Sie EDUBASE_READONLY=true, um nur die Werkzeuge freizugeben, die Daten lesen (die get-Werkzeuge und die Werkzeuge, die nur Download-Links generieren, wie edubase_post_question_export).
Setzen Sie EDUBASE_DYNAMIC_TOOLSETS=true, um Werkzeugsätze bei Bedarf zu aktivieren: Sitzungen starten nur mit den kritischen Werkzeugen, und das Modell aktiviert die benötigten Werkzeugsätze mit dem edubase_enable_toolsets-Werkzeug (aufgelistet mit edubase_list_toolsets). Dies hält die anfängliche Werkzeugliste für Clients klein, die alle Werkzeuge im Voraus laden, erfordert jedoch einen Client, der die Werkzeugliste aktualisiert, wenn Änderungen gemeldet werden.
Wenn ein HTTP-Transport verwendet wird, können Clients die Konfiguration für ihre eigene Sitzung weiter einschränken, mit den Headern EduBase-Mcp-Toolsets, EduBase-Mcp-ReadOnly und EduBase-Mcp-Dynamic oder den Abfrageparametern toolsets, read_only und dynamic_toolsets (z. B. https://domain.edubase.net/mcp?toolsets=exams&read_only=true). Eine Sitzung kann niemals Werkzeugsätze oder Schreibwerkzeuge aktivieren, die die Serverkonfiguration deaktiviert.
Konfiguration
Der MCP-Server kann mithilfe von Umgebungsvariablen konfiguriert werden. Die folgenden Variablen sind verfügbar:
| Variable | Beschreibung | Erforderlich | Standardwert |
|---|---|---|---|
EDUBASE_API_URL | Die Basis-URL der EduBase-API, höchstwahrscheinlich https://subdomain.edubase.net/api. | Ja | https://www.edubase.net/api |
EDUBASE_API_APP | Die App-ID Ihrer Integrations-App auf EduBase, die app auf der EduBase-API. Finden Sie diese im Integrationsdetailfenster auf EduBase. | Nicht, wenn HTTP-Transport mit Authentifizierung verwendet wird, sonst Ja | - |
EDUBASE_API_KEY | Der geheime Schlüssel Ihrer Integrations-App auf EduBase, die secret auf der EduBase-API. Finden Sie diesen zusammen mit der App-ID im Integrationsdetailfenster auf EduBase. | Nicht, wenn HTTP-Transport mit Authentifizierung verwendet wird, sonst Ja | - |
EDUBASE_SSE_MODE | Startet den MCP-Server im HTTP-Modus mit SSE-Transport. Der Wert muss true sein. | Nein | false |
EDUBASE_STREAMABLE_HTTP_MODE | Startet den MCP-Server im HTTP-Modus mit streamable HTTP-Transport. Der Wert muss true sein. | Nein | false |
EDUBASE_TOOLSETS | Durch Kommas getrennte Liste der aktivierten Werkzeugsätze oder all. | Nein | all |
EDUBASE_READONLY | Nur die Werkzeuge freigeben, die Daten lesen. Der Wert muss true sein. | Nein | false |
EDUBASE_OUTPUT_SCHEMAS | Ausgabeschemata der Werkzeuge und strukturierte Werkzeugergebnisse: off listet die Werkzeuge ohne Ausgabeschemata auf und gibt die Ergebnisse nur als JSON-Text zurück, on enthält die vollständigen Ausgabeschemata, fields enthält die Ausgabeschemata ohne die Feldbeschreibungen (behält die strukturierten Ergebnisse bei, spart aber die meisten Tokens der Schemata). | Nein | fields |
EDUBASE_CONFIG_PROVIDERS | Durch Kommas getrennte Liste der Hosting-Anbieter, die bei Verwendung eines HTTP-Transports Sitzungskonfiguration in den Anfragen bereitstellen dürfen. Derzeit wird nur smithery unterstützt (der base64-codierte config-Abfrageparameter). | Nein | - |
EDUBASE_DYNAMIC_TOOLSETS | Sitzungen nur mit den Datei-Upload-Werkzeugen starten und dem Modell erlauben, Werkzeugsätze bei Bedarf zu aktivieren. Der Wert muss true sein. | Nein | false |
EDUBASE_HTTP_PORT | Der HTTP-Server lauscht auf diesem Port, wenn der SSE- oder streamable HTTP-Transportmodus verwendet wird. | Nein | 3000 |
EDUBASE_OAUTH | Aktiviert das Verhalten einer durch OAuth 2.1 geschützten Ressource: Nicht authentifizierte Anfragen werden mit 401 + WWW-Authenticate abgelehnt, das auf /.well-known/oauth-protected-resource verweist, und Bearer-Tokens werden an die EduBase-API weitergeleitet. | Nein | false |
EDUBASE_OAUTH_AUTHORIZATION_SERVER | Öffentliche Basis-URL der EduBase-Bereitstellung, die als OAuth-IdP fungiert. Wird verwendet, um den Autorisierungsserver im Metadaten-Dokument der geschützten Ressource anzukündigen. | Nein | abgeleitet von EDUBASE_API_URL |
EDUBASE_OAUTH_RESOURCE_URL | Öffentliche Basis-URL dieses MCP-Servers (der OAuth-Ressourcenindikator). Wird im WWW-Authenticate-Header und in den Ressourcenmetadaten verwendet. | Nein | abgeleitet von EDUBASE_API_URL |
EDUBASE_ALLOW_PRIVATE_NETWORK | Wenn ein HTTP-Transport verwendet wird, blockiert das edubase_filebin-Werkzeug ausgehende Anfragen an private, Loopback-, Link-Local- und reservierte Adressen (SSRF-Schutz) und lehnt lokale Dateipfade ab. Setzen Sie es auf true, um diese zuzulassen, z. B. bei einer selbst gehosteten Bereitstellung in einem vertrauenswürdigen privaten Netzwerk. Hat im stdio-Modus keine Auswirkung, wo der lokale Benutzer der einzige Aufrufer ist. | Nein | false |
EDUBASE_FILEBIN_ALLOWED_HOSTS | Optionale, durch Kommas getrennte Zulassungsliste von Hostnamen, die als edubase_filebin-Upload-Ziele erlaubt sind (exakter Host oder beliebige Subdomain, z. B. edubase.net). Wenn leer, ist jeder öffentliche Host erlaubt (unterliegt weiterhin der obigen Adressfilterung). | Nein | - |
Verwendung als Remote-MCP-Server
Sie können den EduBase MCP-Server als Remote-MCP-Server für Ihren MCP-Client verwenden. Dazu müssen Sie den MCP-Server so hosten, dass Clients darauf zugreifen können, und dann den Client so konfigurieren, dass er sich mit dem Server verbindet. Starten Sie ihn entweder im SSE- oder streamable HTTP-Transportmodus und verwenden Sie beim Remote-Zugriff über das Internet immer HTTPS!
Authentifizierung mit Remote-Servern
Sie können den Server in zwei Modi verwenden:
- Ohne Client-Authentifizierung: In diesem Modus verlangt der Server keine Authentifizierung vom Client. Dies ist für Test- oder Entwicklungszwecke oder in einem geschlossenen Netzwerk nützlich, wird jedoch für die Produktion nicht empfohlen. Dazu müssen Sie den Server auch mit
EDUBASE_API_APPundEDUBASE_API_KEYkonfigurieren! - Mit Bearer-Token-Authentifizierung: In diesem Modus verlangt der Server, dass mit jeder Anfrage ein Bearer-Token gesendet wird. Dies ist die empfohlene Methode für die Produktion. Sie können das Bearer-Token von Ihrem EduBase-Konto erhalten, indem Sie eine Integrations-App erstellen und die App-ID und den geheimen Schlüssel im Format
{app}:{secret}angeben, base64-codiert als Token. Der Server verwendet dieses Token dann, um den Client zu authentifizieren und den Zugriff auf die API-Endpunkte zu autorisieren. - Mit OAuth 2.1 (EduBase als IdP): Wenn
EDUBASE_OAUTH=true, entdecken kompatible Clients (Claude Desktop, Claude.ai-Connectors, Cursor, ChatGPT-Connectors usw.) den EduBase-Autorisierungsserver über/.well-known/oauth-protected-resource, registrieren sich dynamisch (RFC 7591), führen den Benutzer durch einen EduBase-Zustimmungsbildschirm und tauschen einen Autorisierungscode (mit PKCE S256) gegen ein undurchsichtiges Zugriffstoken aus. Der MCP-Server leitet dieses Token unverändert an die EduBase-API weiter, die es der automatisch bereitgestellten MCP-Integration zuordnet, die bei der ersten Zustimmung erstellt wurde. Kein Kopieren von App-ID/Secret erforderlich – Benutzer klicken einfach in ihrem Client auf „Mit EduBase verbinden".
Verwendung mit Claude Desktop
Eine Schritt-für-Schritt-Anleitung finden Sie in unserem Blogbeitrag zum Thema EduBase mit Claude verbinden: Der vollständige MCP-Integrationsleitfaden.
Verwenden des bereitgestellten EduBase MCP-Servers
Sie können den bereitgestellten EduBase MCP-Server (falls verfügbar) ohne Konfiguration verwenden, indem Sie ihn einfach als Remote-Server in Ihrem Client mit der URL https://domain.edubase.net/mcp hinzufügen (durch die tatsächliche Domain ersetzen), wenn er OAuth-Authentifizierung unterstützt, oder mit dem entsprechenden Bearer-Token im Authorization-Header (Authorization: Bearer ${BASE64_ENCODED_TOKEN}).
Empfohlen für www.edubase.net-Benutzer, da der Server von uns gewartet und aktualisiert wird und Sie sich keine Gedanken über Hosting oder Konfiguration machen müssen. Stellen Sie nur sicher, dass Sie beim Verbinden Ihres Clients die richtige URL und Authentifizierungsmethode verwenden.
Manuelle Installation
Fügen Sie Folgendes zu Ihrer claude_desktop_config.json hinzu:
Verwendung mit Node.js
Stellen Sie vor dem Ausführen des MCP-Servers sicher, dass Node.js installiert ist. Sie können es von nodejs.org herunterladen oder einen Paketmanager wie brew verwenden.
{
"mcpServers": {
"edubase": {
"command": "npx",
"args": [
"-y",
"@edubase/mcp"
],
"env": {
"EDUBASE_API_URL": "https://domain.edubase.net/api",
"EDUBASE_API_APP": "your_integration_app_id",
"EDUBASE_API_KEY": "your_integration_secret_key"
}
}
}
}
Oder laden Sie die EduBase MCP-Server-Version herunter oder klonen Sie das Repository und führen Sie npm run build aus, um den Server zu erstellen. Vergessen Sie nicht, /path/to/dist an das tatsächliche Verzeichnis anzupassen und die Umgebungsvariablen zu konfigurieren!
{
"mcpServers": {
"edubase": {
"command": "node",
"args": [
"/path/to/dist/index.js"
],
"env": {
"EDUBASE_API_URL": "https://domain.edubase.net/api",
"EDUBASE_API_APP": "your_integration_app_id",
"EDUBASE_API_KEY": "your_integration_secret_key"
}
}
}
}
Verwendung mit Docker
Stellen Sie vor dem Ausführen des MCP-Servers sicher, dass Docker installiert ist und ausgeführt wird. Sie können es von docker.com herunterladen oder einen Paketmanager verwenden. Vergessen Sie nicht, die Umgebungsvariablen zu konfigurieren!
{
"mcpServers": {
"edubase": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"EDUBASE_API_URL",
"-e",
"EDUBASE_API_APP",
"-e",
"EDUBASE_API_KEY",
"edubase/mcp"
],
"env": {
"EDUBASE_API_URL": "https://domain.edubase.net/api",
"EDUBASE_API_APP": "your_integration_app_id",
"EDUBASE_API_KEY": "your_integration_secret_key"
}
}
}
}
Installation über Remote-MCP-Server
Sie können den bereitgestellten EduBase MCP-Server (falls verfügbar) als Remote-Server verwenden. Wir empfehlen, Ihre EDUBASE_API_APP und EDUBASE_API_KEY Base64 zu kodieren und als Bearer-Token im Authorization-Header zu verwenden (Authorization: Bearer ${BASE64_ENCODED_TOKEN}).
{
"mcpServers": {
"edubase": {
"command": "npx",
"args": [
"mcp-remote",
"https://domain.edubase.net/mcp",
"--header",
"Authorization: Bearer ${EDUBASE_API_APP}:${EDUBASE_API_KEY}"
]
}
}
}
Installation über Smithery
Um den EduBase MCP-Server für Claude Desktop automatisch über Smithery zu installieren:
npx -y @smithery/cli install @EduBase/MCP --client claude
Entwicklung
Führen Sie npm test aus, um den Server zu erstellen und die Tool-Liste zu überprüfen: die Größenbudgets der Tool-Liste und der Server-Anweisungen, die Tool-Beschreibungen, das Toolset, die Modi für schreibgeschützte und dynamische Toolsets sowie die Konfigurationsbehandlung des HTTP-Transports. Wenn neue Tools ein Budget überschreiten, kürzen Sie ihre Schemata oder erhöhen Sie das Budget in test/server.test.mjs bewusst, da jeder Client die Tool-Liste in jeder Sitzung bezahlt.
Kontakt
Website: www.edubase.net
Entwicklerdokumentation: developer.edubase.net
E-Mail: info@edubase.net