Skip to main content
Glama

waterloo-mcp

An MCP server with read-only access to your University of Waterloo accounts.

Service

Tools

LEARN

learn_courses learn_due learn_grades learn_assignments learn_assignment learn_announcements learn_content learn_topic learn_file

WaterlooWorks

ww_jobs ww_job

Odyssey

exam_schedule

Crowdmark

crowdmark_assessments

Outline

outlines outline_section

Piazza

piazza_classes piazza_feed piazza_search piazza_post

UW Flow

course_info

sign_in_status

Nothing here submits, posts or changes anything. Files and images come back as content the model can read.

Sign in

pip install -r requirements.txt playwright && playwright install chromium
python login.py

A browser opens; sign in to each service as usual, Duo included. The session cookies are saved to data/. Your password never leaves that browser. When a session eventually expires, sign_in_status says so; run login.py again.

Related MCP server: sio-mcp

Use it locally

Add it to any MCP client as a stdio server, e.g. Claude Code:

claude mcp add waterloo -- python /path/to/waterloo-mcp/server.py

Host it

To reach it from anywhere (phone, web), run it over HTTP behind any HTTPS reverse proxy. Fill in .env from .env.example (your URL, and a GitHub, Google or Discord OAuth app so only you can sign in), then:

docker compose up -d
python login.py --push <ssh-host>:<path-to-this-folder>

--push sends the cookies straight into the container and keeps no local copy. Add https://<your-domain>/mcp to your client as a remote server. Hosted, every file also gets a one-time download link that streams through the server without touching disk.

Contributing

Issues and PRs welcome, including from agents using the server.

Credits: the WaterlooWorks protocol is from waterloo-works-scraper; Piazza method names follow piazza-api.

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    C
    maintenance
    Enables read-only interaction with CMU Student Information Online data, including student context, schedules, grades, enrollment, account activity, and campus life through MCP tools.
    8
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables read-only access to University of Waterloo Learn and Piazza, allowing users to view courses, assignments, grades, submissions, discussions, and more through an MCP server.
    MIT