brightspace-d2l-mcp
Brightspace D2L MCP server for Claude, ChatGPT, Cursor and Copilot. Knows what you already handed in, so it only tells you what is actually left. Due dates, grades and course files at any school with normal SSO sign-in.
Install / Use
claude mcp add AnonymousOnyx22 -- npx -y github:AnonymousOnyx22/brightspace-d2l-mcpIf the server publishes to npm under a different name, use that package instead — check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
AI & Machine LearningSupported Platforms
Our assessment of brightspace-d2l-mcp
brightspace-d2l-mcp scores 76/100 on our quality scale, 817th of 943 AI & Machine Learning skills we index.
Its MCP Server is 28 KB long, well organised into 20 sections with 7 code examples: a thorough specification that gives an agent plenty to work with.
It has 10 GitHub stars, so there is little community track record yet; judge it on its content.
Maintenance, license and trust
- The repository was last updated 7 days ago, so brightspace-d2l-mcp is actively maintained.
- No license is declared. By default that means all rights are reserved: you can read it, but reusing or redistributing it is not clearly permitted. Ask the author before building on it commercially.
- Its trust signals score 85/100, with 1 caution from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
brightspace-d2l-mcp compared with similar skills
All 4 of these similar skills score higher than brightspace-d2l-mcp; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| brightspace-d2l-mcp (this skill)by AnonymousOnyx22 | 76 | 10 | 7d ago | MCP Server |
| claude-memby thedotmack | 100 | 114.8k | today | CLAUDE.md |
| Agent-Reachby Panniantong | 100 | 110.3k | today | CLAUDE.md |
| Understand-Anythingby Egonex-AI | 100 | 91.5k | 1d ago | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 79.1k | today | CLAUDE.md |
Frequently asked questions
- How do I install brightspace-d2l-mcp?
- Run
claude mcp add AnonymousOnyx22 -- npx -y github:AnonymousOnyx22/brightspace-d2l-mcp. The install tabs above show the steps for each supported agent. - Which AI agents does brightspace-d2l-mcp work with?
- It is written for Claude Code, Claude Desktop, Cursor, GitHub Copilot and Windsurf, as a MCP Server file. Other agents that read the same format can often use it too.
- Is brightspace-d2l-mcp safe to use?
- It declares no license and scores 85/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is brightspace-d2l-mcp still maintained?
- The repository was last updated 7 days ago, so brightspace-d2l-mcp is actively maintained.
Skill content
View source on GitHubAn MCP (Model Context Protocol) server that gives AI assistants and agents read access to your Brightspace courses: due dates with real submission status, grades, assignments, rubrics, course content, announcements, discussions and class lists. It works at any school that uses D2L Brightspace, including schools with Microsoft, Duo, Okta or Shibboleth single sign-on.
Which tool to use
| If you ask about | Use this tool |
|---|---|
| What to do now / what's due today | get_todo |
| What I need on remaining work for a target grade | get_grade_outlook |
| What's new across courses | get_whats_new |
| Upcoming deadlines with submission status | get_upcoming_due_dates |
| Exams, tests, labs or classes | get_calendar_events |
| Grades and instructor comments | get_my_grades |
| Assignments and quizzes with rubrics | get_assignments |
| Files attached to an assignment | get_assignment_files |
| Course modules, slides, files and links | get_course_content |
| Syllabus and course overview | get_syllabus |
| Recent announcements | get_announcements |
| Discussion forums and posts | get_discussions |
| Instructors and TAs with contact info | get_roster |
| Email addresses for a course | get_classlist_emails |
| Saving a course file or submission | download_file |
| Exporting unfinished deadlines to a calendar | export_due_dates_calendar |
| Enrolled courses | get_my_courses |
Quick start
You need Node.js 20 or newer and Google Chrome or Microsoft Edge.
npx brightspace-d2l-mcp setup
That's it. Setup asks for your school, opens a browser so you can sign in, and connects every AI app it finds. Then ask your AI:
<p align="center"> <img src="assets/demo.gif" alt="Asking an AI what to work on and getting a Brightspace to-do list that skips submitted work (sample data)" width="760"> </p> <p align="center"> <img src="assets/setup.svg" alt="The setup command finding the school, signing in, and connecting AI apps" width="760"> </p>"What should I work on right now?"
New to this? The step-by-step setup guide walks through everything with pictures of each step. Using a specific app? See the guides for Claude and ChatGPT, or how this compares to other Brightspace MCP servers.
How it compares
People usually weigh a few Brightspace MCP servers before picking one. Here are the three differences that come up most, with the full comparison for the rest:
| Server | Submission status | Sign-in (SSO) | Target grade |
|---|---|---|---|
| Brightspace MCP (this repo, brightspace-d2l-mcp) | Every due date says whether you already handed the work in, and the to-do list skips what is done | Real browser window where you sign in yourself, so any SSO works: Microsoft, Duo, Okta, Shibboleth. No password stored | get_grade_outlook gives your current percentage, your best and worst possible final grade, and what you need on the remaining work to hit any target |
| brightspace-mcp-server by RohanMuppa | Shown in its assignments tool | Automated sign-in that saves your password in Keychain or Credential Manager, with presets for nine schools | No target-grade tool in its published list |
| brightspace-mcp by JhostinAleck | Lists the files you submitted | Configured automation: HTTP login, headless browser with a Microsoft preset, Duo push, or pasted cookies | grade_audit answers "what you need to pass" |
| @n35da/brightspace-mcp | Shown on each dropbox folder | Real browser window where you sign in with your school's SSO | No target-grade tool in its published list |
| @exhabition/brightspace-mcp (Rust) | Has assignment and submission readers | Visible Chromium window, Microsoft SSO only | No target-grade tool in its published list |
"No target-grade tool in its published list" means we could not find one in each project's public README and tool list as of October 2026, not that it can never be added. Spot a mistake in the table? Open an issue and it will be fixed.
Switching from brightspace-mcp-server
If you are running brightspace-mcp-server by RohanMuppa and want to try this one, you only change the package name. Everything else stays where it is.
In your MCP config, find the brightspace entry inside mcpServers and swap the command:
{
"mcpServers": {
"brightspace": {
"command": "npx",
"args": ["-y", "brightspace-d2l-mcp@latest"]
}
}
}
On Windows, wrap the launch in cmd /c the same way you do now:
{
"mcpServers": {
"brightspace": {
"command": "cmd",
"args": ["/c", "npx", "-y", "brightspace-d2l-mcp@latest"]
}
}
}
Then restart the app. If you would rather not edit files, run npx brightspace-d2l-mcp setup: it asks for your school, opens a browser window so you sign in, and writes this entry for you. You can also print the exact JSON for any app with npx brightspace-d2l-mcp config.
What carries over and what doesn't
| | Status |
|---|---|
| The brightspace server name in mcpServers | Same here, so a config entry and any saved prompt that points at the brightspace server still lines up |
| Tool names | They differ. See which tools this one has in the Tools table above and ask your AI for those names instead |
| Your Brightspace account and courses | Nothing to move. This server signs in as you and sees the courses you are enrolled in, same as before |
| A D2L_INCLUDE_COURSES or D2L_EXCLUDE_COURSES setting | Both names are read here too, so a course filter in your env block keeps working. D2L_ACTIVE_ONLY behaves the same way and is read here as well |
| Whatever the first server saved on your computer | It is left alone. This server stores its own settings and session in ~/.brightspace-d2l-mcp/, so nothing there changes unless you remove it yourself |
Want to go back? Put the old command back in the same spot. Both servers can even be configured side by side under two different server names, but one AI app talking to two Brightspace servers at once tends to be more confusing than it is worth.
A few things the first server does are not done here: it can sign you in without a browser window by saving your password in your computer's credential store, and it ships presets for several named schools. This server always opens a normal browser window where you sign in yourself, which is what makes any single sign-on work, and all it keeps afterward is your browser session.
What you can ask
| | Try asking | |---|---| | ✅ What's left | "What should I work on right now?" · "What haven't I submitted yet?" | | 📅 Deadlines | "What's due this week?" · "Anything due tomorrow?" | | 📊 Grades | "What are my grades?" · "Am I passing Calculus?" | | 📢 Announcements | "Did any professor post something today?" | | 📚 Course content | "Find the midterm review slides" · "Summarize the Lab 3 instructions" | | 📎 Assignment files | "What does the rubric for the project ask for?" | | 💬 Discussions | "What are people saying in the final project thread?" | | 👥 Class list | "Who's the TA for my networking course?" | | 🎯 Target grade | "What do I need on the final to get an 80?" · "Can I still pass?" | | 🗓️ Calendar | "Put my deadlines in my calendar" | | 📝 Exams | "When is my midterm?" · "What's on my schedule this week?" | | 🔔 What's new | "Catch me up" · "Did anything get graded?" |
It knows what you've already handed in
Most tools only see due dates, so they keep telling you to do work you've finished. This one checks your actual submission for every assignment:
| Status | Meaning |
|---|---|
| submitted / graded | Done. Never suggested as a to-do. |
| not_submitted / draft | Still needs doing. |
| not_open_yet | The dropbox hasn't opened; shows when it will. |
| closed / past_due | You can no longer submit. |
| unknown | Quizzes: Brightspace doesn't show students their quiz attempts, so your AI will ask you. |
Tools
17 MCP tools for D2L Brightspace. Everything reads from Brightspace and nothing is ever changed there:
| Tool | What it does |
|---|---|
| get_todo | Prioritized to-do list across every course: what's due soon, overdue, not open yet, and already done |
| get_upcoming_due_dates | Upcoming deadlines with the real submission status of each assignment, for all courses or one course by name or code |
| get_my_courses | Your enrolled courses with names, codes and ids |
| get_my_grades | Grade breakdown per course with points, percentages and instructor comments, for all courses or one course by name or code |
| get_assignments | Assignments (dropboxes) and quizzes with due dates, status and rubrics |
| get_assignment_files | Reads the instructions, handouts and rubric files attached to an assignment |
| get_course_content | Course modules, lecture slides, files and links |
| get_syllabus | Course syllabus and overview |
| get_announcements | Recent announcements (news) from your instructors |
| get_discussions | Discussion forums, topics and posts |
| get_roster | Instructors and TAs with contact info, optionally the full class list |
| get_classlist_emails | Email addresses for everyone in a course |
| download_file | Saves a course file or submission to a folder you choose |
| get_grade_outlook | Where you stand in a course and what you need on the remaining work to hit a target grade |
| export_due_dates_calendar | Builds a calendar file (.ics)
Truncated for display — read the full file on GitHub.
Related Skills
claude-mem
114.8kPersistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More
Agent-Reach
110.3kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
Understand-Anything
91.5kGraphs that teach > graphs that impress. Turn any code into an interactive knowledge graph you can explore, search, and ask questions about. Works with Claude Code, Codex, Cursor, Copilot, Gemini CLI, and more.
headroom
79.1kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
