School Timetable Builder
What it does
The assistant interviews you about your school: classes, subjects, lessons per week, teachers, rooms and the school day. It checks the data with our service, and then our engine calculates a full weekly timetable for every class and every teacher. You get the result as files in the chat (e.g. a spreadsheet), plus a "School data" file so you can run it again later.
Calculating a timetable usually takes 5–8 minutes. Checking the data takes a few seconds.
Real names are fine – the assistant anonymises for you
Talk to the assistant as you normally would, with your teachers' real names. You do not need to prepare or anonymise anything yourself.
- Before anything is sent, the assistant replaces every teacher name with a code (T01, T02, …) and shows you the code list. The list stays in your chat.
- You stay in control: you can ask the assistant at any time to show you exactly what it is about to send, before it sends it.
- When the timetable comes back, the assistant puts the real names back in, so your files show the names you know.
Two things the assistant never sends, and you should not ask it to: information about individual pupils, and health or other personal reasons (a blocked time is sent as e.g. "teaches at another school" or "fixed agreement").
How to connect
Claude: School Timetable Builder is listed in Claude's connector directory. Open Customize → Connectors, search for "School Timetable Builder" and click Connect.
Or add it yourself: Settings → Connectors → Add custom connector, and paste this address:
https://timetable-builder.wilbek.workers.dev/mcp
This also works on the free Claude plan, which allows one custom connector.
ChatGPT: add the same address as a connector/app (developer mode), or find "School Timetable Builder" in the app directory once it is listed.
No account or login is needed.
Examples
Start the conversation with something like:
"Help me make next year's timetable for our school. We have grades 0–9 with two classes per grade."
"Here is our subject plan and our list of teachers with their subjects [paste]. Can you check whether we have enough teachers before you make the timetable?"
"Make a timetable for our small school: grades 1–6, one class per grade, 6 lessons a day. Mrs Hansen teaches at another school every Friday."
"Run the timetable again with this School data file [attach], but Mrs Hansen now teaches 2 fewer lessons."
What the engine can handle
- 5 school days a week, 1–12 lessons a day, any (equal) lesson length, free break times.
- Grades 0–10 split into 1–3 teacher teams. Teachers can work across teams.
- Teacher availability: block any day or lesson for a teacher, e.g. “not after lesson 4 on Fridays” or “teaches at another school on Mondays”.
- Blocked lessons for a class or a whole grade (e.g. lessons away from school).
- Teacher workload: lessons per week, part-time, teachers working across teams.
- No gaps: planning time at school is placed in each teacher’s timetable, and by default teachers’ days have no empty gaps.
- Subjects per class and week, double lessons, minimum and maximum lessons per day for each subject, fixed teachers for a class.
- Shared special rooms with limited capacity (sports hall, music room, workshops).
- Classes taught at the same time (e.g. language groups across a grade, PE in pairs).
- Every rule is a firm rule: the timetable meets all of them, or you get a plain explanation of what clashes.
- Not supported: whole-day events (camps, trips), soft “if possible” preferences that are weighed against each other, and timetables longer than one week.
Troubleshooting
| What you see | What to do |
|---|---|
| "INVALID" when the data is checked | The assistant explains what is wrong (e.g. a subject with no qualified teacher). Correct the data and check again. Checking is free. |
| "IMPOSSIBLE" | Your rules cannot all be met at the same time. The assistant explains why and suggests changes. You decide what to change; the assistant never changes your rules on its own. |
| Limit reached | The free service has shared hourly and daily limits. Try again later. |
| The assistant stops while the timetable is being made | Write "continue" or "check the result". If more than an hour has passed, the result may be gone. Start the timetable again. |
| The result is gone | We keep nothing for more than 24 hours. Use the "School data" file from the chat to run it again. |
Feedback
Tell the assistant what worked and what did not, e.g. "Tell the developer that …". It passes your words on to us without names. Nobody replies through this channel. If you would like an answer, email us.
Support
Questions, errors or security concerns: timetablingengine.support@gmail.com. Please do not send personal data. Describe the problem and, if possible, attach the School data file.
Always check a timetable before you use it. See the Terms of Use.