Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CANVAS_BASE_URL | Yes | Your Canvas instance URL (e.g., https://your-school.instructure.com) | |
| CANVAS_API_TOKEN | Yes | Canvas API token (generate at Canvas > Account > Settings > New Access Token) | |
| CANVAS_COOKIES_FILE | No | Optional. Path to cookies file (only needed if file downloads return 403 errors). Export browser cookies using extensions like 'Get cookies.txt' |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| canvas_course_list | List all courses for the current user. Returns active courses by default. Use this to:
|
| canvas_course_get | Get detailed information about a specific course. Returns:
|
| canvas_assignment_list | List assignments in a course with optional filtering. Bucket filters:
Use this to:
|
| canvas_assignment_get | Get detailed information about a specific assignment. Returns:
|
| canvas_get_my_submission | Get your submission for a specific assignment. Returns:
|
| canvas_module_list | List all modules in a course with their items and completion status. Modules organize course content into logical sections. Each module can contain:
Use this to:
|
| canvas_module_get | Get detailed information about a specific module. Returns:
|
| canvas_module_items | List all items within a specific module. Returns detailed information about each item:
|
| canvas_module_progress | Get your progress through course modules. Returns:
|
| canvas_file_list | List all files in a course. Returns:
Use this to:
|
| canvas_file_get | Get detailed information about a specific file. Returns:
|
| canvas_file_search | Search for files in a course by name. Returns files matching the search term. Useful for finding specific documents. |
| canvas_folder_list | List all folders in a course. Returns folder hierarchy:
Use this to navigate the file structure. |
| canvas_file_download | Download a file from Canvas. NOTE: Requires browser cookies to be configured. Canvas blocks file downloads with API tokens only. Returns:
|
| canvas_discussion_list | List all discussion topics in a course. Returns:
Use this to:
|
| canvas_discussion_get | Get a specific discussion with all replies. Returns:
Use this to read and understand a discussion. |
| canvas_announcement_list | List announcements across courses. Returns:
Use this to stay updated on course announcements. |
| canvas_planner_items | Get planner items - your upcoming assignments, quizzes, discussions, and events. Returns:
This is the best tool for:
|
| canvas_todo_list | Get your TODO list items that need attention. Returns items needing action:
Use this for a quick view of what needs immediate attention. |
| canvas_upcoming_events | Get upcoming calendar events. Returns:
Different from planner in that it shows calendar-based view. |
| canvas_missing_submissions | Get all missing submissions across courses. Returns:
Critical for finding overdue work! |
| canvas_rubric_list | List all rubrics in a course. Rubrics define grading criteria for assignments. Returns:
Use this to:
|
| canvas_rubric_get | Get detailed rubric with all criteria and ratings. Returns:
Essential for understanding how work will be graded. |
| canvas_rubric_for_assignment | Get the rubric attached to a specific assignment. Directly retrieves the grading criteria for an assignment. More convenient than finding rubric ID separately. |
| canvas_quiz_list | List all quizzes in a course. Returns:
Use this to:
|
| canvas_quiz_get | Get detailed information about a specific quiz. Returns:
Note: Cannot retrieve actual quiz questions via API. |
| canvas_quiz_submission | Get your submission/attempt for a quiz. Returns:
Use to check your quiz results. |
| canvas_group_list | List all groups you are a member of. Returns:
Groups are used for:
|
| canvas_group_members | List members of a specific group. Returns:
Use to see who is in your group for collaboration. |
| canvas_bookmark_list | List all your Canvas bookmarks. Bookmarks provide quick access to frequently used pages. Returns:
|
| canvas_bookmark_create | Create a new bookmark. Add a quick-access link to any Canvas page. Requires:
|
| canvas_bookmark_delete | Delete a bookmark. Remove a bookmark from your list. |
| canvas_inbox_list | List your Canvas inbox conversations. Returns:
Use to check messages from instructors and classmates. |
| canvas_inbox_get | Get a specific conversation with all messages. Returns:
|
| canvas_inbox_unread_count | Get count of unread messages. Quick check for new messages without loading full inbox. |
| canvas_notification_list | List account notifications/announcements. Returns system-wide announcements from your institution:
|
| canvas_dashboard | Get a comprehensive dashboard view of your Canvas activity. Aggregates:
This is the best starting point for a study session. |
| canvas_profile | Get your Canvas user profile. Returns:
|
| canvas_grades_overview | Get an overview of your grades across all courses. Returns:
|
| canvas_cache_status | Get cache status and statistics. Shows:
|
| notebooklm_auth_check | Check NotebookLM authentication status. Returns whether a valid Google authentication session exists. If not authenticated, you'll need to run notebooklm_auth_setup. |
| notebooklm_auth_setup | Setup NotebookLM authentication. IMPORTANT: This requires manual interaction!
This only needs to be done once (session persists). |
| notebooklm_list_notebooks | List all notebooks in NotebookLM. Requires authentication (run notebooklm_auth_setup first if needed). Returns a list of notebook titles. |
| notebooklm_upload_sources | Upload sources to a NotebookLM notebook. Uploads website URLs or files to a specified notebook. Creates the notebook if it doesn't exist. Source types:
Example sources: [ {"type": "website", "value": "https://example.com/article"}, {"type": "file", "value": "/path/to/document.pdf"} ] Limits: ~500KB per source, 50-300 sources per notebook. |
| notebooklm_prepare_content | Prepare content for NotebookLM upload. Converts and splits content to meet NotebookLM requirements:
Returns paths to prepared files ready for upload. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |