Skip to main content
Glama

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: Claude Canvas 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 claude
  1. Clone the repository:

git clone https://github.com/yourusername/school-mcp.git cd school-mcp
  1. Install the package:

pip install -e .
  1. Set up your environment variables by either:

    • Using the included setup helper (recommended)

    • Creating a .env file manually

Using the Setup Helper

Run 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

Manual Setup

If you prefer to set up manually:

  1. Copy the environment template:

cp .env.template .env # Edit .env with your credentials
  1. Configure Claude Desktop by following the Claude Desktop Integration Guide.

Running the server

Run directly:

python -m school_mcp

Or use the convenience script:

./run_server.py

Tools

  • get_deadlines: Fetch upcoming assignment deadlines from Canvas and Gradescope

  • add_to_reminders: Add assignments to macOS Reminders

  • list_courses: List all available Canvas courses

  • download_course_files: Download files from a Canvas course

  • set_download_path: Configure where downloaded files are saved

  • get_download_path_info: Check the current download location

Configuration

The 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

License

MIT

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/54yyyu/school-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server