Token导航 LogoToken导航

MCP Server · 运维云端

Poke Canvas MCP

一个使用Canvas LMS API为Poke提供成绩、截止日期和作业等信息的自定义MCP服务器,帮助学生管理学术任务。

stdio官方级别未说明来源级核验工具 8
教育技术Python任务自动化

快速开始

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

工具数量

8

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

6

仓库热度

收录来源

1 个

MCP World

选型结论

Poke Canvas MCP 属于运维云端类 MCP Server,公开资料标注 8 个工具,通过stdio 本地进程接入,客户端适配情况以官方文档为准,有可以直接复制的安装命令;接入前要先准备 API Key。

分类

运维云端

传输方式

stdio

认证方式

API Key

部署方式

公开资料未说明

安装与配置

安装命令

python -m venv venv

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

上手步骤

  1. 1

    准备运行环境

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

  2. 2

    安装服务

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

  3. 3

    写入客户端配置

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

  4. 4

    验证是否可用

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

接入前确认

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

详细介绍

画布MCP用于Poke

自定义MCP服务器,使用Canvas LMS API为Poke提供成绩、截止日期、作业等上下文

是什么 戳?-我每天使用的人工智能助手,通过在imemessage上发短信来管理日常任务、电子邮件、待办事项列表等

概述

  • 认证:Canvas个人访问令牌,API密钥(承载令牌)
  • 数据访问:只读,Canvas学生帐户

此MCP可以帮助回答Poke的问题

  • 我即将到来的最后期限是什么?
  • 最近发布了哪些公告?
  • 我即将到来的一周是什么样子的?
  • 我今天的学术日是什么样子的?
  • 我的作业最近评分了吗?

设置Canvas访问令牌

  1. 登录您的canvas帐户
  2. 转到您的帐户,设置页面
  3. 滚动到已批准的集成
  4. 创建新的访问令牌(复制令牌,因为您不会再看到它)

快速开始

git clone https://github.com/Shashwatpog/poke-canvas-mcp
cd poke-canvas-mcp

# Create a virtual environment and install required packages
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt

cp .env.example .env
# Edit .env with your Canvas credentials and POKE_API_KEY (use a strong key)

# Run
python src/server.py
# In a different terminal run the inspector for testing
npx @modelcontextprotocol/inspector

服务器在上运行http://localhost:8000/mcp,使用“流式HTTP”传输进行连接

环境变量

CANVAS_BASE_URL=https://your_school.instructure.com 
CANVAS_ACCESS_TOKEN=you_canvas_access_token
POKE_API_KEY=your_api_key

部署

这 render.yaml 文件包含要在渲染上部署的配置

  1. 分叉此存储库
  2. 在渲染时创建新的web服务
  3. 连接您的分叉存储库
  4. 输入环境变量并展开(CANVAS_BASE_URL、CANVAS_ACCESS_TOKEN、POKE_API_KEY)

Poke集成

部署MCP后,在poke设置中添加MCP URL poke.com/设置/连接

还要添加您的API密钥,以便Poke可以向MCP服务器进行身份验证(标头:x-API-key或授权:Bearer)。 使用强密钥(32+随机字符)或在将其添加到渲染和戳之前生成一个强密钥。

为了测试一下,问poke“我今天需要在画布上做什么?”“我即将在画布上完成的最后期限是什么?”

或者,您可以通过提及MCP的连接名称并要求它直接调用其中一个工具来明确要求poke使用MCP。

示例:“使用Canvas MCP连接的get_today_summary工具”

功能和MCP工具

1.get_today_summary
  • 此工具专为每日签到和通知而设计。
  • 用于在24至48小时的窗口内创建截止日期、公告、成绩通知列表,以及过去一周的任何逾期作业。
2.get_upcoming_assignments
  • 该工具汇总当前课程的作业,包括即将到来的截止日期、逾期项目,并首先对最紧急的项目进行排序。
