Neuro-CanvasLMS

io.github.BloodyReginaa由 GitHub 账号 BloodyReginaa 发布v2.14.0更新于 Nov 8, 2026

Read-only Canvas LMS for your AI: deadlines, grades, files, announcements. Runs on your Cloudflare.

已验证Streamable HTTP可网页运行效率与工作流云端与基础设施文件与存储

概览

AI 生成的概览

只读的 Canvas LMS 连接器,让 AI 助手在任何设备上查询你的课程、截止日期、成绩、通知和课件文件。

可以做什么
  • 浏览课程、模块、页面、作业、提交、成绩、评分标准、通知、讨论、收件箱、日历、待办、小组和测验历史
  • 把课程文件读成文本:PDF、Word、PowerPoint、Excel、约 90 种代码与文本格式、Jupyter 笔记本,以及由服务器解包的 ZIP 压缩包
  • 读取以公开链接共享的 Google Docs、Drive、Dropbox 和 GitHub 文件
  • 通过检索首页、教学大纲、模块、作业和通知,找到课程在文件列表中隐藏的文件
  • 向编程智能体提供短时有效的下载链接,把作业起始代码放到本地文件夹
适用场景
适合学校允许学生创建个人 Canvas 访问令牌的学生,用来让助手回答本周有什么要交、作业得了什么反馈、某份课件里有什么内容,也可在手机或 ChatGPT 中使用。若学校禁止学生创建令牌,或需要提交作业、发送消息,则不适合。
运行要求
需要自行部署的远程 MCP 端点:Node.js 22+、一个已验证邮箱的免费 Cloudflare 账户,以及你学校的 Canvas 地址。还需要在 Canvas 的账户、设置、新建访问令牌中创建个人访问令牌,并在 Claude 或 ChatGPT 中连接时粘贴。安装程序会通过浏览器让你登录 Cloudflare。
安装前请注意
需要提供 Canvas 个人访问令牌;令牌加密存放在你自己的 Cloudflare KV 中,连接器会锁定到你的 Canvas 账户,但学校可能限制令牌有效期,到期需重新创建。助手读取的文件会作为对话内容保存在你的 AI 服务商处。连接器每天从 npm 读取一次最新版本号。使用前请查看学校关于个人访问令牌和第三方工具的规定。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Neuro-CanvasLMS,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Neuro-CanvasLMS

English · 简体中文 · Español · 日本語 · हिन्दी

[npm] [tests] [license: MIT]

[Neuro-CanvasLMS answering "What's due this week?" in Claude]

Wire your Canvas LMS straight into Claude and ChatGPT. Your courses, deadlines, grades and lecture files become part of what your AI knows, in any chat and on any device. It is a read-only remote MCP server that one command deploys to your own free Cloudflare account. Works at any Canvas school that lets students create access tokens (30-second check).

"What's due this week?" · "Summarize Lecture 5 in MATH 132." · "What feedback did I get on HW 3?" · "What's in the code ZIP for Lecture 12?" · "Set up the PA2 starter code in this folder."

Why Neuro-CanvasLMS

☁️ Nothing runs on your computerIt lives in the cloud on Cloudflare Workers. No app to keep open, no local server.
🔌 No device has to stay onClose the laptop and leave the phone in your pocket. Your AI can still reach Canvas 24/7, from claude.ai, the desktop and mobile apps, Claude Code or ChatGPT.
💸 FreeIt runs on Cloudflare's free plan, which is far more than one student needs.
🧠 Your files live in the conversationLecture notes and PDFs the AI reads stay with that chat on your AI provider's servers. Nothing to download.

Local Canvas tools only work while your own computer runs them. Hosted services keep your Canvas token, or a copy of your courses, on their servers. Neuro-CanvasLMS runs in your own Cloudflare account: always on, usable from your phone and in ChatGPT, and your token goes only to your own Worker and your school's Canvas.

What you get

  • 65 read-only tools: courses, modules, pages, files, assignments, submissions, grades and feedback, rubrics, announcements, discussions, inbox, calendar, to-dos, groups, quiz history and profile settings.
  • Real file reading: text from PDF, Word, PowerPoint and Excel, about 90 kinds of code and text files, and Jupyter notebooks (cells and outputs); ZIP archives unpacked on the server (listing plus every code/text file); scanned or handwritten PDFs are recognised and their original pages handed to the AI to look at.
  • Linked files too: course files that a module, the syllabus, a page, an assignment or an announcement links on Google Docs/Slides/Sheets, Google Drive, Dropbox (files and folders) and GitHub (files and repositories) are read as text, as long as they are shared publicly ("Anyone with the link").
  • Finds files the course hides: many courses hide their Files list from students. The connector searches the front page, syllabus, modules, assignments, announcements and the pages they link to, so the AI can still find "the Lecture 12 slides" by name.
  • Starter code onto your computer: in Claude Code, Codex and other coding agents, ask "set up PA2 from Canvas". The agent gets a one-time download link that expires in minutes, saves the assignment's starter files in your folder and unpacks them.
  • Read-only by design: only fixed GET requests. It never submits work, sends messages, starts quizzes or changes anything in Canvas.
  • Yours only: deployed in your own Cloudflare account and locked to your own Canvas account. Nobody else, including the authors, ever sees your Canvas token.

