
dmontgomery40/mcp-canvas-lms
Developer tools이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기
버전 2.2 - 54개의 도구 사용 가능 - Canvas LMS API와 상호작용하는 MCP 서버입니다. 이 서버는 Canvas 내에서 강의, 과제, 등록, 성적을 관리할 수 있게 해줍니다.
개요
이 프로젝트는 Canvas LMS API를 위한 독립적인 MCP 서버입니다. Instructure나 Canvas와는 제휴, 승인 또는 유지 관리가 아닙니다. 2025년 6월, 이 MCP 개발 중에 bootcampspot.instructure.com Canvas 환경에서 Broken Access Control 문제가 발생했습니다. 이 문제는 제 과정에 등록한 다른 학생들의 개인 식별 정보를 노출시켰습니다. 저는 2025년 6월 5일 Bugcrowd를 통해 이 문제를 신고했고, Instructure/Canvas 보안 채널에도 직접 연락했습니다. Bugcrowd 보고서는 나중에 "해당 없음"으로 종료되었습니다. 이후 Instructure는 bootcampspot.instructure.com 환경이 자신들의 통제 밖에 있다고 밝혔습니다. - 공개 스레드: https://www.reddit.com/r/cybersecurity/comments/1t6wmkw/reported_a_broken_access_control_bug_to/ - 버그크라우드 활동 타임라인: https://imgur.com/gallery/canvas-vuln-declared-n-11-months-ago-zYfHnBs - 이후 인구조 / 부트캠프 서신: https://imgur.
개요(AI 번역)
보안 및 공개 역사
이 프로젝트는 Canvas LMS API를 위한 독립적인 MCP 서버입니다. Instructure나 Canvas와는 제휴, 승인 또는 유지 관리가 아닙니다.
2025년 6월, 이 MCP 개발 중에 bootcampspot.instructure.com Canvas 환경에서 Broken Access Control 문제가 발생했습니다. 이 문제는 제 과정에 등록한 다른 학생들의 개인 식별 정보를 노출시켰습니다.
저는 2025년 6월 5일 Bugcrowd를 통해 이 문제를 신고했고, Instructure/Canvas 보안 채널에도 직접 연락했습니다. Bugcrowd 보고서는 나중에 "해당 없음"으로 종료되었습니다. 이후 Instructure는 bootcampspot.instructure.com 환경이 자신들의 통제 밖에 있다고 밝혔습니다.
공개 참고문헌:
이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요.
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:
- Disclosure thread: https://www.reddit.com/r/cybersecurity/comments/1t6wmkw/reported_a_broken_access_control_bug_to/
- Bugcrowd activity timeline: https://imgur.com/gallery/canvas-vuln-declared-n-11-months-ago-zYfHnBs
- Later Instructure / BootcampSpot correspondence: https://imgur.com/a/BnhgXme
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_idparameter) - 👨💼 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
설치
npx -y canvas-mcp-server설정
{
"mcpServers": {
"canvas-mcp-server": {
"command": "npx",
"args": ["-y", "canvas-mcp-server"],
"env": {
"CANVAS_API_TOKEN": "your_token_here",
"CANVAS_DOMAIN": "your_school.instructure.com"
}
}
}
}