克劳德·坎瓦斯 MCP
一个模型上下文协议 (MCP) 服务器,使 Claude 能够与 Canvas LMS 进行交互。该服务器提供通过 Canvas API 管理课程、公告、作业、学生等的工具。
特征
- 列出活跃课程及其详细信息
- 检索课程模块、页面和内容
- 查看作业、测验和讨论
- 访问学生入学信息
- 发布公告和评论
- 查看提交详情和成绩
- 上传和下载文件
- 管理评分标准和成绩
先决条件
安装
- 克隆此存储库并安装依赖项:
git clone https://github.com/johnnyrobot/claude-canvas-mcp.git
cd claude-canvas-mcp
npm install
- 构建 TypeScript 项目:
- 配置环境变量:
# Copy the example environment file
cp .env.example .env
# Edit the .env file with your Canvas information
nano .env
Claude 桌面集成
- 打开Claude Desktop的配置文件:
MacOS :
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
窗户:
code %AppData%\Claude\claude_desktop_config.json
- 添加 Canvas MCP 服务器配置:
{
"mcpServers": {
"canvas": {
"command": "node",
"args": [
"/path/to/claude-canvas-mcp/build/index.js"
],
"env": {
"CANVAS_API_TOKEN": "your_token_here",
"CANVAS_DOMAIN": "http://canvas.docker/"
}
}
}
}
- 重新启动 Claude Desktop 以应用更改
可用工具
课程列表
列出已验证用户的所有活动课程
获取课程
获取特定课程的详细信息
列表模块
列出课程中的所有模块
列出模块项
列出模块中的所有项目
列表分配
获取课程中的所有作业
- 必需参数:
- 可选参数:
- includeContent:布尔值(默认值:false)
获取分配
获取有关作业的详细信息
名单学生
获取注册课程的学生完整名单
- 必需参数:
- 可选参数:
- includeEmail:布尔值(默认值:false)
公告后
向特定课程发布公告
列表提交
获取所有学生提交的作业
获取提交
获取特定学生提交的作业
提交后评论
对学生的提交内容发表评论
- 必需参数:
- 课程编号:字符串
- 作业编号:字符串
- 学生编号:字符串
- 注释:字符串
列出文件
列出课程中的文件
上传文件
将文件上传到课程
执照
MIT 许可证