Schulmanager Online MCP Server

Schulmanager Online MCP Server

A local MCP server that enables LLMs like Claude to access Schulmanager Online data including schedules, homework, exams, grades, and parental letters.

Category
Visit Server

README

Schulmanager Online MCP Server

Ein lokaler MCP-Server (Model Context Protocol) für den Zugriff auf Schulmanager Online Daten. Ermöglicht LLMs wie Claude den direkten Zugriff auf Stundenplan, Hausaufgaben, Prüfungen, Noten, Elternbriefe und mehr.

Hinweis: Dies ist ein inoffizielles Community-Projekt. Es besteht keine Verbindung zu Schulmanager Online GmbH. Nutzung auf eigene Verantwortung.

Features

Tool Beschreibung
schulmanager_daily_report Eltern-Briefing: Komplettueberblick pro Kind -- neue Nachrichten, Stundenplan morgen, Klassenarbeiten (7 Tage), Hausaufgaben (7 Tage)
schulmanager_get_students Alle Kinder/Schueler des Accounts auflisten
schulmanager_get_schedule Stundenplan abrufen (Zeitraum waehlbar)
schulmanager_get_homework Aktuelle Hausaufgaben
schulmanager_get_exams Anstehende Pruefungen und Klassenarbeiten
schulmanager_get_grades Noten pro Fach (sofern von der Schule freigeschaltet)
schulmanager_get_letters Elternbriefe und Benachrichtigungen
schulmanager_get_institution Schulinformationen
schulmanager_raw_call Beliebiger API-Aufruf fuer nicht abgedeckte Endpunkte

Voraussetzungen

Installation

git clone https://github.com/kohlsalem/schulmanager-mcp.git
cd schulmanager-mcp

python3 -m venv .venv
source .venv/bin/activate
pip install -e .

Konfiguration

1. Zugangsdaten hinterlegen

cp .env.example .env

Bearbeite .env mit deinen Schulmanager-Zugangsdaten:

SCHULMANAGER_EMAIL=deine-email@example.com
SCHULMANAGER_PASSWORD=dein-passwort

2. Claude Code einrichten

Füge folgendes in deine Claude Code Projekt-Settings (.claude/settings.json) oder globale Settings (~/.claude/settings.json) ein:

{
  "mcpServers": {
    "schulmanager": {
      "command": "/absoluter/pfad/zu/schulmanager-mcp/start.sh",
      "args": []
    }
  }
}

Alternativ kannst du die Credentials direkt als Umgebungsvariablen setzen (ohne .env-Datei):

{
  "mcpServers": {
    "schulmanager": {
      "command": "/absoluter/pfad/zu/schulmanager-mcp/.venv/bin/python",
      "args": ["-m", "schulmanager_mcp.server"],
      "env": {
        "SCHULMANAGER_EMAIL": "deine-email@example.com",
        "SCHULMANAGER_PASSWORD": "dein-passwort"
      }
    }
  }
}

Nutzung

Starte Claude Code im Projektverzeichnis (oder jedem Verzeichnis mit passender MCP-Konfiguration) und frage einfach:

> Gib mir das Eltern-Briefing
> Welche Hausaufgaben hat mein Kind?
> Zeig mir den Stundenplan fuer naechste Woche
> Welche Klassenarbeiten stehen in den naechsten 4 Wochen an?
> Gibt es neue Elternbriefe?
> Was steht morgen auf dem Stundenplan?

Standalone Daily Report

Das Eltern-Briefing kann auch ohne MCP direkt im Terminal ausgegeben werden:

./daily_report.sh

Beispiel-Report

# Eltern-Briefing (20.03.2026)

## Max Mustermann

### Auf einen Blick
- **1 ungelesene Nachricht** -- "Elternabend am 25.03."
- Stundenplan Mo: **1. Stunde faellt aus** (Deutsch), danach Englisch, Musik, Kunst
- **2 Arbeiten diese Woche** -- Di Englisch (Klassenarbeit), Mi Mathe (Klassenarbeit)
- Hausaufgaben fuer Mo: Englisch (+2 weitere diese Woche)

### Neue Nachrichten (1)
- **Elternabend am 25.03.** (2026-03-18)
  https://login.schulmanager-online.de/#/modules/letters/view/12345

### Stundenplan Mo 23.03.2026
- **1. Stunde**: ~~Deutsch~~ -- Entfall
- **2. Stunde**: Englisch (Mueller), Raum 201
- **3. Stunde**: Englisch (Mueller), Raum 201
- **4. Stunde**: Musik (Schmidt), Raum 110
- **5. Stunde**: Kunst (Schmidt), Raum 215

### Klassenarbeiten & Tests (naechste 7 Tage)
- **2026-03-24**: Englisch (Klassenarbeit)
- **2026-03-25**: Mathematik (Klassenarbeit) -- "Lineare Funktionen"

### Hausaufgaben (naechste 7 Tage)
- **Mo 23.03. Englisch**: Workbook S. 45, Nr. 3-5
- **Mi 25.03. Deutsch**: Aufsatz zu Ende schreiben
- **Do 26.03. Mathematik**: Aufgabenblatt Funktionen

Technische Details

Authentifizierung

Der Server nutzt die inoffizielle Schulmanager-Online-API:

  1. Salt abrufen via POST /api/get-salt
  2. Passwort hashen mit PBKDF2-SHA512 (99.999 Iterationen, 512 Byte Output)
  3. Login via POST /api/login -- liefert ein JWT-Token
  4. Daten abrufen via POST /api/calls mit Bearer-Token

API-Endpunkte

Alle Datenabfragen laufen ueber den zentralen /api/calls-Endpunkt als Batch-Requests:

Modul Endpunkt Beschreibung
schedules get-actual-lessons Stundenplan mit Vertretungen
classbook get-homework Hausaufgaben
exams get-exams Klassenarbeiten & Tests
grades get-grades Noten
letters get-letters Elternbriefe
main get-institution Schulinformationen

Ueber das schulmanager_raw_call-Tool koennen beliebige weitere Endpunkte angesprochen werden.

Danksagung

Die API-Struktur wurde durch Analyse bestehender Open-Source-Projekte ermittelt, insbesondere:

Lizenz

Dieses Projekt steht unter der Unlicense -- gemeinfrei, ohne jede Gewaehr.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured