使用说明

项目简介

Canvas MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器实现,旨在桥接 Claude Desktop 等 MCP 客户端与 Canvas 学习管理系统 (LMS)。它允许用户通过 Claude 这类大语言模型应用,以自然语言的方式访问和操作 Canvas LMS 中的数据,例如查看课程列表、获取作业详情、查询用户信息等。

主要功能点

  • 课程管理: 列出用户参与的 Canvas 课程,并获取课程的详细信息。
  • 作业处理: 查看课程的作业列表,以及特定作业的详细信息,包括截止日期、分值等。
  • 提交访问: 查询课程作业的提交记录。
  • 用户管理: 列出课程中的 enrolled 用户信息。
  • 公告检索: 获取课程的最新公告信息。
  • 资源访问: 获取课程大纲 (syllabus) 和模块 (modules) 信息。

安装步骤

  1. 克隆仓库

    git clone https://github.com/vishalsachdev/canvas-mcp.git
    cd canvas-mcp
  2. 创建并激活虚拟环境 (推荐)

    python -m venv fresh_venv
    source fresh_venv/bin/activate  # Unix/macOS
  3. 安装依赖

    pip install -r requirements.txt

服务器配置

Canvas MCP Server 需要配置 Canvas API 的访问信息才能正常工作。您需要配置以下两个方面:

  1. 配置 'start_canvas_server.sh' 脚本 打开 'start_canvas_server.sh' 文件,根据您的 Canvas 平台信息修改以下环境变量:

    export CANVAS_API_URL="您的Canvas API URL"  # 例如: https://canvas.university.edu/api/v1
    export CANVAS_API_TOKEN="您的Canvas API Token" # 您的 Canvas API 访问令牌

    请替换以下内容:

    • '您的Canvas API URL': 您所在大学或机构的 Canvas 平台的 API 根 URL。通常格式为 'https://您的Canvas域名/api/v1'。
    • '您的Canvas API Token': 您需要在 Canvas 平台的用户设置中创建 API 访问令牌。请参考 Canvas API 文档 获取令牌。 请务必妥善保管您的 API Token,避免泄露。
  2. 配置 Claude Desktop 客户端 为了让 Claude Desktop 能够连接到 Canvas MCP Server,您需要在 Claude Desktop 的配置文件中添加服务器信息。 打开 Claude Desktop 配置文件 ('claude_desktop_config.json'),通常位于:

    • macOS: '~/Library/Application\ Support/Claude/claude_desktop_config.json'
    • Windows: '%APPDATA%\Claude\claude_desktop_config.json'
    • Linux: '~/.config/Claude/claude_desktop_config.json'

    在 'claude_desktop_config.json' 文件中,找到或创建 'mcpServers' 数组,并添加以下配置:

    {
      "mcpServers": [
        {
          "name": "canvas-api",
          "command": "/path/to/canvas-mcp/start_canvas_server.sh"
        }
      ]
    }

    请替换以下内容:

    • '"/path/to/canvas-mcp/start_canvas_server.sh"': 替换为 'start_canvas_server.sh' 脚本的绝对路径。例如,如果您将仓库克隆到 '/Users/your_username/canvas-mcp',则应为 '"/Users/your_username/canvas-mcp/start_canvas_server.sh"'。

    配置参数说明:

    • 'name': MCP 服务器的名称,您可以自定义,例如 "canvas-api",在 Claude Desktop 中用于标识该服务器。
    • 'command': 启动 MCP 服务器的命令。这里指向 'start_canvas_server.sh' 脚本,Claude Desktop 将会执行这个脚本来启动 Canvas MCP Server。

基本使用方法

完成配置后,重启 Claude Desktop 客户端。Claude Desktop 会自动检测并启动 Canvas MCP Server。如果配置正确,您将在 Claude Desktop 界面中看到一个锤子 🔨 图标,表示 MCP 服务器已成功连接。点击该图标,您可以查看和使用 Canvas API 提供的各项工具,通过自然语言指令与 Canvas LMS 系统进行交互。

注意: 您无需手动启动 'start_canvas_server.sh' 脚本,Claude Desktop 会自动管理服务器的启动和生命周期。

信息

分类

生产力应用