Canvas REST API服务

通过官方REST API为Canvas LMS提供多功能的服务器支持,包括课程管理、作业提交、成绩查询等功能。

  • by TylerFlar
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 TylerFlar/claude-canvas-mcp

使用说明

@塔斯克/帆布mcp

通过官方REST API为Canvas LMS提供MCP服务器。

工具

工具 说明
get-profile 获取当前用户的Canvas配置文件
get-user-settings 获取当前用户的通知和显示设置
get-avatars 列出可用的头像选项
get-activity-stream-summary 获取未读活动的摘要
list-courses 列出当前用户的所有课程
get-course 获取特定课程的详细信息
get-course-settings 获取特定课程的设置
list-course-users 列出已注册课程的用户
get-course-activity-stream 获取课程的最新活动流
list-assignments 列出课程作业
get-assignment 获取特定任务的完整详细信息
create-assignment 创建新作业
update-assignment 更新现有作业
list-submissions 列出作业的所有提交内容
get-submission 获取特定用户的提交
submit-assignment 提交作业
get-submission-summary 获得评分/未评分/未提交计数
list-multiple-submissions 列出多个作业中的提交内容
get-course-grades 获取课程的当前成绩
get-all-grades 获取所有课程的成绩
get-effective-due-dates 获取学生特定的有效截止日期
list-announcements 列出课程公告
list-modules 列出课程中的所有模块
get-module 获取特定模块的详细信息
list-module-items 列出模块中的所有项目
get-module-item 获取特定模块项目的详细信息
list-pages 列出课程中的wiki页面
get-page 获取wiki页面的完整内容
create-page 创建新的wiki页面
get-front-page 获取课程的首页
list-course-files 列出课程中的文件
get-file 获取文件的元数据和下载URL
get-file-content 获取文件的文本内容
list-course-folders 列出课程中的所有文件夹
list-folder-contents 列出文件夹中的文件
list-discussions 列出课程中的讨论主题
get-discussion 获取特定的讨论主题
get-discussion-entries 获取讨论中的所有条目
create-discussion-entry 发布对讨论的回复
create-discussion 创建新的讨论主题
list-calendar-events 列出日历事件和任务
get-calendar-event 获取日历事件的详细信息
create-calendar-event 创建新的日历事件
delete-calendar-event 删除日历事件
list-conversations 列出收件箱对话
get-conversation 与所有消息进行对话
send-conversation 发送新消息/对话
get-unread-count 获取未读对话的计数
list-quizzes 列出课程中的测验
get-quiz 获取特定测验的详细信息
list-quiz-questions 在测验中列出问题
list-enrollments 列出课程的报名情况
list-todo-items 列出需要采取行动的待办事项
get-todo-count 获取待办事项和未读消息的计数
list-upcoming-events 列出即将到来的任务和活动

环境变量

变量 必填 描述
CANVAS_API_TOKEN 是 Canvas API访问令牌
CANVAS_BASE_URL 是 机构画布URL(例如。 https://canvas.ucsd.edu)

身份验证设置

在以下位置生成API令牌:Canvas>Account>Settings>New Access token。在启动服务器之前设置两个环境变量。

发展

npm install
npm run build
npm start        # stdio mode