Token导航 LogoToken导航

MCP Server · 运维云端

MCP Canvas Hackathon

一个用于与Canvas学习管理系统API交互的Message Control Protocol (MCP)服务器实现,提供课程管理、作业访问、用户管理等功能。

stdio官方级别未说明来源级核验工具 11
教育技术PythonClaudeClaude Desktop

快速开始

作者 / 组织
jpablomm
提供方
jpablomm
运行时
Python

工具数量

11

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

MCP Canvas Hackathon 属于运维云端类 MCP Server,公开资料标注 11 个工具,通过stdio 本地进程接入,适配 Claude Desktop、Claude,有可以直接复制的安装命令;接入前先确认权限范围。

分类

运维云端

传输方式

stdio

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

安装命令

python -m venv canvas-mcp

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Python,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 11 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

Canvas MCP服务器

此存储库包含用于与Canvas学习管理系统API交互的消息控制协议(MCP)服务器实现。该服务器旨在与Claude Desktop和其他MCP客户端协同工作。

概述

Canvas MCP服务器为Canvas LMS API提供本地接口,允许您:

  • 列出并管理课程
  • 访问分配和提交
  • 查看公告
  • 检索课程大纲和模块
  • 管理用户和注册
  • 生成课程摘要

先决条件

  • Python 3.x
  • 虚拟环境(venv)
  • Canvas API代币
  • Canvas API URL(例如。,https://canvas.illinois.edu/api/v1)

安装

  1. 克隆此存储库:
git clone https://github.com/vishalsachdev/canvas-mcp.git
cd canvas-mcp
  1. 创建并激活虚拟环境:
python -m venv canvas-mcp
source canvas-mcp/bin/activate  # On Unix/macOS
  1. 安装依赖项:
pip install -r requirements.txt

配置

1.创建环境文件

创建一个 .env 根目录中的文件,包含以下变量:

CANVAS_API_TOKEN=your_canvas_api_token_here
CANVAS_API_URL=https://canvas.youruniversity.edu/api/v1

将这些值替换为:

2.配置启动脚本

这 start_canvas_server.sh 脚本已配置为:

  • 从加载环境变量 .env 文件
  • 激活虚拟环境
  • 运行缓存的服务器实现

使启动脚本可执行:

chmod +x start_canvas_server.sh

3.克劳德桌面配置

  1. 安装 克劳德桌面 如果你还没有。
  1. 创建或编辑Claude Desktop配置文件:
vim ~/Library/Application\ Support/Claude/claude_desktop_config.json
  1. 添加Canvas MCP服务器配置:
{
  "mcpServers": [
    {
      "name": "canvas-api",
      "command": "/Users/YOUR_USERNAME/path/to/canvas-mcp/start_canvas_server.sh"
    }
  ]
}

替换 /Users/YOUR_USERNAME/path/to/canvas-mcp 带有克隆此存储库的绝对路径。

  1. 重新启动Claude Desktop以加载新配置。

可用工具

服务器为Canvas LMS交互提供了以下工具:

课程管理

  • list_courses:列出经过身份验证的用户的所有课程
  • get_course_details:获取特定课程的详细信息
  • summarize_course:生成课程的综合摘要

作业

  • list_assignments:列出课程的所有作业
  • get_assignment_details:获取特定任务的详细信息
  • get_assignment_description:获取作业的完整描述

提交

  • list_submissions:列出特定任务的所有提交内容

用户

  • list_users:列出已注册课程的所有用户

资源

  • list_announcements:列出课程的所有公告
  • get_course_syllabus获取一门课程的教学大纲
  • get_course_modules:获取课程的所有模块

使用Claude Desktop

此MCP服务器旨在与Claude Desktop无缝协作:

  1. Claude Desktop将在需要时自动启动服务器
  2. 您将在Claude Desktop界面(锤子图标)中看到Canvas API工具🔨)
  3. 你可以让克劳德执行Canvas操作,比如“给我看我的课程”或“获取我的生物学课程大纲”

对于手动测试,您可以直接启动服务器:

./start_canvas_server.sh

技术细节

服务器实现

服务器使用:

  • fastmcp:用于构建MCP服务器的Python库
  • httpx:对于Canvas API的异步HTTP请求
  • 提高课程查找性能的缓存机制

主要实现文件是 canvas_server_cached.py,它提供:

  • 高效缓存课程信息
  • Canvas API请求的分页处理
  • 错误处理和报告
  • 支持课程ID和课程代码

依赖项

服务器需要以下Python包:

  • httpx:对于HTTP请求
  • fastmcp:用于MCP服务器实施
  • requests:对于某些HTTP操作
  • 其他用于编码和网络的标准库

故障排除

如果您遇到问题:

  1. 服务器无法启动

- 检查你的 .env 文件存在并且包含有效凭据 - 验证中的虚拟环境路径 start_canvas_server.sh - 确保安装了所有依赖项

  1. 身份验证错误

- 验证Canvas API令牌是否有效且未过期 - 检查您在Canvas中是否具有必要的权限

  1. 连接问题

- 确保Canvas API URL正确无误 - 检查您的互联网连接 - 验证您的机构没有限制API访问

  1. 调试

- 在Claude Desktop控制台中检查服务器日志 - 尝试手动运行服务器以查看错误输出

安全考虑

  • 您的Canvas API令牌授予对Canvas帐户的访问权限
  • 永远不要承诺你的 .env 文件到版本控制
  • 如果可能的话,考虑使用权限有限的令牌
  • 服务器在您的计算机上本地运行,不会向外部公开您的凭据

贡献

欢迎投稿!请随意:

  • 提交错误或功能请求的问题
  • 通过改进创建拉取请求
  • 分享您的用例和反馈

许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

______________________________________________________________________

由...创建 维沙尔·萨克德夫

工具与能力

工具数量

11

资源数量

0

提示词数量

0

能力标签

学习管理系统Python本地部署API接口课程管理作业管理教育技术

支持客户端

Claude DesktopClaude

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

看服务状态

查询容器、日志和监控指标,定位异常。

执行部署变更

在权限范围内触发发布、回滚和环境切换。

核对资源用量

汇总用量,找出闲置和超额的部分。

选择建议

值得选的地方

  • 工具数量 11 个,一次接入能覆盖的操作比单点工具更全。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 已经适配 Claude Desktop、Claude,换客户端不用重新研究配置。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在运维云端场景里让模型直接调用外部能力的人。
  • 已经在用 Claude Desktop 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
MCP Canvas Hackathon

MCP World · 本页

11stdio有1 个2026-05-17
Ui Tars Desktop 8a825770

MCP World

0stdio有1 个2026-05-17
Elie222 MCP

MCP World

0未说明未标注1 个2026-05-17
Arizeai Phoenix MCP

MCP World

0stdio有3 个2026-05-17
Unity MCP 87ee506e

MCP World

42HTTP有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

MCP Canvas Hackathon 怎么安装?

公开资料给出的安装命令是 python -m venv canvas-mcp,运行环境为 Python。装完后按客户端要求写进 MCP 配置,重启客户端生效。

MCP Canvas Hackathon 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Python;保存后完全退出客户端再打开,配置才会生效。

MCP Canvas Hackathon 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

MCP Canvas Hackathon 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

MCP Canvas Hackathon 支持哪些客户端?

公开资料标注支持 Claude Desktop、Claude;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP