school mcp
A Model Context Protocol server that helps students manage academic workflows by integrating with Canvas and Gradescope to fetch deadlines, download course materials, and sync with macOS Calendar or Reminders.
A Model Context Protocol server that helps students manage academic workflows by integrating with Canvas and Gradescope to fetch deadlines, download course materials, and sync with macOS Calendar or Reminders.
A Model Context Protocol (MCP) server for academic tools, integrating with Canvas and Gradescope platforms.
To install School MCP for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @54yyyu/school-mcp --client claude
Clone the repository:
git clone https://github.com/yourusername/school-mcp.git
cd school-mcp
Install the package:
pip install -e .
Set up your environment variables by either:
.env
file manuallyRun the setup helper to configure Claude Desktop automatically:
python setup_helper.py
The setup helper will:
- Find your Claude Desktop configuration file
- Create a .env
file if needed
- Configure the MCP server with proper paths
- Add your environment variables to the Claude Desktop configuration
If you prefer to set up manually:
Copy the environment template:
cp .env.template .env
# Edit .env with your credentials
Configure Claude Desktop by following the Claude Desktop Integration Guide.
Run directly:
python -m school_mcp
Or use the convenience script:
./run_server.py
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 locationThe server tries to find configuration in this order:
1. Environment variables
2. .env
file in the current directory
3. Existing config.json
file in the home directory
MIT