首页
学习
活动
专区
圈层
工具
发布
MCP广场 >详情页
Canvas课程管理平台2026-10-20183分享添加福利群:解决AI开发者的「MCP实战痛点」
一种模型上下文协议服务器,可实现与Canvas学习管理系统API的交互,使用户能够在Canvas中管理课程、作业、注册和成绩。
By DMontgomery40
2026-10-20183
github
详情内容

Canvas MCP 服务器

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

先决条件

  • Node.js: 版本 18 或更高
  • Canvas API Token: 从您的 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 token 和域名。

    构建项目

    npm run build
    
  4. 运行服务器

    npm start
    

    服务器将启动并通过 stdio 监听 MCP 请求。

连接到 Claude 桌面版

  1. 更新 Claude 配置

    将 MCP 服务器配置添加到您的 claude_desktop_config.json 中:

    #2
    

    重启 Claude 桌面版

    • 完全退出 Claude 桌面版。
    • 再次启动 Claude 桌面版。
    • 导航到 🔌 菜单,找到并连接您的 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

贡献

欢迎贡献!请针对任何改进或错误修复打开问题或提交拉取请求。

许可证

该项目根据 MIT 许可证发布。


附加说明

  • 类型安全:types.ts 文件确保了与 Canvas API 的所有交互都是类型安全的,减少了运行时错误并提高了代码的可维护性。

  • 错误处理:服务器通过带有 isError 标志返回有意义的消息来优雅地处理错误,使客户端(例如 Claude Desktop)能够理解并做出适当的反应。

  • 环境变量:通过环境变量管理敏感信息(如 API 令牌),增强了不同环境下的安全性和灵活性。

  • 模块化:将关注点分离到不同的文件中(types.ts、client.ts、index.ts),使代码库更易于导航和维护。

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

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档