# School Timetable Builder (remote · timetable-builder.wilbek.workers.dev)

Build a full weekly timetable for a primary school (classes, teachers, rooms) via chat.

- Trust score: 71/100 (medium)
- Change this week: +4
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-10-24

## Components

- remote · `timetable-builder.wilbek.workers.dev`: 71/100 (this document), [markdown](https://verifymcp.io/servers/wilbek-source-timetable-builder/timetable-builder.md), [page](https://verifymcp.io/servers/wilbek-source-timetable-builder/timetable-builder)

## Channel facts

- Endpoint: `https://timetable-builder.wilbek.workers.dev/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.0.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-10-24.

- **Endpoint Security**: 69/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one.
  - HTTPS enforcement could not be verified: the plaintext port answered with HTTP 406, which proves neither a plaintext path nor enforcement.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 63/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 1485 tokens (~297/item across 5 items; 5 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - All 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.
  - An AI judge read all 6 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the School Timetable Builder MCP server?

School Timetable Builder is a hosted endpoint at https://timetable-builder.wilbek.workers.dev/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http wilbek-source-timetable-builder 'https://timetable-builder.wilbek.workers.dev/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "wilbek-source-timetable-builder": {
      "url": "https://timetable-builder.wilbek.workers.dev/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "wilbek-source-timetable-builder": {
      "type": "http",
      "url": "https://timetable-builder.wilbek.workers.dev/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.wilbek-source-timetable-builder]
url = "https://timetable-builder.wilbek.workers.dev/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "wilbek-source-timetable-builder": {
      "type": "remote",
      "url": "https://timetable-builder.wilbek.workers.dev/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add wilbek-source-timetable-builder --url 'https://timetable-builder.wilbek.workers.dev/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  wilbek-source-timetable-builder:
    url: "https://timetable-builder.wilbek.workers.dev/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "wilbek-source-timetable-builder": {
      "Transport": "http",
      "Url": "https://timetable-builder.wilbek.workers.dev/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add wilbek-source-timetable-builder -t streamable-http -u 'https://timetable-builder.wilbek.workers.dev/mcp'
```

### Other

```json
{
  "mcpServers": {
    "wilbek-source-timetable-builder": {
      "type": "http",
      "url": "https://timetable-builder.wilbek.workers.dev/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-10-24 (score 71, +1)

No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-22 (score 70, +1)

No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-20 (score 69, +1)

No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-18 (score 68, +1)

No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-17 (score 67, 0)

- [functional improvement] Stability: unverified → 0.03

### 2026-10-16 (score 67)

First indexed and scored.

## MCP tools (5)

### `get_interview_guide` (~43 tokens)

Get interview guide

Returns the interview guide: which questions to ask the user, default values, engine limits and the exact format of the 8 input files. Call this first.

### `validate_input` (~189 tokens)

Validate input files (free)

Checks the 8 input files in a few seconds without creating a timetable: file structure, engine limits and a capacity analysis (enough teachers/time?). Returns VALID (with warnings) or INVALID (with reasons). Always run this before create_schedule.

Input parameters:

- `files` (object, required): The 8 input files, exactly as described in the interview guide's 'submission' and 'topics'. JSON files are sent as JSON text inside the string; empty CSV files contain only the header line.
- `user_country` (string): Optional, for anonymous usage statistics: the school's country (e.g. 'Denmark') if the user has mentioned it. Never ask the user just for this.
- `user_language` (string): Optional, for anonymous usage statistics: the language you talk to the user in (e.g. 'da', 'en'). Fill it in if you know it; never ask the user.

### `create_schedule` (~192 tokens)

Create timetable

Starts calculating the full timetable from the 8 input files (validate them first). Returns a job_id at once; the calculation takes about 5-8 minutes. Then keep calling get_schedule_result with the job_id in the same reply until it is done.

Input parameters:

- `files` (object, required): The 8 input files, exactly as described in the interview guide's 'submission' and 'topics'. JSON files are sent as JSON text inside the string; empty CSV files contain only the header line.
- `user_country` (string): Optional, for anonymous usage statistics: the school's country (e.g. 'Denmark') if the user has mentioned it. Never ask the user just for this.
- `user_language` (string): Optional, for anonymous usage statistics: the language you talk to the user in (e.g. 'da', 'en'). Fill it in if you know it; never ask the user.

### `get_schedule_result` (~177 tokens)

Get timetable result

Gets the status or result of a job from create_schedule (or a slow validate_input). While running: progress. When done: a compact timetable as text plus a link (valid 1 hour) to the full JSON result. view='classes' (default) = one table per class, 'teachers' = one per teacher incl. preparation time, 'summary' = key figures and lists of classes/teachers only. Use 'names' to get only some classes/teachers (recommended for big schools). If impossible: the reasons.

Input parameters:

- `job_id` (string, required): job_id from create_schedule or validate_input
- `names` (array): Only these classes (e.g. '1.A') or teacher codes (e.g. 'T01')
- `view` (string): What to show when done (default 'classes')

### `send_feedback` (~252 tokens)

Send feedback to the developer

Passes the user's feedback about the timetable service on to its developer (what worked, what did not, wishes). Only call it when the user has said they want to give feedback, and send what the user said in their own words (you may shorten it; any language is fine). Never include teacher names, other personal data or the school's data files. Tell the user briefly that it was sent. Nobody replies through this channel - if the user wants an answer, give them the support email timetablingengine.support@gmail.com.

Input parameters:

- `job_id` (string): job_id of the timetable the feedback is about, if any
- `message` (string, required): The user's feedback, without names or other personal data
- `sentiment` (string): Overall tone of the feedback, if clear
- `user_country` (string): Optional, for anonymous usage statistics: the school's country (e.g. 'Denmark') if the user has mentioned it. Never ask the user just for this.
- `user_language` (string): Optional, for anonymous usage statistics: the language you talk to the user in (e.g. 'da', 'en'). Fill it in if you know it; never ask the user.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/wilbek-source-timetable-builder/timetable-builder#diagnostics

## Score history

- 2026-10-24: 71
- 2026-10-23: 70
- 2026-10-22: 70
- 2026-10-21: 69
- 2026-10-20: 69
- 2026-10-19: 68
- 2026-10-18: 68
- 2026-10-17: 67
- 2026-10-16: 67

## Common questions

### What is the School Timetable Builder MCP server?

School Timetable Builder is an MCP server listed in the public MCP registry as io.github.wilbek-source/timetable-builder. Build a full weekly timetable for a primary school (classes, teachers, rooms) via chat. This page covers its hosted endpoint (https://timetable-builder.wilbek.workers.dev/mcp).

### Is the School Timetable Builder MCP server safe to use?

School Timetable Builder scores 71 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the School Timetable Builder MCP server expose?

School Timetable Builder exposes 5 tools: get_interview_guide, validate_input, create_schedule, get_schedule_result, send_feedback. Their descriptions and schemas cost roughly 853 tokens of context every time the server is loaded.

### Does the School Timetable Builder MCP server require authentication?

No. We connected to School Timetable Builder without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the School Timetable Builder MCP server still maintained?

School Timetable Builder is still listed as active in the MCP registry. We last reached this channel on 24 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://timetable-builder.wilbek.workers.dev/mcp
- Website: https://wilbek-source.github.io/timetable-builder/
- Changelog RSS feed: https://verifymcp.io/servers/wilbek-source-timetable-builder/timetable-builder.xml
- Changelog JSON feed: https://verifymcp.io/servers/wilbek-source-timetable-builder/timetable-builder.json
- HTML version of this page: https://verifymcp.io/servers/wilbek-source-timetable-builder/timetable-builder
