使用说明
基本能力
产品定位
Canvas MCP 服务器是一个用于与 Canvas LMS API 交互的模型上下文协议(MCP)服务器,提供了一系列工具来管理课程、用户、内容和评估。
核心功能
- 认证:使用 Canvas API 令牌进行安全认证
- 课程管理:获取课程信息、列出课程、更新课程设置
- 用户管理:获取用户信息、列出课程用户、管理注册
- 内容管理:创建和管理页面、模块和模块项
- 评估管理:创建和管理作业、评分提交、创建公告
- 测验管理:创建和管理测验、测验问题和评分测验提交
适用场景
- 教育机构需要自动化管理 Canvas LMS 课程和用户
- 开发人员需要集成 Canvas LMS API 到其他系统
- 教师需要批量管理课程内容和评估
工具列表
课程管理
get_course:获取 Canvas 课程信息list_courses:列出当前用户的 Canvas 课程update_course:更新 Canvas 课程设置get_course_modules:获取 Canvas 课程的模块get_course_assignments:获取 Canvas 课程的作业
用户管理
get_user:获取 Canvas 用户信息get_self:获取当前 Canvas 用户信息list_course_users:列出 Canvas 课程的注册用户enroll_user:注册用户到 Canvas 课程remove_enrollment:从 Canvas 课程中移除用户注册send_message:向 Canvas 用户发送消息
内容管理
get_course_pages:获取 Canvas 课程的页面get_page_content:获取 Canvas 页面的内容create_or_update_page:创建或更新 Canvas 页面delete_page:删除 Canvas 页面create_module:在 Canvas 课程中创建新模块add_module_item:向 Canvas 课程模块添加项
评估管理
create_assignment:在 Canvas 课程中创建新作业update_assignment:更新 Canvas 课程中的现有作业grade_submission:评分学生作业提交get_submissions:获取学生作业提交create_announcement:在 Canvas 课程中创建新公告
测验管理
list_quizzes:列出 Canvas 课程中的测验get_quiz:获取特定测验的详细信息create_quiz:在 Canvas 课程中创建新测验update_quiz:更新 Canvas 课程中的现有测验delete_quiz:从 Canvas 课程中删除测验get_quiz_questions:获取特定测验的问题create_quiz_question:为测验创建新问题update_quiz_question:更新测验中的现有问题delete_quiz_question:从测验中删除问题get_quiz_submissions:获取特定测验的提交grade_quiz_submission:评分测验提交
使用教程
使用依赖
- Node.js 16 或更高版本
- Canvas LMS 实例
- 具有适当权限的 Canvas API 令牌
安装教程
-
克隆仓库:
git clone https://github.com/yourusername/canvas-mcp-server.git cd canvas-mcp-server -
安装依赖:
npm install -
基于
.env.example文件创建.env文件:cp .env.example .env -
编辑
.env文件,添加 Canvas API 令牌和 URL:CANVAS_API_TOKEN=your_canvas_api_token_here CANVAS_API_URL=https://your-institution.instructure.com/api/v1 MCP_SERVER_NAME=canvas-mcp -
构建项目:
npm run build
调试方式
运行服务器:
npm start
开发模式下运行:
npm run dev
