Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

Explore

  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Tags index
  • Submit a server
  • Pricing

Learn

  • Guides hub
  • What is MCP?
  • Install guide
  • Troubleshooting
  • Security
  • Blog
  • Blog RSS

Tools

  • All tools
  • Config generator
  • Config validator
  • MCP playground
  • OpenAPI β†’ MCP
  • Badge generator

For agents

  • API docs
  • Trust & traffic
  • llms.txt β†— (opens in a new tab)
  • Catalog JSON β†— (opens in a new tab)
  • Remote MCP β†— (opens in a new tab)

Company

  • About
  • Contact
  • X (@AllMCPs) β†— (opens in a new tab)
  • GitHub β†— (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on Buildlist
Β© 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. πŸŽ“ Education
  3. NTNU Courses (unofficial)
N
Health: Not checked yetWe have not completed a health check for this listing yet.Last checked 8/11/2026, 12:07:12 AM

NTNU Courses (unofficial)

Enrichment pendingWe haven’t run our AI enrichment pass on this listing yet, so the overview, use cases, and FAQ below may be sparse or missing. We work through the catalog over time β€” check back soon.
View Repository

Unofficial NTNU course data: search, timetables, grades, course info, and exam logistics.

Quick Install

Automated & IDE Setup

Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β€” or use 1-click editor setup below.

Add to CursorAdd to VS Code
Manual Client & Custom JSON ConfigExpand JSON β–Ύ

Install Config Generator

Choose your client
claude_desktop_config.json
{
  "mcpServers": {
    "ntnu-courses-unofficial": {
      "command": "npx",
      "args": [
        "-y",
        "ntnu-courses-unofficial"
      ]
    }
  }
}

πŸ’‘ Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)

Install Directory Badge Claim listing AlternativesπŸŽ“ More in Education

Documentation Overview

ntnu-mcp

A remote MCP server that exposes NTNU (Norwegian University of Science and Technology) course data to LLM assistants; course catalog search, teaching schedules, weekly timetables, grade statistics, course descriptions, exam logistics, and study programs with their official study plans, plus comparison tools for students choosing between courses. Runs as a Cloudflare Worker; no installation required on the client side.

Tools

Twelve tools, all read-only:

  • search_courses β€” free-text search of NTNU's course catalog for a given year; returns codes, names, campus, and exam dates.
  • get_course_schedule β€” every dated teaching activity (lectures, labs) for a course in a year, with Oslo-local times and rooms.
  • get_weekly_timetable β€” the recurring weekly timetable grid for a course: weekday, times, ISO-week ranges, and rooms.
  • get_grade_distribution β€” historical grade distribution for a course, per year and semester, with counts and percentages.
  • get_course_versions β€” the DBH-versioned course codes (e.g. TDT4100-1) behind a bare course code, useful when grade lookups come back empty.
  • get_semesters β€” NTNU's terms with ids like 26h/26v, teaching weeks, exam-period dates, and which term is current.
  • get_course_info β€” everything about a course except exam logistics: credits, level, campus, prerequisites, mandatory activities, content/learning outcomes, credit reductions, the study programs the teaching is planned for, contacts, and alert notices. English by default, language: "nb" for Norwegian.
  • get_exam_info β€” exam logistics for up to 10 courses in one call: every occasion (ordinary/re-sit) with date, start time, duration, permitted-aids code ("hjelpemiddelkode") with its meaning, exam system, and assigned rooms.
  • search_study_programs β€” search NTNU's ~400 study programs by text, level, and city; returns program codes for get_study_plan.
  • get_study_plan β€” the official plan for a program and cohort intake year: courses (codes, credits, mandatory/elective) per semester, with specialization choice points β€” the bridge from "I study X" to concrete course codes.
  • compare_courses β€” side-by-side comparison of several courses: name, campus, exam dates, weekly teaching hours, and latest grade distribution.
  • check_timetable_conflicts β€” pairwise check for weekly-schedule clashes and exam-date collisions across a set of courses, before registering for them.

Connecting

Paste the server's MCP URL into Claude's or ChatGPT's custom connector settings:

Code
https://ntnu-mcp.martinsundal.no/mcp

The server requires no authentication, since it only serves public, read-only NTNU course data.

The server is also listed in the official MCP registry as io.github.MartinSA04/ntnu-mcp (see server.json); clients that browse the registry can discover it there. It is an unofficial community server, not affiliated with NTNU. Registry updates are tag-driven: npm version <patch|minor|major> && git push --follow-tags β€” the version script keeps server.json in sync, and the release workflow runs the check suite, deploys the Worker, re-publishes the registry entry (GitHub OIDC), and creates the GitHub Release.

Architecture

All NTNU upstream knowledge β€” endpoints, retry policy, parsing of the Liferay catalog, DBH grade statistics, and TP semester data β€” lives in the ntnu-api TypeScript client library, which this repo depends on as an npm package. Upstream fixes and new data sources land in ntnu-api, not here. This repo's only job is to call that typed client and shape its output for LLM consumption: English names with Norwegian fallback, Oslo-local timestamps, grade rows collapsed into per-term distribution tables, and guidance notes on empty results. This layering is set out in ntnu-api's TypeScript migration spec.

To keep load on NTNU's servers minimal, every upstream call is cached in two tiers (per-isolate memory in front of a shared Workers KV namespace), so each resource is fetched roughly once per TTL globally: catalog searches, timetables, and schedules for 1 hour; grade statistics and the semester list for 24 hours. KV failures degrade to memory-only caching, never to tool errors. In tests the cache runs memory-only.

Local development

Requires Node 22 (pinned via mise).

sh
mise install     # installs the pinned Node version
npm install

Common tasks, available both as mise tasks and npm scripts:

sh
mise run dev          # npm run dev       β€” wrangler dev, local worker with hot reload
mise run test          # npm test          β€” vitest, over captured fixtures (no live network)
mise run typecheck     # npm run typecheck β€” tsc --noEmit
mise run lint          # npm run lint      β€” biome check
mise run fmt           # npm run fmt       β€” biome check --write
mise run check         # lint + typecheck + test

Tests run under plain Node (not the Workers pool) with vitest, driving the tool functions directly against fetch fixtures captured verbatim from ntnu-api's test suite β€” no calls to real NTNU services are made in CI or locally.

Deploy

Pushes to main deploy automatically (the repo is connected to Cloudflare Workers Builds). For a manual deploy from a checkout:

Terminal
npm run deploy   # wrangler deploy

Runs on Cloudflare's free plan: the MCP session state is backed by a Durable Object using SQLite storage, which is available on the free tier (no Workers Paid subscription required unless per-request CPU limits are hit at scale).

License

MIT β€” see LICENSE.

Related MCP Servers

View all in Education View all alternatives
  • C
    CourseProfiler

    Race course profiling, catalog search, course submission, and personalized race plans.

    πŸŽ“ Education0 views
    Compare vs CourseProfiler β†’
  • L
    Llamanotes

    Lucky AI study buddy over your own LlamaNotes courses: chat, progress, and AI course generation.

    πŸŽ“ Education0 views
    Compare vs Llamanotes β†’
  • Canvas Mcp logoCanvas Mcp

    Local-first MCP server for Canvas LMS. Stdio transport, no third-party broker, token stays in /.canvas.env. Exposes courses, assignments, modules, announcements, grades, planner items, upcoming events, todo, and bulk file dump as MCP tools.

    πŸŽ“ Education4 views
    Compare vs Canvas Mcp β†’
  • Brightspace Mcp Server logoBrightspace Mcp Server

    MCP server for D2L Brightspace LMS. Check grades, due dates, assignments, announcements, syllabus, rosters, discussions, and course content. Works with any school that uses Brightspace. Install via npx brightspace-mcp-server@latest.

    πŸŽ“ Education2 views
    Compare vs Brightspace Mcp Server β†’

Frequently Asked Questions about NTNU Courses (unofficial)

Add the following block to your claude_desktop_config.json under mcpServers: "mcpServers": { "ntnu-courses-unofficial": { "command": "npx", "args": ["-y", "NTNU Courses (unofficial)"] } }

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewNTNU Courses (unofficial) AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/ntnu-courses-unofficial?style=directory)](https://allmcps.com/mcp/ntnu-courses-unofficial)
HTML Embed
<a href="https://allmcps.com/mcp/ntnu-courses-unofficial"><img src="https://allmcps.com/api/badge/ntnu-courses-unofficial?style=directory" alt="NTNU Courses (unofficial) on AllMCPs" /></a>

Technical Specs & Signals

CategoryπŸŽ“Education
More technical detailsExpand β–Ύ
TransportSTDIO
RuntimeNode.js
0/5 checks healthy over the last 6h
Views0
Unique ViewsTotal visits recorded for this listing page on AllMCPs.
Installs0
Installs & Copy ActionsTotal times users copied install commands or configuration snippets for this server.
27Quality signal: Emerging Β· 27/100How this signal is calculated β–Ύ
Server availabilityNot measured

Not scored for repo-hosted servers β€” we can't reach the running server, only its GitHub page. Hosted MCP endpoints are health-checked live.

Verified ownership8/20
Documentation & tools11/30
Adoption & activity1/15
Community engagement0/10

A guidance signal from public completeness & health data β€” not a user rating. New listings start lower and rise as they add docs, get verified, and grow adoption. Signals we can't observe for a listing are skipped, not counted against it.

β˜… FeaturedMoxie Docs MCP logo

Moxie Docs MCP

MCP & Agent Skills for Automated Documentation, and codebase conventions + context

Explore Server β†’

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to get the verified badge and attach your website.

Free dofollow backlink: after claiming, verify your product site and place a dofollow AllMCPs badge β€” we recheck it stays live.

Claim & get free dofollow

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.

Explore more

More in πŸŽ“ Education β†’Alternatives to NTNU Courses (unofficial) β†’Install in Claude DesktopInstall in CursorInstall in VS Code