使用说明
项目简介
Canvas学生MCP服务器是一个允许LLM客户端(如Claude)访问Canvas LMS信息的工具。它通过Model Context Protocol (MCP) 标准与客户端通信,提供了一系列工具,使得用户可以通过自然语言与Canvas LMS进行交互,例如查询课程信息、作业、文件、公告、测验以及待办事项等。
主要功能点
- 课程信息查询: 检索和搜索Canvas上的课程信息,包括课程列表和课程详情。
- 作业管理: 查找和筛选课程作业,获取即将到期的作业信息。
- 内容访问: 访问课程内容,包括文件、模块、页面和公告。
- 内容搜索: 在所有课程内容中执行关键词搜索。
- 文件内容处理: 直接读取文本文件内容,并提供PDF等其他类型文件的链接。
- 测验管理: 查询课程测验和所有测验,获取测验详细信息。
- 待办事项: 查看待办事项和遗漏的作业。
安装步骤
-
环境准备:
- 确保已安装 Python 3.10 或更高版本。
- 推荐安装 UV Python 包管理器(或使用 pip)。
- 确保已安装 Claude Desktop 客户端。
-
克隆仓库:
git clone https://github.com/Jon-Vii/canvas-student-mcp.git cd canvas-student-mcp -
安装依赖: 进入 'src/canvas-student' 目录,运行安装脚本或手动安装依赖。
方法一:运行安装脚本 (推荐)
cd src/canvas-student python install.py此脚本会自动检测并使用 UV 或 pip 安装必要的依赖,包括 PDF 支持。
方法二:手动安装 使用 UV (推荐):
cd src/canvas-student uv pip install -e ".[pdf]"或者使用 pip:
cd src/canvas-student pip install -e ".[pdf]" -
配置环境变量: 创建 '.env' 文件在 'src/canvas-student' 目录下,并填入您的 Canvas API 凭据。
CANVAS_API_TOKEN=your_canvas_api_token CANVAS_BASE_URL=https://your-institution.instructure.com请替换 'your_canvas_api_token' 为您的 Canvas API 令牌,'https://your-institution.instructure.com' 为您的 Canvas 机构 URL。
服务器配置
配置 Claude Desktop 客户端以连接到 Canvas 学生 MCP 服务器。编辑 Claude Desktop 的配置文件:
- Windows: '%APPDATA%\Claude\claude_desktop_config.json'
- macOS: '~/Library/Application Support/Claude/claude_desktop_config.json'
在配置文件中添加 'mcpServers' 配置,指定服务器名称、启动命令和参数。
{ "mcpServers": { "canvas": { "command": "python", "args": ["ABSOLUTE_PATH_TO/src/canvas-student/run_server.py"], "env": { "CANVAS_API_TOKEN": "your_canvas_api_token", "CANVAS_BASE_URL": "https://your-institution.instructure.com" } } } }
请根据您的实际情况替换以下占位符:
- 'ABSOLUTE_PATH_TO': 替换为 'src/canvas-student' 目录的绝对路径。例如,如果您将仓库克隆到 '/Users/yourname/repos/canvas-student-mcp',则 'ABSOLUTE_PATH_TO' 应为 '/Users/yourname/repos/canvas-student-mcp/src/canvas-student'。
- 'your_canvas_api_token': 替换为您的 Canvas API 令牌。
- 'https://your-institution.instructure.com': 替换为您的 Canvas 机构 URL,例如 'https://canvas.example.edu'。
注意: 'command' 字段指定了用于启动服务器的命令,'args' 字段是一个字符串数组,包含了传递给命令的参数。 'env' 字段允许您设置环境变量,例如 Canvas API 令牌和 Base URL,这些信息将传递给 MCP 服务器进程。
基本使用方法
配置完成后,重启 Claude Desktop 客户端。在与 Claude 聊天时,您应该能看到 MCP 图标,表示 MCP 服务器已连接。现在您可以向 Claude 提出关于 Canvas 的问题,例如:
- "显示我的所有课程"
- "查找数据通信课程中的考试"
- "未来一周内有哪些作业到期?"
- "搜索所有课程中关于 ‘机器学习’ 的内容"
- "提取并显示课程 27849 中 Lab1P.pdf 文件的内容"
- "显示我的待办事项和遗漏的作业"
- "我的课程里有哪些即将到来的测验?"
- "显示课程 67890 中测验 12345 的详细信息"
- "未来 14 天内有哪些作业到期?"
通过这些指令,您可以利用 Claude 与 Canvas LMS 进行交互,获取所需的信息。
信息
分类
生产力应用