Labsco
MCP SERVER

Learning Hub

by genyk1p

Run one child's school tracking — grades, homework, weak topics and earned game time — through an AI tutor.

Education, Tutoring & Study Tools
Summary
The rules of the household, written where the tutor can apply them.

Grades turn into game minutes by a table you set, homework pays a bonus when it is on time, and weak topics keep coming back until they have been repeated enough. Because it is one database per child, the tutoring session and the incentive scheme stay in step.

What it is

A per-student learning workflow server backed by SQLite. Subjects, grades on the 5-point European scale, topics needing work, homework with deadlines and bonus tasks all live in one database, and grades convert to game minutes through a map you configure. Each instance serves a single student; a second child gets a second instance.

What you get
  • School subjects created, listed and updated, with multi-country support (UA, CZ, DE and others)
  • Grades recorded on a 5-point scale where 1 is best and 5 is worst
  • Topics opened for weak areas, listed, and closed once they stop needing review
  • Homework tracked against deadlines, with on-time and overdue minute adjustments
  • Bonus tasks that reward game minutes, capped at 4 pending and 15 completed in a rolling week
  • Game minutes kept as an immutable ledger of what was earned and spent
  • A textbook library with markdown summaries and indexed content
  • Topic reviews that keep a weak area open until the repetition threshold for its grade is met
  • Escalation notices to parents on a bad grade
  • Pluggable sync providers — EduPage, PRONOTE — with credentials held in a secrets table
Requirements

Python with Poetry, plus one Alembic migration to create the database. It defaults to ./data/learning_hub.db, and an environment variable points it somewhere else. Runtime behaviour — the grade-to-minutes map, review thresholds, homework bonuses, default deadline time — lives in the database and is set through tools rather than a config file. The project describes itself as beta, tested with one family.

Setup effort

Build from source — clone the repository and build it, then point your client at the binary