SkillAgentSearch skills...

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-mcp

If the server publishes to npm under a different name, use that package instead — check the repo README.

About this skill
🔌

MCP Server

Model Context Protocol server

Quality Score

76/100

Supported Platforms

Claude Code
Claude Desktop
Cursor
GitHub Copilot
Windsurf

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.

Substance
30/30
Structure
20/20
Description
15/15
Adoption
4/20
Freshness
15/15

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.

SkillScoreStarsUpdatedFormat
brightspace-d2l-mcp (this skill)by AnonymousOnyx2276107d agoMCP Server
claude-memby thedotmack100114.8ktodayCLAUDE.md
Agent-Reachby Panniantong100110.3ktodayCLAUDE.md
Understand-Anythingby Egonex-AI10091.5k1d agoCLAUDE.md
headroomby headroomlabs-ai10079.1ktodayCLAUDE.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.
<h1 align="center">Brightspace D2L MCP Server</h1> <p align="center"> <img src="assets/banner.svg" alt="Brightspace D2L MCP server: ask your AI what's due, what you've handed in, your grades and course files" width="100%"> </p> <p align="center"> <a href="https://www.npmjs.com/package/brightspace-d2l-mcp"><img src="https://img.shields.io/npm/v/brightspace-d2l-mcp?style=flat-square&label=npm&labelColor=1b2033&color=ff6a3d" alt="npm version"></a> <a href="https://www.npmjs.com/package/brightspace-d2l-mcp"><img src="https://img.shields.io/npm/dm/brightspace-d2l-mcp?style=flat-square&label=downloads&labelColor=1b2033&color=ff6a3d" alt="npm downloads per month"></a> <a href="https://github.com/AnonymousOnyx22/brightspace-d2l-mcp/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/AnonymousOnyx22/brightspace-d2l-mcp/ci.yml?style=flat-square&label=tests&labelColor=1b2033" alt="tests"></a> <img src="https://img.shields.io/badge/node-20%2B-3ddc97?style=flat-square&labelColor=1b2033" alt="Node 20+"> <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-9fb4ff?style=flat-square&labelColor=1b2033" alt="MIT license"></a> </p> <p align="center"> <a href="https://www.producthunt.com/products/brightspace-d2l-mcp-server?embed=true&utm_source=badge-featured&utm_medium=badge&utm_campaign=badge-brightspace-d2l-mcp-server"><img src="https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=1279179&theme=neutral" alt="Brightspace D2L MCP Server on Product Hunt" width="250" height="54"></a> </p> <h3 align="center">Connect D2L Brightspace to Claude, ChatGPT, Cursor and Copilot.<br>It knows what you already handed in, so it only shows what is actually left.</h3> <p align="center">One command. Sign in the way you always do. No passwords stored.</p> <p align="center"><a href="https://brightspace-mcp.netlify.app"><b>brightspace-mcp.netlify.app</b></a></p> <br>

An 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:

"What should I work on right now?"

<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>

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

View on GitHub
GitHub Stars10
CategoryAI
Updated7d ago
Forks0

Languages

TypeScript

Trust signals

85/100

From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

1 medium1 info