NTNU Courses (unofficial) is an MCP server with 12 tools an agent can call, among them check_timetable_conflicts, compare_courses, get_course_info. It answers at https://ntnu-mcp.martinsundal.no/mcp over streamable HTTP, and it listed its tools to an anonymous client, so no sign-in was needed for that. Our probes reached it 6 of 6 times since 11 September 2026; the last check, on 20 October 2026, succeeded.
Unofficial NTNU course data: search, timetables, grades, course info, and exam logistics.
Description as the publisher wrote it.
| Tool | What it does |
|---|---|
check_timetable_conflicts | Checks a set of NTNU courses for the same year for clashing lecture/lab times and colliding exam dates — a clash check to run before registering for courses. Accepts bare course codes. Each side of a conflict carries its activity 'kind': a Inputs: course_codes, year |
compare_courses | Side-by-side comparison of NTNU courses for a given year — campus, exam dates, weekly teaching hours, and latest grade distribution — to help choose between courses. Accepts bare course codes. Inputs: course_codes, year |
get_course_info | Everything about an NTNU course except exam logistics: credits, level, campus, language of instruction, prerequisites, mandatory activities, course content / learning outcomes, credit reductions ('studiepoengreduksjon'), which study program Inputs: course_code, year, language |
get_course_schedule | Every dated teaching activity (lectures, labs) for a course in a year, with Oslo-local times and rooms. Long output for large courses — prefer get_weekly_timetable for a compact recurring-week overview. Inputs: course_code, year |
get_course_versions | The DBH-versioned course codes (like 'TDT4100-1') that exist for a bare NTNU course code. Useful when grade lookups come back empty. Inputs: course_code |
get_exam_info | Exam logistics for one or more NTNU courses in a single call: every exam occasion (ordinary / re-sit) with date, start time, duration, permitted-aids code ('hjelpemiddelkode') with its meaning, exam system, and assigned rooms. The way to an Inputs: course_codes, year, language |
get_grade_distribution | Historical grade distribution for an NTNU course (per year and semester, with counts and percentages; grades A-F, or pass/fail codes). Accepts bare codes like 'TDT4100'. Omit years to get all recorded years. Small counts may be privacy-mask Inputs: course_code, years |
get_semesters | NTNU's terms (semesters) with ids like '26h' (autumn 2026) / '26v' (spring), teaching weeks, exam-period dates, and which term is current. |
get_study_plan | The official study plan for an NTNU program and cohort intake year: which courses (codes, credits, mandatory/elective) belong to each semester, and the specialization choice points with their course groups. The bridge from 'I study X' to co Inputs: program_code, cohort_year |
get_weekly_timetable | The recurring weekly timetable grid for a course in a year: weekday, times, ISO-week ranges, rooms, and a classified 'kind' per slot (lecture / exercise / lab / seminar / unknown). The compact way to answer 'when are the lectures for X' — f Inputs: course_code, year |
search_courses | Search NTNU's course catalog for a given year (server-side free-text search over course names and codes; Norwegian terms often match best, e.g. 'maskinlæring' rather than 'machine learning'). Call this first when you don't know the exact co Inputs: year, query, page |
search_study_programs | Search NTNU's study-program catalog (~400 programs) by free text (name, code, keywords), study level (e.g. 'bachelor', 'master', 'ph.d'), and/or city (Trondheim, Gjøvik, Ålesund). Returns program codes like 'MTDT' — the input for get_study_ Inputs: query, level, city |
Every block below points at https://ntnu-mcp.martinsundal.no/mcp. Pick your client and copy.
claude mcp add --transport http ntnu-courses-unofficial https://ntnu-mcp.martinsundal.no/mcp
{
"mcpServers": {
"ntnu-courses-unofficial": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://ntnu-mcp.martinsundal.no/mcp"]
}
}
}{
"mcpServers": {
"ntnu-courses-unofficial": {
"url": "https://ntnu-mcp.martinsundal.no/mcp"
}
}
}{
"servers": {
"ntnu-courses-unofficial": {
"type": "http",
"url": "https://ntnu-mcp.martinsundal.no/mcp"
}
}
}{
"context_servers": {
"ntnu-courses-unofficial": {
"url": "https://ntnu-mcp.martinsundal.no/mcp"
}
}
}{
"mcpServers": {
"ntnu-courses-unofficial": {
"serverUrl": "https://ntnu-mcp.martinsundal.no/mcp"
}
}
}{
"mcpServers": {
"ntnu-courses-unofficial": {
"url": "https://ntnu-mcp.martinsundal.no/mcp"
}
}
}name: NTNU Courses (unofficial)
version: 0.0.1
schema: v1
mcpServers:
- name: NTNU Courses (unofficial)
type: streamable-http
url: https://ntnu-mcp.martinsundal.no/mcp{
"mcpServers": {
"ntnu-courses-unofficial": {
"httpUrl": "https://ntnu-mcp.martinsundal.no/mcp"
}
}
}{
"mcpServers": {
"ntnu-courses-unofficial": {
"type": "http",
"url": "https://ntnu-mcp.martinsundal.no/mcp"
}
}
}{
"mcpServers": {
"ntnu-courses-unofficial": {
"url": "https://ntnu-mcp.martinsundal.no/mcp"
}
}
}goose://extension?url=https%3A%2F%2Fntnu-mcp.martinsundal.no%2Fmcp&type=streamable_http&id=ntnu-courses-unofficial&name=NTNU%20Courses%20%28unofficial%29
It answered our last check on 20 October 2026 in 332 ms. Over 6 checks since 11 September 2026 it answered 6. Status here comes from Neuronto's own probes, not from the publisher.
12, as returned by the server's own tools/list on 12 September 2026: check_timetable_conflicts, compare_courses, get_course_info, get_course_schedule, get_course_versions, get_exam_info, get_grade_distribution, get_semesters, and 4 more.
It answered our last check on 20 October 2026 in 332 ms. Over 6 checks since 11 September 2026 it answered 6.
Put the server under mcpServers in ~/.cursor/mcp.json with the URL https://ntnu-mcp.martinsundal.no/mcp. The exact JSON is above, with the same setup for Claude Code, Claude Desktop, VS Code, Windsurf, Zed, Gemini CLI and the rest.
It listed its tools to an anonymous client, so reading the tool list needs no key. Individual tools can still ask for credentials in their own inputs.
Publisher: io.github.martinsa04. Endpoint host: ntnu-mcp.martinsundal.no. ARD identifier: urn:air:io.github.martinsa04:mcp:ntnu-mcp.
First indexed 10 September 2026. The tools are exactly what the server returned; nothing on this page
is inferred from its name. Ranking in Neuronto search is never for sale.