UWaterloo MCP
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., "@UWaterloo MCPshow me my upcoming assignments and grades"
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.
UWaterloo MCP
Connect your UWaterloo Learn and Piazza accounts to Claude, ChatGPT, and Claude Code.
Read-only: reads course materials, announcements, grades, assignments, quizzes, and Piazza discussions. Never submits or posts.
Choose How to Run
Option 1: Deploy to Vercel (1-Click Cloud)
Best for Claude.ai and ChatGPT Web — provides a permanent HTTPS URL with zero server management or terminal commands.
Deploy to Vercel:
When prompted, enter a secure
MCP_AUTH_TOKEN(24+ characters). This is your server password.Connect Private Blob Storage (required to keep your login session alive across serverless requests): In your Vercel project dashboard, go to Storage → Create Database → Blob, select Private, and click Connect to Project.
Sign in at
/setup: Openhttps://<your-project>.vercel.app/setupin your browser. Enter yourMCP_AUTH_TOKEN, log in to WatIAM with Duo, and optionally connect your Piazza account.
Option 2: Self-Host with Docker (Zero Vendor Lock-in)
Best for local use, Claude Desktop, or your own VPS / home server.
git clone https://github.com/syed-zayd/uwaterloo-mcp.git
cd uwaterloo-mcp
docker compose up -d(Or without Docker: npm install && npm start — requires Node 22+ and Chrome)
Then open http://localhost:8787/setup in your browser to sign in.
Related MCP server: waterloo-learn-mcp
Connect Your AI Assistant
Once signed in at /setup, copy your ready-to-use config straight from the bottom of the page:
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"uwaterloo": {
"url": "https://<your-project>.vercel.app/mcp",
"headers": {
"Authorization": "Bearer YOUR_MCP_AUTH_TOKEN"
}
}
}
}(If running locally, use "url": "http://localhost:8787/mcp")
Claude Code CLI
claude mcp add uwaterloo https://<your-project>.vercel.app/mcp --header "Authorization: Bearer YOUR_MCP_AUTH_TOKEN"ChatGPT & Claude.ai Web
In ChatGPT (Settings → Developer mode → Add MCP Server) or Claude.ai:
Server URL:
https://<your-project>.vercel.app/mcpAuthentication: Bearer Token → paste your
MCP_AUTH_TOKEN
(If self-hosting locally, expose your local port with a tunnel first: cloudflared tunnel --url http://localhost:8787)
Available Tools
Learn
Courses & Upcoming:
list_courses,get_upcoming,get_announcements,get_classlist,list_groupsGrades & Rubrics:
get_grades,get_rubric,get_rubric_definitionAssignments & Submissions:
list_assignments,get_submissions,get_submission_file,get_submission_file_urlCourse Content & Files:
get_course_content,get_file,get_file_url,list_page_links,resolve_linkDiscussions & Quizzes:
list_discussions,list_discussion_posts,get_discussion_thread,get_quiz_attempts
Piazza
piazza_list_courses— List enrolled classespiazza_list_folders— List folders and categoriespiazza_search_posts— Search posts and instructor responsespiazza_get_posts— Read full discussion threads
License
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Read-only MCP server for ClassQuill, a tutoring-business-management platform.
MCP-native open-source Notion alternative: read & write pages, databases and kanban boards.
An MCP server that provides read access to your cloud storage providers, bank accounts and more.
PLATO (Pusan National University LMS) MCP server via Moodle Web Service API + ubboard scraping
Related MCP Servers
- AlicenseAqualityDmaintenanceAn MCP server that gives desktop AI apps access to your Waterloo LEARN courses, enabling listing courses, getting announcements, content, grades, and upcoming events through natural language.52ISC
- AlicenseAqualityCmaintenanceMCP server that lets AI assistants access University of Waterloo LEARN course data (announcements, content, grades, assignments, outlines) and search past assessments in Google Drive.10ISC
- AlicenseAqualityAmaintenanceRead-only MCP server for Canvas LMS that exposes tools to list courses, assignments, grades, submissions, syllabi, announcements, modules, pages, and files, without any write operations.1130 npm1MIT
- AlicenseAqualityCmaintenanceEnables MCP-compatible assistants to read Canvas course information—including courses, assignments, syllabi, modules, pages, and announcements—through a local read-only server.10MIT