brightspace-mcp-server weekly downloads statistics
By RohanMuppa · npm · Claude Code
MCP server for Brightspace (D2L). Check grades, due dates, assignments, announcements, syllabus, rosters and more via Claude, ChatGPT, Cursor, Windsurf, or any MCP client.
brightspace-mcp-server has 3,305 recorded weekly downloads on npm, an increase of 262% over the past 30 days.
It ranks #1181 of 2,251 tracked npm listings by weekly downloads.
Over 90 days, weekly downloads changed by +14270%.
PluginStats has 121 daily observations since Jun 19, 2026; the latest is from Oct 17, 2026.
About brightspace-mcp-server
Brightspace MCP Server
By Rohan Muppa, ECE @ Purdue
Lets your AI see your Brightspace classes, so you can just ask:
"What's due this week?" · "Am I passing all my classes?" · "Summarize today's announcements" · "Turn my lecture slides into flashcards"
Works with Claude Desktop, Claude Code, Cursor, ChatGPT Desktop, Windsurf, and any other app that supports MCP (the standard way to plug tools into an AI). It only reads your courses — it never submits, edits, or deletes anything.
Get started in 3 steps
1. Install Node.js (version 20 or newer) if you don't have it. Download, run the installer, done. 2. Open a terminal and run the setup: It asks for your school's Brightspace address, your username and password, and how you normally do two-factor sign-in (phone approval, authenticator code, or a browser window). Your password goes into your computer's own password store (Keychain on Mac, Credential Manager on Windows), never into a file. At the end it connects itself to Claude Desktop, Cursor, Antigravity, Codex, or Claude Code if you have them. If one of them already has a brightspace entry pointing somewhere else (an old local build, a fork), setup shows you that entry and asks before replacing it.
On a Mac: when Keychain asks whether node may use the saved Brightspace password, choose Always Allow, not just Allow. That lets later sign-ins (the auth command and questions from your AI app) read it without asking again. 3. Restart your AI app and ask it something — the first question signs you in. If your phone asks you to approve a sign-in, approve it and ask again.
At one of these schools, add the flag and skip typing the address: --purdue, --suny, --western, --tudelft, --cuny, --leiden, --mcgill, --ngeeann, --javeriana.
Rather have the AI install it for you? Paste this into Claude Code, Cursor, Windsurf, Copilot, or Codex:
Using a different AI app? Add the command npx -y brightspace-mcp-server@latest to its MCP settings (on Windows: cmd /c npx -y brightspace-mcp-server@latest). Exact steps for each app: docs/troubleshooting.md.
Does my school work?
If your school uses D2L Brightspace, yes. These have automatic sign-in built in:
| School | Sign-in | Flag |
| Purdue | Microsoft (phone approval, authenticator code, or browser) | --purdue | | SUNY | Shared site with a campus picker | --suny | | Western University | Microsoft | --western | | TU Delft | NetID (no two-factor) | --tudelft | | CUNY | CUNY Login, authenticator code each time | --cuny | | Leiden University | SURFconext → Microsoft | --leiden | | McGill University | Microsoft Entra | --mcgill | | Javeriana Cali | OneGate (password + authenticator code) | --javeriana | | Ngee Ann Polytechnic | Microsoft Entra | --ngeeann | | Any other D2L school | Paste your Brightspace address; if the login page isn't recognized, a browser window opens so you can sign in by hand | none |
School-specific quirks: docs/sign-in.md.
Things to ask
| About | Try |
| Grades | "Am I passing all my classes?" · "Compare my grades across courses" · "What did my professor say about Mini-Assignment 1?" (own assignment feedback is read from every route Brightspace documents for students) · "Is there feedback on my midterm?" (quiz-scored grades link to the quiz, since quiz feedback, including feedback only viewable in LockDown Browser, isn't readable through the API) | | Due dates | "What's due in the next 48 hours?" · "Build me a study schedule for the week" | | Assignments and rubrics | "What does the lab 4 spec actually ask for?" · "Why did I lose points on the analysis criterion?" | | Quizzes and exams | "Which quizzes close this week?" · "Is there a midterm in the gradebook that isn't on my assignments list?" (quizzes are collected from the quiz list, the course content, and the gradebook, so a closed quiz or one the list leaves out still shows up; each course says whether its quiz sources all answered, and if Brightspace refused one it's marked incomplete rather than passed off as everything; "complete" means every source answered, not that every quiz is guaranteed to be listed. A gradebook column linked to a quiz the list omits now shows up as a quiz with its dates and attempts instead of a bare grade-only row when the quiz can be read. Gradebook-only rows now also appear on tenants that send only the documented GradeType on grade columns; hidden grade columns, hidden assignments and inactive quizzes never produce one. Content quizzes beyond the first 30 per course are listed from the course content alone and the course is marked incomplete. Quiz rows may also say whether they are open, closed, or not yet open, and mark a quiz whose details Brightspace would not return; gradebook lookups for unlisted quizzes are capped at 20 per course, or 5 when the course's quiz tool can't be identified) | | Announcements | "Did any professor post something important today?" · "Read the file attached to today's announcement" | | Course content | "Find the midterm review slides" · "Download every PDF from Module 5" · "Search this course for office hours" · or just read a file inline instead of saving it | | Syllabus | "What's the late policy in ECE 264's syllabus?" (if the course keeps its syllabus in an external tool such as Simple Syllabus, you get the link to open instead) | | People | "Who are the TAs for ECE 264?" · "Who is in my project group?" | | Discussions | "Summarize the latest posts in the final project thread" | | Lecture videos | "What did the professor say about pinch-off in Tuesday's recording?" (Kaltura, including BoilerCast LTI links, and YouTube) | | Calendar | "When is my midterm?" · "Is lab cancelled on Thursday?" | | For instructors and TAs | "Which students haven't submitted Lab 4 yet?" · "What feedback did I leave on this student's homework?" · "Download that student's submitted PDF" (students get a clear "instructor access required" note for these, but can read their own released feedback, below) | | Signing out | "Sign me out of…
Description from the npm listing.
- mcp
- mcp-server
- brightspace
- d2l
- lms
- education
- grades
- courses
- claude
- chatgpt
- cursor
- windsurf
- purdue
- university
- model-context-protocol
- brightspace-api
- d2l-api
- assignments
- announcements
- syllabus
Where brightspace-mcp-server sits in the listing
Each band is one page of 20. Weekly downloads on a log scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.
Charts
Images: 30d · 1y · all time · 1600×900 dark
Adoption over time
7/30/90-day growth
Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.
Recent observations
Full history (121)Similar npm Claude Code plugins
Data source
Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.
Listing: https://www.npmjs.com/package/brightspace-mcp-server. First seen Oct 16, 2026; last successful collection Oct 18, 2026. See the methodology.