DM

dmontgomery40/mcp-canvas-lms

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

104 stars 39 forks Качество 70 Тренд 19

Версия 2.2 — 54 доступных инструмента — MCP-сервер для взаимодействия с API LMS Canvas. Этот сервер позволяет управлять курсами, заданиями, регистрацией и оценками внутри Canvas.

Обзор

Этот проект является независимым MCP-сервером для API Canvas LMS. Он не аффилирован, не поддерживается и не поддерживается Instructure или Canvas. В июне 2025 года, во время разработки этого MCP, я обнаружил проблему с неисправным контролем доступа в среде Canvas в bootcampspot.instructure.com. Эта проблема открыла личную информацию для других студентов, зачисленных на мой курс. Я сообщил о проблеме через Bugcrowd 5 июня 2025 года, а также напрямую связался с каналами безопасности Instructure / Canvas. Отчет Bugcrowd позже был закрыт как «Не применимо». В последующей переписке Instructure заявил, что среда bootcampspot.instructure.com находится вне их контроля. - Тема раскрытия: https://www.reddit.com/r/cybersecurity/comments/1t6wmkw/reported_a_broken_access_control_bug_to/ - Таймлайн активности Bugcrowd: https://imgur.com/gallery/canvas-vuln-declared-n-11-months-ago-zYfHnBs - Переписка Instructure / BootcampSpot: https://imgur.

Обзор (машинный перевод)

История безопасности и раскрытия информации

Этот проект является независимым MCP-сервером для API Canvas LMS. Он не аффилирован, не поддерживается и не поддерживается Instructure или Canvas.

В июне 2025 года, во время разработки этого MCP, я обнаружил проблему с неисправным контролем доступа в среде Canvas в bootcampspot.instructure.com. Эта проблема открыла личную информацию для других студентов, зачисленных на мой курс.

Я сообщил о проблеме через Bugcrowd 5 июня 2025 года, а также напрямую связался с каналами безопасности Instructure / Canvas. Отчет Bugcrowd позже был закрыт как «Не применимо». В последующей переписке Instructure заявил, что среда bootcampspot.instructure.com находится вне их контроля.

Публичные ссылки:

Эта страница переведена автоматически. Технические детали смотрите в оригинале.

README

Показан фрагмент оригинального README. Открыть оригинал.

Canvas MCP Server v2.3.0

Security and disclosure history

This project is an independent MCP server for Canvas LMS APIs. It is not affiliated with, endorsed by, or maintained by Instructure or Canvas.

In June 2025, during development of this MCP, I identified a Broken Access Control issue in the Canvas environment at bootcampspot.instructure.com. The issue exposed personally identifiable information for other students enrolled in my course.

I reported the issue through Bugcrowd on June 5, 2025, and also contacted Instructure / Canvas security channels directly. The Bugcrowd report was later closed as “Not Applicable.” In subsequent correspondence, Instructure stated that the bootcampspot.instructure.com environment was outside its control.

Public references:

This repository does not publish exploit steps, affected tenant details beyond what is already public, live URLs, screenshots containing student data, or proof-of-concept abuse flows.

Separately, Instructure publicly disclosed a Canvas security incident in May 2026, and public reporting has linked the incident to ShinyHunters claims. This repository makes no claim that the June 2025 report caused, enabled, predicted, or is technically connected to the May 2026 incident.

This disclosure is documented here for project history and transparency only.

What this is

A comprehensive Model Context Protocol (MCP) server for Canvas LMS with complete student, instructor, and account administration functionality

🚀 What’s New in v2.3.0

  • 🌐 NEW: Streamable HTTP transport support (MCP_TRANSPORT=streamable-http)
  • 🖥️ Preserved: First-class stdio transport for local MCP clients
  • 🧪 Added: Behavior tests for lifecycle, transports, and structured failure-path errors
  • 🧱 Improved: Stricter tool schemas and codemode-oriented tool descriptions
  • 🔧 FIXED: Course creation “page not found” error (missing account_id parameter)
  • 👨‍💼 Account Management: Complete account-level administration tools
  • 📊 Reports & Analytics: Generate and access Canvas account reports
  • 👥 User Management: Create and manage users at the account level
  • 🏢 Multi-Account Support: Handle account hierarchies and sub-accounts
  • ✅ API Compliance: All endpoints now follow proper Canvas API patterns

🎯 Key Features

🎓 For Students

  • Course Management: Access all courses, syllabi, and course materials
  • Assignment Workflow: View, submit (text/URL/files), and track assignments
  • Communication: Participate in discussions, read announcements, send messages
  • Progress Tracking: Monitor grades, module completion, and calendar events
Открыть полный README на GitHub

Установка

npx -y canvas-mcp-server
Новичок в MCP? Начните с руководства на mcpskill.org →

Конфигурация

{ "mcpServers": { "canvas-mcp-server": { "command": "npx", "args": ["-y", "canvas-mcp-server"], "env": { "CANVAS_API_TOKEN": "your_token_here", "CANVAS_DOMAIN": "your_school.instructure.com" } } } }