Canvas MCP Server

Canvas MCP Server

site icon
2025.03.22 0
TypeScript教育管理学习管理系统AI助手集成交流协作
Canvas MCP Server 是一个模型上下文协议(MCP)服务器,旨在使AI助手(如Claude)能够与Canvas LMS(学习管理系统)进行交互。该服务器通过Canvas API提供管理课程、公告、评分标准、作业和学生数据的功能。
View on GitHub

Overview

基本能力

产品定位

Canvas MCP Server 是一个连接AI助手与Canvas LMS的中间件,专注于教育管理自动化。

核心功能

  • 列出活动课程及其详细信息
  • 向课程发布公告
  • 查看课程评分标准
  • 获取学生注册信息
  • 访问作业详情和提交内容
  • 查看学生提交历史和评论

适用场景

  • 教师自动化管理Canvas课程
  • AI助手辅助教学管理
  • 教育数据分析与可视化

工具列表

  1. list-courses: 列出认证用户的所有活动课程(返回课程名称、ID和学期信息)
  2. post-announcement: 向特定课程发布公告(需课程ID、标题和消息)
  3. list-rubrics: 列出特定课程的所有评分标准(需课程ID)
  4. list-students: 获取课程注册学生完整列表(可包含邮箱)
  5. list-assignments: 获取课程所有作业及提交状态(可指定学生)
  6. list-assignment-submissions: 获取特定作业的所有学生提交

常见问题解答

  1. 服务器未出现在Claude Desktop中
  2. 检查配置文件语法
  3. 验证文件路径是否为绝对路径
  4. 确认Canvas API令牌有效
  5. 连接错误
  6. 检查API令牌权限
  7. 确认Canvas实例可访问
  8. 查看MCP日志

使用教程

使用依赖

  • Node.js (v16或更高版本)
  • Canvas API令牌
  • Canvas实例URL

安装教程

git clone <repository-url>
cd canvas-mcp
npm install
npm run build

echo "CANVAS_API_TOKEN=your_token_here" > .env
echo "CANVAS_DOMAIN=https://your-canvas-instance.com" >> .env

调试方式

# 查看日志
# MacOS
tail -f ~/Library/Logs/Claude/mcp*.log
# Windows
type %AppData%\Claude\Logs\mcp*.log

# 手动运行调试
node build/index.js 2> debug.log

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。