Canvas MCP Server 使用说明
项目简介
Canvas MCP Server 是一个基于 Model Context Protocol (MCP) 构建的后端应用,旨在帮助 AI 助手 (如 Claude) 无缝访问 Canvas 学习管理系统 (LMS) 中的内容。通过此服务器,学生可以使用 AI 助手轻松查询课程信息,例如作业、教学大纲、截止日期等,从而提高学习效率。
主要功能点
- Canvas 集成: 自动同步 Canvas LMS 中的课程、作业、模块和公告等数据。
- 灵活的内容解析: 支持从 PDF、Word 文档和 HTML 文件中提取教学大纲的详细信息。
- 学期过滤: 仅同步当前学期的课程数据,避免信息过载。
- 课程选择退出: 用户可以轻松排除不想被索引的课程,保护隐私。
安装步骤
前置条件
- 已安装 Python 3.12+
- 已安装 UV 包管理器 (更快的 pip 替代品)
- 拥有 Canvas API 密钥和 URL
- 已安装支持 MCP 的 Claude Desktop 客户端 (下载地址)
Mac 系统安装步骤
- 安装 UV 包管理器 (如果尚未安装):
curl -LsSf https://astral.sh/uv/install.sh | sh - 设置 Canvas MCP 服务器:
git clone https://github.com/AdityaPrakash-26/Canvas-MCP.git && cd Canvas-MCP uv venv --seed source .venv/bin/activate uv sync echo "CANVAS_API_KEY=your_canvas_api_key_here" > .env # 替换为你的 Canvas API 密钥 echo "CANVAS_API_URL=https://canvas.yourschool.edu" >> .env # 替换为你的 Canvas API URL uv run init_db.py
Windows (WSL) 系统安装步骤
请先安装 WSL (Windows Subsystem for Linux)。
- 在 WSL 中克隆仓库:
git clone https://github.com/AdityaPrakash-26/Canvas-MCP.git ~/Canvas-MCP cd ~/Canvas-MCP - 安装 UV 和依赖:
curl -LsSf https://astral.sh/uv/install.sh | sh uv venv --seed source .venv/bin/activate uv sync echo "CANVAS_API_KEY=your_canvas_api_key_here" > .env # 替换为你的 Canvas API 密钥 echo "CANVAS_API_URL=https://canvas.yourschool.edu" >> .env # 替换为你的 Canvas API URL uv run python init_db.py
服务器配置 (Claude Desktop 客户端)
需要编辑 Claude Desktop 的配置文件 'claude_desktop_config.json' (在 Claude > Settings > Advanced 中打开)。添加以下 JSON 配置项以连接 Canvas MCP Server:
{ "Canvas MCP": { "name": "Canvas MCP", // 服务名称,Claude Desktop 中显示的名称 "command": "/path/to/uv", // UV 包管理器的可执行文件路径 (使用 'which uv' 命令查找) "args": [ "run", "--directory", "/absolute/path/to/Canvas-MCP", // Canvas-MCP 仓库的绝对路径 "canvas-mcp" // 运行 canvas-mcp 的命令 ] } }
Windows (WSL) 系统配置示例:
{ "Canvas MCP": { "name": "Canvas MCP", "command": "wsl.exe", // Windows Subsystem for Linux 可执行文件 "args": [ "-d", "Ubuntu", // 你的 WSL 发行版名称 (例如 Ubuntu) "--exec", "/home/<USER>/.local/bin/uv", // UV 包管理器的绝对路径 (在 WSL 中使用 'which uv' 命令查找, 替换 <USER> 为你的 WSL 用户名) "run", "--directory", "/home/<USER>/Canvas-MCP", // Canvas-MCP 仓库在 WSL 中的绝对路径 (替换 <USER> 为你的 WSL 用户名) "canvas-mcp" ] } }
注意: 请将 '/path/to/uv' 和 '/absolute/path/to/Canvas-MCP' 替换为你的实际路径。在 Windows WSL 中,请将 '/home/<USER>/.local/bin/uv' 和 '/home/<USER>/Canvas-MCP' 替换为你的 WSL 用户名和实际路径。
基本使用方法
- 确保 Canvas MCP Server 正在运行 (通过 Claude Desktop 启动)。
- 在 Claude Desktop 中,选择已配置的 "Canvas MCP" 工具。
- 使用自然语言向 Claude 提问关于 Canvas 课程的问题,例如:
- "What's due this week in CS 540?" (CS 540 这周有什么作业要交?)
- "Send me notes from yesterday's lecture in SP25_CS_540_1." (发我 SP25_CS_540_1 昨天课程的笔记。)
- "Find the syllabus for Math 101." (查找数学 101 的教学大纲。)
Claude 将利用 Canvas MCP Server 从 Canvas LMS 获取信息并回答你的问题。
信息
分类
生产力应用