School MCP
Fetches upcoming assignment deadlines, lists available courses, and downloads course materials and files
Adds deadlines to macOS Calendar or Reminders using AppleScript and manages local file downloads
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
School MCP
A Model Context Protocol (MCP) server for academic tools, integrating with Canvas and Gradescope platforms.
Features
Assignment Deadlines: Fetch and display upcoming deadlines from Canvas and Gradescope
Calendar Integration: Add deadlines to macOS Calendar or Reminders using AppleScript
File Management: Download course materials from Canvas
Related MCP server: moodle-mcp
Quickstart
Installation
Installing via Smithery
To install School MCP for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @54yyyu/school-mcp --client claudeClone the repository:
git clone https://github.com/yourusername/school-mcp.git
cd school-mcpInstall the package:
pip install -e .Set up your environment variables by either:
Using the included setup helper (recommended)
Creating a
.envfile manually
Using the Setup Helper
Run the setup helper to configure Claude Desktop automatically:
python setup_helper.pyThe setup helper will:
Find your Claude Desktop configuration file
Create a
.envfile if neededConfigure the MCP server with proper paths
Add your environment variables to the Claude Desktop configuration
Manual Setup
If you prefer to set up manually:
Copy the environment template:
cp .env.template .env
# Edit .env with your credentialsConfigure Claude Desktop by following the Claude Desktop Integration Guide.
Running the server
Run directly:
python -m school_mcpOr use the convenience script:
./run_server.pyCLI: cw / coursework
pip install -e . also installs a command-line tool, cw (long name coursework):
cw deadlines # unsubmitted work due in the next 14 days (Canvas + Gradescope)
cw deadlines -s canvas -d 7 # Canvas only, next week
cw announcements -u # unread course announcements
cw inbox -u # unread Canvas inbox conversations
cw message 512758 # read a thread (does not mark it read)
cw grades 20.201 # per-assignment scores for one course
cw files 6.7810 --compare ~/Desktop/MIT/6.7810 --missing # what's not filed locally yet
cw download crispr # download a course's files (or --id ID ... for a selection)
cw use columbia # switch the active accountCourses can be named by code, name fragment or Canvas id. Every command has
-h, --json, and (where it talks to a school) -a ACCOUNT.
A Claude Code skill for the CLI lives in skill/coursework/; symlink it into
~/.claude/skills/ to make it available in every session.
MCP Tools
get_deadlines: Fetch upcoming assignment deadlines from Canvas and Gradescopeadd_to_reminders: Add assignments to macOS Reminderslist_courses: List all available Canvas coursesdownload_course_files: Download files from a Canvas courseset_download_path: Configure where downloaded files are savedget_download_path_info: Check the current download location
Configuration
The server tries to find configuration in this order:
Environment variables
.envfile in the current directoryExisting
config.jsonfile in the home directory
License
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Model Context Protocol server for Studex tools, notifications, and profile integrations
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Markdown-based note-taking with a hosted MCP server. Your notes serve you and your AI.
Hosted Notion MCP server for Claude, ChatGPT and Cursor, with each action switched per account.
Related MCP Servers
- AlicenseBqualityFmaintenanceA Model Context Protocol server that enables interaction with the Canvas Learning Management System API, allowing users to manage courses, assignments, enrollments, and grades within Canvas.544,639 npm104JavaScriptMIT
- FlicenseNot gradedqualityBmaintenanceA Model Context Protocol (MCP) server that connects AI coding agents to your Moodle LMS. Fetch assignments, grades, deadlines, and sync everything to Obsidian automatically.-
- AlicenseNot gradedqualityDmaintenanceMCP server that integrates GitHub, Brightspace, Outlook, and local files, enabling natural language queries for assignments, grades, emails, calendar events, repositories, and file operations.MIT
- AlicenseNot gradedqualityAmaintenanceEnables natural-language queries across multiple schools' Canvas and Blackboard accounts for courses, notifications, assignments, grades, feedback, and schedules, with read-only access and local todo/calendar export.9MIT