3.获取新闻公告
  • 此工具返回所有最近的公告,并提供各种选项:限制课程数量、查找期间每门课程的公告数量。
  • 还可以选择获取完整的消息正文,以防用户想要完整公告消息的摘要。
4.获取最近的评分
  • 此工具检测作业何时进行新评分,并使用画布规划器提要。用于在测验和作业的成绩公布时通知用户。
5.向前看
  • 此工具返回即将到来的任务、截止日期、公告、下周的日历事件,以帮助用户更好地规划他们的一周。
6.列表_索赔_法律
  • 此工具返回所有活动课程的列表。
7.get_dashboard_cards
  • 此工具按用户设置的顺序返回仪表板上当前所有课程的列表。用于轻松过滤课程。
8.任务分配
  • 此工具返回特定课程的所有即将完成的作业,并可选择使用课程id包含逾期作业。

我面临的问题

管理个人电子邮件、学校电子邮件、工作电子邮件、画布通知和待办事项列表非常困难和耗时。

我经常发现自己试图跟上画布上的通知和截止日期,但在学期中期课程加快的时候却记不住了。

Poke作为一名助手非常擅长跟踪我的电子邮件,但每次我必须跟踪画布的截止日期,我都必须手动拍摄画布日历的屏幕截图,并输入图像来戳或要求它手动创建事件。

这个痛点的解决方案是Canvas MCP集成!

MCP的工作原理

我能够浏览Canvas LMS API文档(这既困难又令人困惑),同时在“网络”选项卡中手动浏览,以找到我们可以访问的各种API端点,从而获取学生和课程数据。

MCP聚合并规范化多个端点:

端点描述
GET/api/v1/dashboard/dashboard_cards按仪表板顺序获取活动课程
GET/api/v1/course/:course_id/作业?include\[\]=提交使用提交元数据获取作业
GET/api/v1/course/:course_id/discussion_tames?only _ announcements=true获取课程公告
GET/api/v1/planner/items活动、作业、测验和成绩的计划提要
GET/api/v1/courses获取所有已注册的课程

挑战

我遇到的一些挑战肯定包括找到正确的API端点作为 Canvas LMS文档 下面列出了一系列不同的API。特别是考虑到其中列出的API端点中有一半只能使用管理员访问权限或开发人员密钥访问,因此很难确定将使用哪些API。

像我这样的学生没有这种授权,也无法生成开发人员密钥。然而,学生可以生成访问令牌,我们已将其用于此MCP。

因此,在使用之前,我必须手动命中每个API端点,以确保我可以访问它们。

由于json格式的响应中还包含了许多不必要的元数据和细节,我决定浏览这些响应,找出要保留哪些项目,并将其作为上下文提供。例如,在获取课程时,我决定只返回mcp工具中的课程id和名称。

我面临的另一个挑战是Canvas让我上学期的旧课程保持活跃和注册。唯一的解决办法是为每个学期使用前缀,例如“26FS”表示2026年秋季学期课程,“26SS”表示2026年春季学期课程。

此外,我还必须将各种字段(如“due_at”、“graded_at”等)中的时间戳标准化为UTC,以使其一致且易于过滤截止日期。

喊出来 例如ai:让我在Canvas api文档中失去理智后,很容易搜索Canvas的api端点!

未来的目标

  • 到目前为止还没有计划,将测试几周,如果我有任何问题,将添加更多工具/更新当前工具

工具与能力

工具数量

8

资源数量

0

提示词数量

0

能力标签

学习管理系统Python本地部署学术管理API集成任务自动化教育技术

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

典型使用场景

看服务状态

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

执行部署变更

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

核对资源用量

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

选择建议

值得选的地方

  • 只提供 8 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 需要自备API Key,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在运维云端场景里让模型直接调用外部能力的人。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

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

同类对比

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

MCP World · 本页

8stdio有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 条

Poke Canvas MCP 怎么安装?

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

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

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

Poke Canvas MCP 收费吗?

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

Poke Canvas MCP 需要 API Key 吗?

公开资料标注的认证方式是API Key,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

Poke Canvas MCP 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP