Canvas MCP Server

Integrations

  • Allows interaction with the Canvas Learning Management System API, providing tools for managing courses, assignments, enrollments, and student grades within Canvas.

Canvas MCP 服务器

用于与 Canvas API 交互的模型上下文协议 (MCP) 服务器。此服务器允许您在 Canvas 中管理课程、作业、注册和成绩。

先决条件

  • Node.js :版本 18 或更高版本
  • Canvas API 令牌:从您的 Canvas 帐户获取
  • Canvas 域名:通常为canvas.instructure.com

设置

  1. 克隆存储库
    git clone https://github.com/yourusername/canvas-mcp-server.git cd canvas-mcp-server
  2. 安装依赖项
    npm install
  3. 配置环境变量

复制示例环境文件:

cp .env.example .env

编辑 .env 并用实际的 Canvas API 令牌和域替换占位符值。

构建项目

npm run build
  1. 运行服务器
    npm start
    服务器将启动并通过 stdio 监听 MCP 请求。

连接到 Claude Desktop

  1. 更新 Claude 配置将 MCP 服务器配置添加到您的 claude_desktop_config.json:
"canvas-mcp-server": { "command": "npx", "args": ["-y", "canvas-mcp-server"] },

重启Claude桌面

完全退出 Claude Desktop。重新启动 Claude Desktop。导航到 🔌 菜单,找到并连接你的 Canvas MCP 服务器。

可用工具(更多以学生为中心的内容即将推出)

  • canvas_create_course :在 Canvas 中创建新课程。
  • canvas_update_course :更新 Canvas 中的现有课程。
  • canvas_create_assignment :在 Canvas 课程中创建新作业。
  • canvas_update_assignment :更新现有作业。
  • canvas_submit_grade :提交学生作业的成绩。
  • canvas_enroll_user :为用户注册课程。

错误处理

工具会返回 isError: true 的错误消息来指示存在问题。请确保已设置所有必需的环境变量,以避免运行时错误。

故障排除

  • 构建错误:

检查 TypeScript 版本:npx tsc --version 清理并重建:rm -rf build/ && npm run build

  • 运行时错误:检查日志以获取详细的错误消息。确保环境变量设置正确。
  • 类型错误:使用 TypeScript 的类型检查来验证类型:npx tsc --noEmit

贡献

欢迎贡献代码!如有任何改进或错误修复,请提交 issue 或 pull request。

执照

该项目已获得 MIT 许可。


附加说明

  • 类型安全types.ts文件确保与 Canvas API 的所有交互都是类型安全的,从而减少运行时错误并提高代码可维护性。
  • 错误处理:服务器通过返回带有isError标志的有意义的消息来优雅地处理错误,从而允许客户端(例如,Claude Desktop)理解并做出适当的反应。
  • 环境变量:API 令牌等敏感信息通过环境变量进行管理,增强了不同环境的安全性和灵活性。
  • 模块化:将关注点分离到不同的文件( types.tsclient.tsindex.ts )使得代码库更易于导航和维护。

请根据项目的具体需求随意调整文件路径和配置。如果您需要进一步的帮助,请告诉我!

-
security - not tested
F
license - not found
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

模型上下文协议服务器可与 Canvas 学习管理系统 API 进行交互,允许用户在 Canvas 中管理课程、作业、注册和成绩。

  1. 先决条件
    1. 设置
      1. 连接到 Claude Desktop
      2. 可用工具(更多以学生为中心的内容即将推出)
      3. 错误处理
      4. 故障排除
      5. 贡献
      6. 执照
      7. 附加说明

    Related MCP Servers

    • -
      security
      A
      license
      -
      quality
      A local server that enables interaction with Canvas Learning Management System API through Claude Desktop, allowing users to manage courses, access assignments, view announcements, and retrieve course materials.
      Last updated -
      1
      Python
      MIT License
      • Apple
    • -
      security
      A
      license
      -
      quality
      A Model Context Protocol server that enables creating, modifying, and validating infinite canvas data structures according to the JSON Canvas 1.0 specification.
      Last updated -
      1
      Python
      MIT License
    • -
      security
      F
      license
      -
      quality
      A Model Context Protocol server that provides a comprehensive interface for interacting with the ConnectWise Manage API, simplifying API discovery, execution, and management for both developers and AI assistants.
      Last updated -
      46
      2
      Python
      • Linux
      • Apple
    • -
      security
      F
      license
      -
      quality
      A Model Context Protocol server that helps students manage academic workflows by integrating with Canvas and Gradescope to fetch deadlines, download course materials, and sync with macOS Calendar or Reminders.
      Last updated -
      3
      Python
      • Apple

    View all related MCP servers

    ID: w48kv5b02m