

Noti
Documentation

Noti
Documentation
Claude Desktop Setup Guide
Quick Setup (Recommended)
Use our automated setup script to configure everything in one step:
curl -sSL https://raw.githubusercontent.com/Kuria-Mbatia/notioc-canvas-mcp-server/main/setup.sh | bash
The script will automatically download, install, configure, and set up the MCP server with Claude Desktop. You'll only need to provide your Canvas URL and API token when prompted.
Prerequisites
- Claude Desktop application installed
- Node.js 18+ installed on your computer
- Canvas LMS access with ability to generate API tokens
- Basic familiarity with terminal/command line
Manual Installation
If you prefer to set up manually or the automated script doesn't work for your system:
Step 1: Download the MCP Server
Option A: Clone from GitHub
git clone https://github.com/Kuria-Mbatia/notioc-canvas-mcp-server.git
cd notioc-canvas-mcp-server
Option B: Download ZIP
Download the ZIP file from our GitHub repository and extract it to a directory like /Users/yourusername/notioc-canvas-mcp-server
Step 2: Install Dependencies and Build
Navigate to the MCP server directory and install the required packages:
cd notioc-canvas-mcp-server
npm install
npm run build
Step 3: Get Your Canvas API Token
- Log into your Canvas LMS instance
- Go to Account → Settings
- Scroll down to the "Approved Integrations" section
- Click "+ New Access Token"
- Enter a purpose like "Kairo MCP Server"
- Click "Generate Token"
- Copy the generated token (you won't see it again!)
Important: Keep your API token secure and never share it!
Step 4: Configure Environment Variables
Create a configuration file with your Canvas details:
cp .env.example .env
Edit the .env
file with your Canvas information:
CANVAS_BASE_URL=https://your-canvas-instance.instructure.com
CANVAS_ACCESS_TOKEN=your-canvas-access-token-here
LOG_LEVEL=info
Step 5: Configure Claude Desktop
Locate your Claude Desktop configuration file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- Linux:
~/.config/Claude/claude_desktop_config.json
Add the MCP server configuration to your Claude config file:
Note: Replace /absolute/path/to/notioc-canvas-mcp-server
with the actual full path to where you downloaded the MCP server. The cwd
parameter sets the working directory for the server. Use forward slashes (/) even on Windows in the JSON configuration.
Step 6: Restart Claude Desktop
Close Claude Desktop completely and restart it. The MCP server should now be available and you'll see
"notioc-canvas" in the list of available tools when you start a new conversation.
Testing Your Setup
Start a new conversation with Claude and try these test commands:
Test Commands:
- "What courses am I enrolled in on Canvas?"
- "List my current Canvas courses"
- "Show me upcoming assignments"
- "What assignments do I have for [course name]?"
- "Get the syllabus for [course name]"
Success Indicators: You should see Claude mentioning "notioc-canvas" tools in its responses and getting actual data from your Canvas courses.
Troubleshooting
MCP Server Not Recognized
- Verify the path in your Claude config is correct and uses absolute paths
- Ensure you've run
npm run build
and thedist/src/server.js
file exists - Check that the JSON configuration is valid (use a JSON validator)
- Restart Claude Desktop completely (force quit if necessary)
- Make sure the
cwd
parameter points to the correct project directory
Authentication Issues
- Verify your Canvas base URL is correct (no trailing slash)
- Check that your API token is valid and hasn't expired
- Ensure your Canvas instance is accessible from your network
- Test your credentials by accessing Canvas API directly in browser:
[your-canvas-url]/api/v1/courses
No Data Returned
- Check that you're enrolled in active courses
- Verify your API token has necessary permissions (course read access)
- Look at Claude Desktop logs for error messages
- Try different course enrollment states (current, completed, all)
Checking Logs
To see detailed logs for debugging:
- macOS:
~/Library/Logs/Claude/
- Windows:
%APPDATA%\Claude\logs\
- Set
LOG_LEVEL=debug
in your configuration for more verbose output
Path Issues
Common Path Examples:
Advanced Configuration
Environment Variables
Additional configuration options:
# Required
CANVAS_BASE_URL=https://your-canvas-instance.instructure.com
CANVAS_ACCESS_TOKEN=your-token-here
# Optional
LOG_LEVEL=info # debug, info, warn, error
REQUEST_TIMEOUT=30000 # Request timeout in milliseconds
CACHE_TTL=300 # Cache time-to-live in seconds
MAX_FILE_SIZE=10485760 # Max file size for reading (10MB)
Complete Configuration Example
Here's a complete Claude Desktop configuration file:
Available Features
Once configured, you can ask Claude to:
- Course Management: List courses, get course details, view enrollments
- Assignments: View assignments, check due dates, get submission details
- Files & Content: Access course files, read PDFs and documents
- Announcements: Get recent announcements and updates
- Discussions: View discussion topics and responses
- Grades: Check grades and feedback on assignments
- Calendar: View upcoming events and deadlines
Usage Examples
Example Conversations:
- "What assignments are due this week in my Psychology course?"
- "Can you read the syllabus for my CS 101 course and tell me the grading policy?"
- "Show me all announcements from my professors this month"
- "What's my current grade in Mathematics and what assignments am I missing?"
- "Help me organize my upcoming deadlines across all courses"
For more examples and detailed API documentation, visit our MCP Server documentation.
Setup Complete! You should now be able to ask Claude about your Canvas courses and get intelligent
responses based on your actual course data. Claude can help you stay organized, understand course
materials, and manage your academic workload more effectively.