University Course Catalog MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@University Course Catalog MCP ServerSearch for courses in the Computer Science department"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
University Course Catalog MCP Server
A Model Context Protocol (MCP) server exposing a university course catalog to Large Language Models (LLMs). This project acts as the backend for an AI-powered academic advisor, demonstrating how to use the MCP specification, define tools and resources, and manage state securely with a SQLite database.
Technologies Used
Python 3.12
FastAPI (for HTTP and SSE transport)
Model Context Protocol (MCP) SDK
SQLAlchemy (Database ORM)
Pydantic (Data validation)
NetworkX (Graph resolution for prerequisites)
Docker & Docker Compose (Containerization)
Related MCP server: University Course Catalog MCP Server
Getting Started
1. Prerequisites
Ensure you have Docker and Docker Compose installed on your system.
2. Environment Variables
An .env.example file is provided in the repository root. Ensure the database URL is correctly configured:
DATABASE_URL=sqlite:///./data/catalog.db
PORT=80803. Running the Server
You can launch the entire system using Docker Compose. This command builds the image, runs the database seed script automatically, and mounts the data/ volume for database persistence:
docker-compose up --build -dThe server will be available at http://localhost:8080. Docker Compose will also execute an automated healthcheck.
MCP Capabilities
Tools
search_courses: Searches the university course catalog for courses matching a query string. Can optionally filter by a specific department code.get_prerequisites: Retrieves the direct prerequisites for a given course code.lookup_instructor: Finds an instructor's details (Name, Email, Department) by their name.get_prerequisite_graph: Returns the full, multi-level dependency graph (nodes and edges) for a given course using NetworkX.
Resources
course-catalog://course_descriptions: A formatted text resource containing all courses and their descriptions.course-catalog://department_directory: A formatted text resource listing all academic departments and their codes.
Prompt Templates
course_comparison_template: A prompt template requesting the LLM to generate a structured comparison between two specific courses using their course codes.
Testing Locally
You can test the MCP server functionality by connecting the official MCP Inspector CLI to the server:
npx @anthropic-ai/inspector http://localhost:8080/sseFrom the inspector, you can invoke tools, fetch resources, and render prompt templates interactively.
This server cannot be deployed
Maintenance
Related MCP Connectors
An MCP server that provides an API to LLMs to manage their JumpCloud resources.
MCP server providing access to the Scorecard API to evaluate and optimize LLM systems.
Hosted MCP server exposing US hospital procedure cost data to AI assistants
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that provides LLMs with access to Georgia Tech's OSCAR course schedule system, enabling search for courses, subjects, and detailed course information.1MIT
- FlicenseNot gradedqualityDmaintenanceMCP server for querying a university course catalog. Enables searching courses, checking prerequisites, and looking up instructors via natural language.-
- AlicenseNot gradedqualityAmaintenanceA 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.1MIT
- FlicenseNot gradedqualityBmaintenanceMCP server exposing a university course catalog with tools for searching courses, looking up prerequisites and instructors, and generating prerequisite graphs, plus resources and a prompt template for AI academic advisors.-