Can you use it?

Check in 30 seconds: in Canvas, open Account → Settings and scroll to Approved Integrations. If you see a + New Access Token button, you're set. If it is missing, or creating a token is refused, your school doesn't let students make personal tokens, and this connector can't work there yet.

Install (about 5 minutes)

You need Node.js 22+, a free Cloudflare account (verify its email address) and your Canvas login. In a terminal, run:

bash
npx -y neuro-canvas-lms

The installer signs you in to Cloudflare (a browser page opens; click Authorize), asks for your school's Canvas address, sets up your free workers.dev address if the account is new, deploys the connector to your own account and checks that it works. A new address can take a few minutes to come online; meanwhile the installer opens Canvas so you can create your token. Then:

  1. Create a Canvas token (if you haven't yet): Canvas → Account → Settings → + New Access Token. Your school may cap its lifetime (30 days at UMass Amherst). Copy it right away; Canvas shows it only once.
  2. Claude: Settings → Connectors → Add custom connector → paste the URL the installer printed (it is already copied) → Connect → paste the Canvas token → Authorize. It then works everywhere you use Claude, including the mobile app and Claude Code.
  3. ChatGPT: add a custom connector (developer mode) with the same URL.
  4. Start a new chat and ask: "What assignments do I have this week?"

Let an AI install it: give any AI assistant that can run terminal commands (Claude Code, Codex and the like) the link to this repository and say "install the Canvas connector". No cloning needed. AI agents: follow SKILL.md: one npx command with flags, and you never handle the Canvas token.

When the Canvas token expires: make a new one, then in your AI app Disconnect → Connect the connector and paste it. Nothing needs to be reinstalled.

Update, uninstall

  • Update: run the same npx command again. It asks once whether to update (type y), then reuses your settings, deploys the current code and keeps your storage and connections, so you never reconnect. When a new version is out, your AI tells you. After updating, ChatGPT needs a refresh of the connector in its settings to see new features; Claude picks them up in a new chat.
  • Uninstall: npx -y neuro-canvas-lms uninstall, then delete the Canvas token and the connector in your AI app.

How it works

Claude / ChatGPT ──OAuth──▶ Neuro-CanvasLMS on your Cloudflare ──read-only API──▶ your school's Canvas  (any device)                (always on; stores your Canvas token encrypted)

Privacy & security

  • Your token goes only to your Worker and your school's Canvas, and is stored encrypted inside the authorization record in your own Cloudflare KV.
  • The connector locks itself to your Canvas account when you connect it and refuses all others.
  • Only Claude, ChatGPT and local clients can complete OAuth.
  • Course content is treated as untrusted data, never as instructions.
  • File downloads are capped at 15 MiB, HTTPS-only, and blocked from reaching private networks.
  • Canvas still enforces your own permissions: you can only read what you can already see.
  • Once a day the connector reads the latest version number from npm, where it is published, so your AI can tell you about updates. Nothing about you is sent.
  • Files the AI reads are kept by your AI provider as part of the conversation, under that provider's own privacy terms. Delete the chat to remove them.

Check your school's policy on personal access tokens and third-party tools before use.

Limits

  • Files over 15 MiB can't be read through the connector (Cloudflare Worker memory limit). Download them and open them with Claude Code locally.
  • Gradescope, WebAssign, external sites, locked content and the internals of New Quizzes are out of reach.
  • Some courses hide their Files or Quizzes pages (403/404). Files linked anywhere in the course are still found (see above); quizzes stay hidden.
  • Tested on UMass Amherst's Canvas (hosted by Instructure). Other schools should work; schools that host Canvas themselves may serve files from servers this connector does not allow yet.

Project status

A community project, MIT licensed and provided as is: no guaranteed maintenance, updates or support. Issues and pull requests are welcome, and so are forks. If it stops working for your school, the code is here for you to fix. You can also open an issue, and the author will arrange a fix.

Development

npm test · npm run check (dry-run build) · npm run setup (the installer, from a clone). UI text lives in i18n.mjs (English, 简体中文, Español, 日本語, हिन्दी). See AGENTS.md for the code map. Built with the help of AI coding assistants.

来源:README.md,提交 6e29d33

工具

0
SourceWeft 尚未读取此服务器的工具。

版本历史

1
  1. v2.14.0最新Nov 8, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式必需10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分