Skip to main content
Glama
manikantaraju12

University Course Catalog MCP Server

University Course Catalog MCP Server

This project implements an MCP server for a university course catalog, backed by SQLite and exposed over HTTP on port 8080.

What it provides

  • search_courses: search courses by keyword and optional department code.

  • get_prerequisites: fetch the direct prerequisites for a course code.

  • lookup_instructor: look up an instructor by name.

  • get_prerequisite_graph: return the full prerequisite dependency graph for a course.

  • course_descriptions: resource with all course descriptions.

  • department_directory: resource with all departments and codes.

  • course_comparison_template: prompt template for comparing two courses.

Related MCP server: University Course Catalog MCP Server

Project Layout

  • src/: application code.

  • data/catalog.db: seeded SQLite database.

  • data/seed.py: database seeding helper used for submission requirements.

  • Dockerfile: container build definition.

  • docker-compose.yml: local orchestration.

Run with Docker Engine

Docker Desktop is not required. Use a standard Docker Engine installation with the Compose plugin, or a compatible docker-compose CLI.

docker compose up --build

The server will be available at http://localhost:8080, and the health endpoint is http://localhost:8080/health.

Local Development

If you are not using Docker at all, you can run the server directly with Python:

python -m venv .venv
.venv\\Scripts\\activate
pip install -r requirements.txt
python -m src.seed
$env:PORT=8081
python -m src.main

If port 8080 is already in use, pick another free port with PORT and run python -m src.main again.

Example Queries

  • Search for programming courses in Computer Science.

  • Show prerequisites for CS350.

  • Look up instructor Dr. Ada Lovelace.

  • Compare CS101 and CS102.

MCP endpoint

The MCP ASGI app is mounted at /mcp.

Related MCP Connectors

Related MCP Servers

  • A
    license
    C
    quality
    A
    maintenance
    An MCP server for interacting with SQLite databases, enabling SQL query execution, schema inspection, and CRUD operations.
    7
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    A read-only MCP server exposing NTNU course data to LLM assistants, enabling course catalog search, teaching schedules, weekly timetables, grade statistics, and course comparison tools.
    MIT